前段时间,由于硬件故障,图片服务器宕机啦。文件服务程序倒是很简单,可以找到代码,很快就可以部署。但是几十个G的图片还在那台机器上,怎么办?之前从来没有文件备份过,死了,要挨骂了。好在硬件故障解决了,图片服务器也恢复了,业务正常了。主管说,你还是备份吧。之前也想过,但是给的机器就三台:一台CMS,一台接口,一台文件服务器(数据库都是dba统一管控的,不用我们管),没有多余的机器用来备份文件呀。去找主机运维要机器,死活不给,说你们交叉备份吧。好吧,只能这样了。
网上搜了下,现成工具多得是,不想用啊,麻烦。自己写脚本吧。
图片目录结构如下图:

结构很简单,一天一个目录,上传的图片就在每一天的目录里头。
主要思路:通过find命令找到指定时间段内的文件夹,然后以此作为参数xargs,递归把文件夹及文件下面的文件scp到另外一台机器。
先同步现有的文件,文件太多,大概有四五万,担心一次性同步参数个数超过xargs的限制,还是按时间一部分一部分同步吧。用的命令主要是find、xargs、scp,都是系统自带的。脚本如下:
find . -mtime +720 -mtime -727 -type d |xargs -I{
}

本文介绍了一种使用find、xargs和scp命令手动编写脚本来备份图片服务器文件的方法,包括如何按时间筛选文件并实现定时任务自动备份。
最低0.47元/天 解锁文章
711






