ftp(file transfer protocol)
功能说明:设置文件系统相关功能。
语法:ftp [-dignv][主机名称或IP地址]
补充说明:FTP是ARPANet的标准文件传输协议,该网络就是现今Internet的前身。
参数: 《Linux就该这么学》
-d 详细显示指令执行过程,便于排错或分析程序执行的情形。
-i 关闭互动模式,不询问任何问题。
-g 关闭本地主机文件名称支持特殊字符的扩充特性。
-n 不使用自动登陆。
-v 显示指令执行过程。
1. 连接ftp服务器
格式:ftp [hostname| ip-address]
a)在linux命令行下输入:
ftp 192.168.1.1
b)服务器询问你用户名和密码,分别输入用户名和相应密码,待认证通过即可。
c)也可以先输入ftp
ftp>
d)然后在输入要连接的IP
ftp>open 192.168.1.1
2. 下载文件
下载文件通常用get和mget这两条命令。
a) get
格式:get [remote-file] [local-file]
将文件从远端主机中传送至本地主机中。
如要获取远程服务器上/usr/your/1.htm,则
ftp> get /usr/your/1.htm 1.htm (回车)
b) mget
格式:mget [remote-files]
从远端主机接收一批文件至本地主机。
如要获取服务器上/usr/your/下的所有文件,则
ftp> cd /usr/your/
ftp> mget *.* (回车)
此时每下载一个文件,都会有提示。如果要除掉提示,则在mget *.* 命令前先执行:prompt off
注意:文件都下载到了linux主机的当前目录下。比如,在/usr/my下运行的ftp命令,则文件都下载到了/usr/my下。
3.上传文件
a) put
格式:put local-file [remote-file]
将本地一个文件传送至远端主机中。
如要把本地的1.htm传送到远端主机/usr/your,并改名为2.htm
ftp> put 1.htm /usr/your/2.htm (回车)
b) mput
格式:mput local-files
将本地主机中一批文件传送至远端主机。
如要把本地当前目录下所有html文件上传到服务器/usr/your/ 下
ftp> cd /usr/your (回车)
ftp> mput *.htm(回车)
2. linux下如何访问windows下的ftp服务器
linux下常用FTP命令
1. 连接ftp服务器
格式:ftp [hostname| ip-address]
a)在linux命令行下输入:
ftp 192.168.1.1
b)服务器询问你用户名和密码,分别输入用户名和相应密码,待认证通过即可。
2. 下载文件
下载文件通常用get和mget这两条命令。
a) get
格式:get [remote-file] [local-file]
将文件从远端主机中传送至本地主机中。
如要获取远程服务器上/usr/your/1.htm,则
ftp> get /usr/your/1.htm 1.htm (回车)
b) mget
格式:mget [remote-files]
从远端主机接收一批文件至本地主机。
如要获取服务器上/usr/your/下的所有文件,则
ftp> cd /usr/your/
ftp> mget *.* (回车)
此时每下载一个文件,都会有提示。如果要除掉提示,则在mget *.* 命令前先执行:prompt off
注意:文件都下载到了linux主机的当前目录下。比如,在/usr/my下运行的ftp命令,则文件都下载到了/usr/my下
3.上传文件
a) put
格式:put local-file [remote-file]
将本地一个文件传送至远端主机中。
如要把本地的1.htm传送到远端主机/usr/your,并改名为2.htm
ftp> put 1.htm /usr/your/2.htm (回车)
b) mput
格式:mput local-files
将本地主机中一批文件传送至远端主机。
如要把本地当前目录下所有html文件上传到服务器/usr/your/ 下
ftp> cd /usr/your (回车)
ftp> mput *.htm(回车)
注意:上传文件都来自于主机的当前目录下。比如,在/usr/my下运行的ftp命令,则只有在/usr/my下的文件linux才会上传到服务器/usr/your 下。
4. 断开连接
bye:中断与服务器的连接。
ftp> bye (回车)
3. Linux下如何找到FTP服务器的配置文件
1、Linux系统下vsftp安装。
4. linux下如何查看ftp的目录
我们通过tree命令(需要安装,方法:sudo apt-get install tree)可以以树状图的方式查看文件目录,而目录中不同类型的文件有各自的颜色,如下所示:
白色--普通文件
蓝色--目录
绿色--可执行文件
红色--压缩文件
青色--链接文件
黄色--设备文件
灰色--其他文件
通过ls命令,查看当前文件夹内的文件;ls -a 查看当前文件夹内的文件,包括隐藏文件;
ls -la 查看当前文件夹内文件的详细信息,包括隐藏文件,
5. Linux下如何获取FTP文件名和大小
path=''敏纯铅 #这里的桥好$1,换成你需要的路径名裤晌,或者你不换,通过shell的参数传入
for dirlist in $(find ${path} -name *.xml)
do
echo ${dirlist}
查找,删除,比较都在这做
done
6. LINUX下如何开启ftp服务器
1. 首先服务器要安装ftp软件,查看是否已经安装ftp软件下:
#which vsftpd
如果看到有vsftpd的目录说明服务器已经安装了ftp软件
2. 查看ftp 服务器状态
#service vsftpd status
3. 启动ftp服务器
#service vsftpd start
4. 重启ftp服务器
#service vsftpd restart
5. 查看服务有没有启动
#netstat -an | grep 21
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
如果看到以上信息,证明ftp服务已经开启。
6.如果需要开启root用户的ftp权限要修改以下两个文件
#vi /etc/vsftpd.ftpusers中注释掉root
#vi /etc/vsftpd.user_list中也注释掉root
然后重新启动ftp服务。
7. vsftpd 500 OOPS: cannot change directory
登陆报错:
C:\>ftp 192.168.0.101
Connected to 192.168.0.101.
220 (vsFTPd 2.0.5)
User (192.168.0.101:(none)): frank
331 Please specify the password.
Password:
500 OOPS: cannot change directory:/home/frank
Login failed.
ftp> ls
500 OOPS: child died
Connection closed by remote host.
解决方法:
setsebool ftpd_disable_trans 1
service vsftpd restart
就OK了!
这是SELinux的设和培置命令,在不熟悉SELnux前,把SELinux关掉悄棚宽也可以的。
8. 永久开启,即os重启后自动开启ftp服务
方法一:
cd /etc/xinetd.d ,编辑ftp服务的配置文件gssftp的设启亮置:
vi /etc/xinetd.d/gssftp ,将 修改两项内容:
(a) server_args = -l –a 去掉-a 改为server_args = -l
(b) disable=yes改为disable=no
(c) 保存退出。
方法二:
(a) system-config-services , 进入图形界面的System services查看是否有 vsftpd项,如果没有转到2.,保存后退出
(b) 用redhat第三张盘 安装此服务(开始--删除/增加程序),200K左右
(c) #setup
此时能看到vsftpd项,此时选中此services项,保存后退出.
7. cftpfilefind怎么获取linux ftp服务器文件列表呢是不是这个cftpfilefi
问题: ftp客户端下载目录数据很慢,而此目录是挂载了NFS共享目录
现象: 使用ftp客户端访问nfs目录,下载上传速度 0.7kb/s, 而且对于零散的小文件(总绝旁共几百K),
每次传输新文件, 都会有30-40s的等待时间,400k文件要5分钟。
ftp配置如下:
[root@IDC-D-144 vsftpd]# cat vsftpd.conf|grep -v '#'
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
ls_recurse_enable=YES
pam_service_name=vsftpd
userlist_enable=YES
listen=YES
tcp_wrappers=YES
chroot_list_enable=YES >>>>> 启用渣态改变用户登录默认目录
chroot_list_file=/etc/vsftpd/chroot_list >>>>> 允许登录更改目录的用户列表
user_config_dir=/etc/vsftpd/vsftpd_user_conf >>>>>> 目录下记录着每个用户的默认登录地址
[root@IDC-D-144 vsftpd]# cat chroot_list
suns
hanjun
[root@IDC-D-144 vsftpd]#
[root@IDC-D-144 vsftpd]# cd vsftpd_user_conf/
[root@IDC-D-144 vsftpd_user_conf]# ls
hanjun suns
[root@IDC-D-144 vsftpd_user_conf]# cat hanjun
local_root=/usr/local/apache2059/htdocs/hipiao/
[root@IDC-D-144 vsftpd_user_conf]#
这样用户hanjun登录就会直接进入目录 /usr/local/apache2059/htdocs/hipiao/
vsftpd 的部分就是这样。
下载上传速度慢也是想了很多办法,是不是内外网问题? 是不是路由设置问题? 。。。
最后查到可能与NFS有关。 出现几个服务如宏源名:nfslock 、 portmap 、rpc
讲一下NFS的端口连接知识:
因为NFS支持的功能相当的多,而不同的功能都会使用不同的程序来启动,没启动一个功能就会启用一些
端口来传输资料,因此,NFS的功能所随影的端口没有固定住,而是随机取用一些未被使用的小于1024的
端口来作为传输之用。但如此一来又造成用户端想要连上服务器时的困扰,因为用户端得要知道服务器端的
相应端口才能够连接吧。
8. linux下用ftp命令连接到ftp服务器应该如何查看服务器上的目录文件数
1.Linux下启动ftp
ls -l 普通文件就是以 - 开头,文件夹以 d 开头,grep 后面接正则表达式:^- 以 - 开头的匹配。
(8)linux获取ftp文件扩展阅读:
1.查看当前目录下的文件数量(不包含子目录中的文件):
ls -l|grep "^-"| wc -l
2. 查看当前目录下的文件数量(包含子目录中的文件):
ls -lR|grep "^-"| wc -l
3.查看当前目录下的文件夹目录个数,(不包含子目录中的目录):
ls -l|grep "^d"| wc -l
4.查询当前路径下的指定前缀名的目录下的所有文件数量 例如:统计所有以“20161124”开头的目录下的全部文件数量:
ls -lR 20161124*/|grep "^-"| wc -l