[Linux使用] ftp工具

lftp

    一个集成了ftp, http, sftp, fish, torrent传输协议的文件传输工具。

安装ftp服务

    安装:yum install vsftpd
    启动:service vsftpd start
    使用FTP服务,需要搭建ftp服务器
    

lftp的使用

    lftp sftp://root@9.41.147.0     使用sftp协议连接
    set -a    列出lftp的所有配置
    set xfer:clobber               (yes)         开启,覆盖本地目录下的同名文件
                                   (no)          关闭,提示文件在当前目录已存在,不予覆盖
    set xfer:make-backup           (yes)         开启,如果当前目录下有同名文件,则先把此文件备份为file.~ ,接着做get动作
                                                  (此选项对put,mirror,mirror -R均无效)
                                   (no)          关闭,不备份同名文件
    mirror                          同步本地目录成对端目录,仅在双端目录文件“内容”有差异时,才会做动作
    mirror  -R                      同步对端目录成本地目录,仅在双端目录文件“内容”有差异时,才会做动作


需要知道的几个异常点

传输过程中,发生如下情况会怎样:
1)文件还没写完,就开始get了:

会获取执行get那个时间点时的文件(比如文件一共100M,写到20M的时候get,这个时候只能get到20M),但文件结构是OK的


2)正在传输时,传输动作被终止了:

传输动作立刻停止,文件结构是OK的


3)get或者put时,源文件被删除了:

传输依旧执行下去,目的端可获得完整的文件
(文件的删除只是删除了文件描述符结构,由于get和put会打开文件,所以文件打开计数器不为零,所以inode结构不会被释放
 ,所以不影响get和put使用文件,可以从文件系统的原理角度理解)


4)get或者put时,落地文件被删除了:

 传输依旧执行下去,落地文件无法形成
(落地文件在构架的过程中被删除,意味着文件结构的丢失,因此无法在本地构建一个完整的文件,所以文件无法落地,但是
,传输动作还是会执行完,是不是应该提示会好点?)

              
对set xfer:make-backup的几点说明

本配置只对get命令有效,put 、mirror 和mirror -R均不会产生file.~文件
    put :       不感知对端是否有重名文件,直接甩过去,覆盖之。
    mirror:     不会产生file.~文件,采取直接覆盖的方式。
    mirror -R:  不会产生file.~文件,采取直接覆盖的方式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值