在这篇文章中,我们将为您详细介绍监视远程FTP目录的内容,并且讨论关于远程ftp访问的相关问题。此外,我们还会涉及一些关于Centos下ftp协议连接远程ftpserver主机、CentOS中使用wg
在这篇文章中,我们将为您详细介绍监视远程FTP目录的内容,并且讨论关于远程ftp访问的相关问题。此外,我们还会涉及一些关于Centos下ftp协议连接远程ftp server主机、CentOS中使用wget下载远程ftp文件、centos如何添加ftp目录、curlftps - ftp目录挂载到本地目录的知识,以帮助您更全面地了解这个主题。
本文目录一览:- 监视远程FTP目录(远程ftp访问)
- Centos下ftp协议连接远程ftp server主机
- CentOS中使用wget下载远程ftp文件
- centos如何添加ftp目录
- curlftps - ftp目录挂载到本地目录
监视远程FTP目录(远程ftp访问)
我只能通过FTP访问远程服务器上的目录,并且希望在目录中出现新文件后立即获取它们。
是否有FAM for Python之类的东西可以让我通过FTP监视新文件?
答案1
小编典典如果轮询服务器是一种选择:
from ftplib import FTPfrom time import sleepftp = FTP(''localhost'')ftp.login()def changemon(dir=''./''): ls_prev = set() while True: ls = set(ftp.nlst(dir)) add, rem = ls-ls_prev, ls_prev-ls if add or rem: yield add, rem ls_prev = ls sleep(5)for add, rem in changemon(): print(''\n''.join(''+ %s'' % i for i in add)) print(''\n''.join(''- %s'' % i for i in remove))ftp.quit()
Centos下ftp协议连接远程ftp server主机
环境说明
[root@Check3 ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@Check3 ~]# uname -a
Linux Check3 2.6.32-696.16.1.el6.x86_64 #1 SMP Wed Nov 15 16:51:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
FTP客户端安装
[root@Check3 ~]# yum -y install ftp
连接远程ftp server
格式fit IP 端口
[root@Check3 ~]# ftp 192.168.1.10 22
Connected to 192.168.1.10 (192.168.1.10).
220-#####################################################
220-FileZilla Server version 0.9.46 beta
220-Welcome To Elements FTP
220 #####################################################
Name (192.168.1.10:root): Admin
331 Password required for admin
Password:
230 Logged on
Remote system type is UNIX.
命令参数
显示当前FTP连接状态
ftp> status
Connected to 192.168.1.10.
No proxy connection.
Mode: stream; Type: ascii; Form: non-print; Structure: file
Verbose: on; Bell: off; Prompting: on; Globbing: on
Store unique: off; Receive unique: off
Case: off; CR stripping: on
Ntrans: off
Nmap: off
Hash mark printing: off; Use of PORT cmds: on
Tick counter printing: off
显示远程主机系统类型
ftp> system
215 UNIX emulated by FileZilla
列出当前目录下的文件或目录
dir 等同于 ls
ftp> dir
227 Entering Passive Mode (192.168.1.10,80,7)
150 Opening data channel for directory listing of "/"
drwxr-xr-x 1 ftp ftp 0 Oct 19 2018 WCY
drwxr-xr-x 1 ftp ftp 0 Aug 21 2018 ***
drwxr-xr-x 1 ftp ftp 0 Dec 10 10:40 ***
drwxr-xr-x 1 ftp ftp 0 Dec 03 13:29 ***
drwxr-xr-x 1 ftp ftp 0 Nov 01 2018 ***
drwxr-xr-x 1 ftp ftp 0 Nov 19 16:38 ***
drwxr-xr-x 1 ftp ftp 0 Dec 12 17:47 ***
drwxr-xr-x 1 ftp ftp 0 Nov 21 10:34 ***
226 Successfully transferred "/"
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,9)
150 Opening data channel for directory listing of "/"
drwxr-xr-x 1 ftp ftp 0 Oct 19 2018 WCY
drwxr-xr-x 1 ftp ftp 0 Aug 21 2018 ***
drwxr-xr-x 1 ftp ftp 0 Dec 10 10:40 ***
drwxr-xr-x 1 ftp ftp 0 Dec 03 13:29 ***
drwxr-xr-x 1 ftp ftp 0 Nov 01 2018 ***
drwxr-xr-x 1 ftp ftp 0 Nov 19 16:38 ***
drwxr-xr-x 1 ftp ftp 0 Dec 12 17:47 ***
drwxr-xr-x 1 ftp ftp 0 Nov 21 10:34 ***
226 Successfully transferred "/"
列出当前所在远程FTP路径
ftp> cd WCY
250 CWD successful. "/WCY" is current directory.
ftp> pwd
257 "/WCY" is current directory.
在远程主机中创建目录
ftp> mkdir test
257 "/WCY/test" created successfully
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,12)
150 Opening data channel for directory listing of "/WCY"
drwxr-xr-x 1 ftp ftp 0 Dec 19 10:57 test
226 Successfully transferred "/WCY"
删除远程主机中的目录
ftp> rmdir test
250 Directory deleted successfully
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,13)
150 Opening data channel for directory listing of "/WCY"
226 Successfully transferred "/WCY"
返回上一级
cdup 或 cd ..
改变远程主机文件权限
chmod 权限 文件
将本地一个文件传送至远程主机中
等价命令send
ftp> put /root/test.wcy /WCY/test.wcy
local: /root/test.wcy remote: /WCY/test.wcy
227 Entering Passive Mode (192.168.1.10,80,16)
150 Opening data channel for file upload to server of "/WCY/test.wcy"
226 Successfully transferred "/WCY/test.wcy"
21 bytes sent in 3.3e-05 secs (636.36 Kbytes/sec)
ftp> cd /WCY
250 CWD successful. "/WCY" is current directory.
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,17)
150 Opening data channel for directory listing of "/WCY"
-rw-r--r-- 1 ftp ftp 21 Dec 19 11:03 test.wcy
226 Successfully transferred "/WCY"
将本地主机中一批文件传送至远程主机
mput local-files
删除远程主机中的文件
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,34)
150 Opening data channel for directory listing of "/WCY"
-rw-r--r-- 1 ftp ftp 243456000 Oct 19 2018 MySQL-5.6.41-1.el7.x86_64.rpm-bundle.tar
-rw-r--r-- 1 ftp ftp 21 Dec 19 11:03 test.wcy
226 Successfully transferred "/WCY"
ftp> delet MySQL-5.6.41-1.el7.x86_64.rpm-bundle.tar
250 File deleted successfully
ftp> ls
227 Entering Passive Mode (192.168.1.10,80,35)
150 Opening data channel for directory listing of "/WCY"
-rw-r--r-- 1 ftp ftp 21 Dec 19 11:03 test.wcy
226 Successfully transferred "/WCY"
删除远程上的一批文件
mdelete [remote-files]
将文件从远程主机上下载到本地主机中
等价命令recv
ftp> pwd
257 "/通用文件/linux/mysql" is current directory.
ftp> get /通用文件/linux/mysql/perl-5.10.0.tar.gz /root/perl-5.10.0.tar.gz
local: /root/perl-5.10.0.tar.gz remote: /通用文件/linux/mysql/perl-5.10.0.tar.gz
227 Entering Passive Mode (192.168.1.10,80,56)
150 Opening data channel for file download from server of "/通用文件/linux/mysql/perl-5.10.0.tar.gz"
WARNING! 56500 bare linefeeds received in ASCII mode
File may not have transferred correctly.
226 Successfully transferred "/通用文件/linux/mysql/perl-5.10.0.tar.gz"
15595020 bytes received in 0.33 secs (47322.31 Kbytes/sec)
从远程主机上下载一批文件到本地主机
mget [remote-files]
退出
ftp> bye
221 Goodbye
内容整理至网络,如遇不懂的请自行baidu
CentOS中使用wget下载远程ftp文件
在MAC中使用ssh连接远程服务器:
打开终端,输入:ssh -p 端口 用户名@服务器IP地址
回车后输入密码,提示登录成功....
切换到需要存放文件的目录,在命令行下输入:
prompt off (回车) /* 不用每次都输入Y来确认是否下载 */
接下来输入:
wget ftp://ip:port/子目录/* --ftp-user=你的用户名 --ftp-password=你的FTP密码 -r
示例:
wget ftp://192.168.20.249:8081/htdocs/* --ftp-user=lzadmin --ftp-password=123456 -r
注意:-r 的意思是下载所有文件包括文件夹
centos如何添加ftp目录
-
检查Centos服务器中是否安装了vsftpd
rpm -qa |grep vsftpd
如果没有显示则没有安装
-
2.安装vsftpd
yum -y install vsftpd
-
3.打开vsftpd服务
service vsftpod start
-
设置开机自启动
chkconfig --level 35 vsftpd on
chkconfig --list vsftpd
0,1,2,3,4,5,6表示的是等级
1表示:单用户模式
2表示:无网络连接的多用户命令行模式
3表示:有网络连接的多用户命令行模式
4表示:不可用
5表示:带图形界面的多用户模式
6表示:重新启动
-
5.配置vsftpd.conf文件
cd /etc/vsftpd
vi vsftpd.conf
禁止匿名访问
anonymous_enable=NO #进制匿名访问
chroot_local_user=YES #限制所有用户都在家目录
chroot_list_enable=NO #调用限制在家目录的用户名单
chroot_list_file=/etc/vsftpd/chroot_list #限制在家目录的用户名单所在路径设置参考
chroot_list_enable=YES/NO(NO)
设置是否启用chroot_list_file配置项指定的用户列表文件。默认值为NO。
chroot_list_file=/etc/vsftpd.chroot_list
用于指定用户列表文件,该文件用于控制哪些用户可以切换到用户家目录的上级目录。
chroot_local_user=YES/NO(NO)
用于指定用户列表文件中的用户是否允许切换到上级目录。默认值为NO。
通过搭配能实现以下几种效果:
①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;未在文件中列出的用户,不能切换到其他目录。
②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;未在文件中列出的用户,可以切换到其他目录。
③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
-
6.添加ftp用户
useradd -s /sbin/nologin ftpadmin -d /home
如果显示 useradd: warning: the home directory already exists.
Not copying any file from home directory into it.不用理会, 只是告诉你, 你指向的目录已经存在了, 这不影响
设置目录及其文件的属组设置密码
passwd [用户名]
-
7.重启vsftpd
-
8.打开服务器21端口
iptables -I INPUT -p tcp --dport 21 -j ACCEPT
service iptables save
service iptables restart
-
9
9.连接成功,大功告成
-
10
10.常见错误:530 login incorrec原因汇总
1.配置文件错误
2.用户密码错误
3.端口未打开
END
如果显示
curlftps - ftp目录挂载到本地目录
1、安装依赖
yum -y install glib* fuse*
2、安装curlftps
源码包:
http://pan.baidu.com/share/link?shareid=2050371528&uk=840370981
tar zxvf curlftpfs-0.9.2.tar.gz
cd curlftpfs-0.9.2
./configure -prefix=/usr/local/curlftpfs
make
make install
3、挂载FTP服务器
3.1用curlftpfs命令挂载
curlftpfs -o codepage=utf8 ftp://username:password@192.168.192.168 /ftp
参数说明:
codepage 编码
username FTP用户名
password FTP密码
192.168.1.111 FTP地址
/ftp 准备挂载到的路径
3.2 卸载挂载
fusermount -u /ftp
或
umount -l /ftp
3.3 开放权限
这样其它用户也能读写了,uid和gid改成你自己的id
sudo curlftpfs –o rw,allow_other,uid=0,gid=0 ftp:// username: password @192.168.1.111 /ftp
2.4、开机自动挂载
echo "curlftpfs#username:password@192.168.1.111 /ftp fuse allow_other,uid=0,gid=0 0 0" >> /etc/fstab
我们今天的关于监视远程FTP目录和远程ftp访问的分享就到这里,谢谢您的阅读,如果想了解更多关于Centos下ftp协议连接远程ftp server主机、CentOS中使用wget下载远程ftp文件、centos如何添加ftp目录、curlftps - ftp目录挂载到本地目录的相关信息,可以在本站进行搜索。
本文标签: