解决winscp中普通用户无法上传、删除、移动文件

上一篇博客中提到了winscp这个软件,这个软件可以利用sftp协议对linux服务器就行连接,然后方便我们对文件进行操作,但是如果是利用普通用户进行登陆的话,在对文件进行相关操作的时候会出现一些permission denied的提示,并且错误的返回码是3,以下就针对这个问题提供解决方法。

1.查看sftp应用程序的路径,这个路径在后面设置winscp的时候需要使用:

cat /etc/ssh/sshd_config  | grep sftp

终端显示的结果如下:

2.设置用户权限:

vim /etc/sudoers

然后在打开的文本中找到下面的语句:

root    ALL=(ALL)  ALL

按下键盘i启用插入模式,在root ALL=(ALL)  ALL结尾处按回车在其下面增加以下语句(我的用户名为ubuntu,你需要改成自己的用户名)

ubuntu  ALL=NOPASSWD:/usr/libexec/openssh/sftp-server

修改后先按下键盘ESC键,然后向上找到下面语句

Defaults    requiretty

按下键盘i启用插入模式,在Defaults requiretty 前面加#号把该语句注释掉,注意:如果在文本中没有找到该语句,则只要完成 在root ALL=(ALL)  ALL结尾处按回车在其下面增加以下语句 这一步即可!

最后保存退出编辑,输入命令
:wq
如果改错了想从新再来不想保存退出,敲入命令(注意是3个字符)
:q!
 3、在winscp端进行设置

输入主机名(即IP地址)、用户名和密码,然后点击高级

在箭头所指位置输入sudo + sftp应用程序的路径

点击Shell,在框框内输入sudo -即可

最后点击确定,然后点击保存,在进行登入就可以完成文件操作了!

原文地址:https://www.cnblogs.com/XDU-Lakers/p/10491309.html