我曾经在 Ubuntu 14.04 中通过 SFTP 使用 nautilus 连接到服务器。
现在我在我的电脑上安装了 Ubuntu 16.04。我可以在远程服务器上创建文件,但无法覆盖任何文件。我也无法在 gedit 中编辑文件。
这应该不是权限问题,因为我是通过 root (远程服务器)连接的。另一方面,我可以创建/重命名/删除文件,但无法覆盖或添加内容。
问题与服务器设置无关,因为我可以从装有 Ubuntu 14.04 的计算机连接,但不能从 Ubuntu 16.04 连接。Ubuntu 16.04 中发生了一些变化。
答案1
我通过反复试验找到了解决方案。如果其他人也遇到这个问题,我会分享它。
您也必须openssh-server
在客户端机器上安装。
我不知道为什么,为什么我在以前的 Ubuntu 版本中没有遇到这个问题。可能是openssh-server
在以前安装的 Ubuntu 桌面中出现的。
答案2
当您proftpd
在服务器上使用时,您可能需要再次查看您为在那里创建的目录和用户提供的设置。
中的条目/etc/proftpd/proftpd.conf
应如下所示:
<Anonymous /home/username/server>
User username
Group admins
AnonRequirePassword on
MaxClients 10 "The server is full, hosting %m users"
DisplayLogin welcome.msg
DisplayChdir .msg
<Limit LOGIN>
Allow from All
Deny from all
</Limit>
AllowOverwrite on
<Limit LIST NLST STOR STOU APPE RETR RNFR RNTO DELE MKD XMKD SITE_MKDIR RMD XRMD SITE_RMDIR SITE SITE_CHMOD SITE_CHGRP MTDM PWD XPWD SIZE STAT CWD XCWD CDUP XCUP >
AllowAll
</Limit>
<Limit NOTHING >
DenyAll
</Limit>
</Anonymous>
请注意,这是一种真正允许所有设置,因此不适合为其他用户帐户设置。