通常我使用基于rsync的备份。
但是现在我必须从Windows服务器制作备份脚本到linux。所以,这里没有rsync,只有FTP。
我喜欢硬链接来节省磁盘空间和增量备份的想法,以减少流量。
是否有类似的ftp备份脚本而不是rsync?
更新:
我需要通过FTP备份Windows服务器。备份脚本在Linux备份服务器上执行。
解决方案:
我找到了这个有用的脚本通过FTP备份硬链接和增量功能。
注意Ubuntu用户: Ubuntu中没有md5命令。使用md5sum代替。
# filehash1="$(md5 -q "$curfile"".gz")"
# filehash2="$(md5 -q "$mysqltmpfile")"
filehash1="$(md5sum "$curfile"".gz" | awk '{ print $1 }')"
filehash2="$(md5sum "$mysqltmpfile" | awk '{ print $1 }')"发布于 2015-02-22 15:56:22
编辑,因为设置不够清楚,我从最初的问题。
根据问题的更新情况,您需要通过ftp从windows系统中提取备份服务器上的数据。在这种情况下,您可以修改自己发现的脚本(请参阅注释),或者使用类似的想法,如:
cp -lr通过硬链接克隆上一次备份。lftp --mirror可以用远程系统上更新的任何内容覆盖此副本。但我最初假设您需要将数据从windows系统推送到备份服务器,即FTP服务器位于备份系统上。这种情况不能这样处理(最初的答复如下):
因为FTP根本不知道链接,任何传输只会导致新的或覆盖的文件。唯一的方法是使用站点命令来发出站点特定的命令,并以这种方式处理硬链接。但是,站点特定的命令通常受到严格限制,这样您就可以进行更改权限之类的操作,而不能使用硬链接执行任何操作。
即使你可以支持硬链接与网站,你必须实现的逻辑,决定何时使用这样的链接。使用rsync,此逻辑被内置到rsync服务器中,并在服务器站点上执行。使用FTP,您必须在客户端站点构建所有逻辑,这意味着您必须下载一个文件以将其与本地文件进行比较,然后决定是否需要上载新文件,或者是否可以使用指向现有文件的硬链接。
https://stackoverflow.com/questions/28659752
复制相似问题