重新再虚拟机vmware10上安装了ubuntu14.4并更新至16.4版本,但是当需要使用winSCP软件在windows和ubuntu之间传输文件时,提示错误。(在重新安装这个ubuntu软件之前在vmware10上安装的是fileZilla,一直使用的很好,重装ubuntu后,再也连接不上了,所以又找了winSCP),网上搜索了很久,大概原因就是新装的Ubuntu上要重新安装ftp服务(之前使用的很好,怎么完全没这个印象,看来需要多记录)大概步骤如下:

 

1. 安装ftp

sudo apt-get install vsftpd

配置vsftpd.conf

sudo nano /etc/vsftpd.conf
#禁止匿名访问
anonymous_enable=NO
#接受本地用户
local_enable=YES
#允许上传
write_enable=YES
#用户只能访问限制的目录
chroot_local_user=YES
#设置固定目录,在结尾添加。如果不添加这一行,各用户对应自己的目录,当然这个文件夹自己建
local_root=/home/ftp

添加ftp用户

sudo useradd -d /home/ftp -M ftpuser
sudo passwd ftpuser

调整文件夹权限

这个是避免“500 OOPS: vsftpd: refusing to run with writable root inside chroot()”

sudo chmod a-w /home/ftp
sudo mkdir /home/ftp/data

这样登录之后会看到data文件夹,虽然稍麻烦,原因不表了。。查资料这么辛酸已经不易。。

重启vsftpd

sudo service vsftpd restart

2.然后再次连接,传输文件,出现如下错误:

\"\"

Ubuntu 下复制文件到远端时错误,Permission denied 失败原因如下:

vsftp默认配置不允许上传文件

解决办法:修改配置文件 vi /etc/vsftpd.conf.

将\"write_enable=YES\"前面的#去掉,然后保存。

最后重启vsftp服务器  : service vsftpd restart

3. 修改后又发现如下错误

\"\"

 原因权限不够

       切换到root用户,使用chmod -R 777 filename ,这里filename是你的目录或者文件。-R是指递归设置权限,777是完全权限。

 

 

收藏 打印