本文章是为了帮助第一次使用ftp命令想要实现windows系统与Linux系统之间实现文件传输的初学者,话不多说直奔主题。
前提
想使用ftp命令的前提,是你的Linux已经安装并开启了vsftpd服务,可以输入
which vsftpd 命令查看,如果运行之后显示出相关目录则为已经安装,否则需要安装vsftpd
安装vsftpd的方法:
yum -y install vsftpd
等待执行结束之后再次输入which vsftpd命令查看,此时会输出一个路径
启动vsftpd的方法
安装之后,需要启动服务,直接输入
service vsftpd start
如果执行成功会有提示,大概如下图所示,
如果执行之后报错,则可能是20,21端口被占用。 输入;
netstat -natp |grep 20 ,netstat -natp |grep 21,查看端口,
输入:service AAA stop ,
之后再次查看是否被占用,如果未被占用,则输入
service vsftpd start 就会启动成功。
开始
第一步:
这样我们在Linux上就开启了ftp服务。之后在windows端 输入快捷键 win+r打开命令窗口,输入cmd并回车。之后我们先试验是否能ping通你的Linux服务器地址,这是前提,输入ping + ip地址,如果成功如下图所示。
如果不成功则参照https://blog.csdn.net/howard2005/article/details/81290587
第二步:
输入要传文件的所在盘符,以冒号结尾,例如 D:
输入 cd + 具体路径
第三步:
开启ftp服务,输入 ftp,回车
输入 open 加你的Linux服务器地址,然后根据提示输入用户名密码。如果成功,则如下图所示
这里可能出现两个错误,
-
输入open之后,提示【ftp: connect: 连接超时】,则一般是防火墙问题,需要关闭Linux防火墙,
输入:service iptables stop
-
输入用户名密码之后报 【500OOPS 远程主机关闭连接】,这是访问被阻止所导致,需要在Linux服务器上改一下 SElinux设置,直接输入
getsebool -a | grep ftp 查看,可以发现 ftp_home_dir–>off
打开的方法:直接输入
setsebool ftp_home_dir 1
此时再执行 getsebool -a | grep ftp ,会发现ftp_home_dir 已经是打开状态了。
最后需要重启一下vsftpd 服务,
service vsftpd restart
第四步:
成功接通ftp之后,为了使你的文件能够以二进制形式传输防止出错,输入
bin 继续输入
prompt ,关闭交互模式。之后
cd + 目标文件夹,提示切换目录成功。
put + 需要传输的文件名 回车;
第五步:
等待文件传输之后,依次 输入
bye
exit 退出。
到现在,我们已经成功的把文件从windows上传到Linux上了,传输方法有很多,我这只是其中一种。
小弟才疏学浅,只是希望能够帮到第一次使用这种方法的伙伴们,希望多多指点。