用lftp备份你的文件

翻译 & 修改自: http://www.linux.com/feature/122169

每天都在折腾电脑,重要的数据不能不备份。备份到自己的机器上,万一整个硬盘坏掉,数据还是玩完……最好能备份到另外的主机上,再保险可以在不同的机子上备份多个拷贝,如果你可以在自己的电脑上打开 ftp 服务,可以让 lftp 帮你,在另一台电脑上备份你现有电脑文件。

先来熟悉下 了lftp 的基本用法,如果 ftp 服务器是匿名,只要:

lftp ftpsite

就可以登录进服务器,如果需要用户名和密码,就要像下面的样子:

lftp -u username,password ftpsite

在其他的计算机上登录进如 ftp 服务器后,只需要用 lftp 的 mirror 命令就可以方便的进行下载备份了:

mirror  需要备份的目录  保存备份计算机的本地目录

例如 mirror  /work  save/backup,这样 lftp 就会帮你自动同步目录下的所有文件。你也可以给 mirror 命令传入参数,控制同步的行为:

--delete:  如果远程目录下已经没有某个文件,而本地有,则删除这个文件。

--only-newer:  只下载新的文件。

--exculde:  不包含某个目录。

--verbose:  详细输出。

举例:

mirror --delete --only-newer --verbose  /work backup/

自动备份远处电脑的 work文件夹,到本地当前目录的 backup文件夹下,并且删除已经不存在的文件,并且只下载最新的文件,再给出详细的输出。

你也可以用 lftp 的 -e 选项,把命令直接接在 lftp 之后:

lftp -u username,password -e"mirror --delete --only-newer --verbose  /work backup/" ftpsite

也可以用 at 选项指定备份的时间:

lftp at 00:00 -u username,password -e"mirror --delete --only-newer --verbose  /work backup/" ftpsite

这样每天夜里 12 点就会执行备份任务。

那么,如何恢复备份呢,很简单,只需要在 mirror 命令中加入 --reverse 选项:

mirror --reverse --delete --only-newer --verbose  /work backup/

这样 lftp 就会将备份上传到 ftp 服务器上了。