日期:2014-05-16  浏览次数:20696 次

linux下LFTP mirror的高级应用
在我刚刚发现LFTP的时候,我就注意到了它功能强大的mirror功能。 因为它可以给 mirror 命令传入参数,控制同步的行为: reverse 上传到FTP上,也可以使用 -R delete: 如果远程目录下已经没有某个文件,而本地有,则删除这个文件。 only-newer: 只下载新的文
在我刚刚发现LFTP的时候,我就注意到了它功能强大的mirror功能。
因为它可以给 mirror 命令传入参数,控制同步的行为:
--reverse 上传到FTP上,也可以使用 -R
--delete: 如果远程目录下已经没有某个文件,而本地有,则删除这个文件。
--only-newer: 只下载新的文件。mirror的判定新文件是通过文件大小和修改时间来判定的,我们可以使用

--ignore-time,来屏蔽时间判定,这样mirror只通过大小来判断文件,同步速度加快。
--exculde: 不包含某个目录。

--verbose: 详细输出。
比如:
mirror --delete --only-newer --verbose work bak/
自动备份服务器work文件夹,到本地当前目录的 bak文件夹下,并且删除已经不存在的文件,并且只下载最新的文件,再给出详细的输出。
用 lftp 的 -e 选项,把命令直接接在 lftp 之后:
lftp -u username,password -e”mirror --delete --only-newer --verbose /work bak/” ftpIP
也可以用 at 选项指定备份的时间:
lftp at 01:00 -u username,password -e”mirror --delete --only-newer –verbose /work bak/” ftpIP
这样每天 1 点就会执行备份任务。
根据经验,ftp比rsync快很多,以后如果有大量数据备份,还是考虑使用ftp好,所以还是用好LFTP吧