我只是使用this教程设置了一个ubuntu服务器。我可以很好地连接SSH,但当我尝试将东西移到服务器上时,我收到了这个错误:
Permission denied (SSH_FX_PERMISSION_DENIED: The user does not have sufficient permissions to perform the operation.).
我知道我做过像
这样的事情sudo usermod -g www-data [MY USERNAME]
sudo chown -R www-data:www-data /var/www
sudo chmod -R 775 /var/www
所以我不知道它为什么不起作用。有人可以提供建议吗?
答案 0 :(得分:2)
复制文件:
scp myfiles.zip myusername@mywebserver.com:
现在正常登录并将文件复制到/ var / www
ssh -l myusername mywebserver.com
unzip myfiles.zip
sudo cp myfiles/* /var/www
您需要sudo
才能将文件放在www-data所拥有的目录中。如果你想避免使用sudo,那么你需要将www-data设置为具有密码的真实登录用户,并将其主目录设置为/ var / www。然后,您可以使用scp移动单个文件,而不必使用ssh登录。
答案 1 :(得分:2)
sudo chown -R www-data:www-data
sudo chmod -R 775 /var/www
将www-data更改为您登录的任何用户。就我而言,它是ubuntu。
答案 2 :(得分:0)
这只是一个简单的文件权限错误。与cyberduck连接的用户无权执行文件操作。
最好尝试在命令行上对SCP进行类似的操作来仔细检查cyberduck是不是在玩耍。在这里,您会看到一个快速的“许可被拒绝”错误。
如果是拥有该文件的用户,请确保您以www-data身份进行连接...尽管以此用户身份连接可能有点不寻常。备择方案?以'root'身份连接。尝试将文件写入某个不同的目标目录,例如您的用户主目录或/ tmp这可能是一个适当的解决方法,如果您可以在传输后移动文件,但无论如何都要进行此测试作为完整性检查。
我个人用一个特定的文件遇到了这个错误,因为我不小心导致root成为文件本身的所有者(不是它所在的目录),但你的-R命令应该处理它。
另一个问题我记得有一段时间回来了:你有“SELinux”启用吗?
答案 3 :(得分:0)
在您的usermod 中,资本G很重要 -G 因为我做了你做的,它修复了我的ftp错误 我认为你以某种方式设置了群体关系错误