作为一个运维,越来越像一个开发了;
简单的难的,全用脚本实现了,不写java却写起了shell,瞬间感觉自己帅(衰)帅(衰)的;
公司下达的任务:将一个740+G的文件夹备份到另一个服务器;看着挺简单,scp啥的早晚能搞定,无非是时间的事儿;好,下面来说说环境:
- 这个文件夹是个项目,里面会不停的生成录音文件(mp3和wav格式);
2.系统的总共容量为1T,其中录音文件已经占用了740G了;
3.要求传输过去之前生成一个文件的文本,传输过去之后再生成一个文本;两个文本对比;
可以知道是否能对上号(这个人家的要求,个人感觉完全没必要);
###################################
好了,其他的先不说,先订方案:使用tar压缩文件,然后传输;测试: 在tar打包压缩期间,往被打包的文件里写入数据。生成的压缩包里是否包含写入的数据; 目的: 用于服务器上700+G的录音文件进行打包;压缩期间肯定会有新的录音文件生成,如果不包含期间写入的录音文件,那么就可以写脚本根据脚本获取压缩期间新生成的文件,之后再,将新的录音文件备份过去;如果包含,就需要另写脚本进行对比; 过程: 1.提前下载了5000+个MP3格式和wav格式的录音文件,存放在test文件夹内; 再打开一个xshell窗口,写一个脚本,可以将a.txt、b.txt等文件mv到test内; 先执行,tar czvf test.tar.gz ;再在另一个xshell窗口执行脚本将a/b文件mv到test内; 然后tar xzvf test.tar.gz 查看里面没有a、b文件; 2.同样的环境,不一样的是将脚本写成可以在test内touch文件的脚本; 测试结果一样,解压后的文件夹内没有期间创建的文件; ################################### **后来在群里讨论,当执行tar开始压缩的时,tar就已经将test文件夹扫描并且缓存了,所以不会将期间新生成的文件压缩进去,但是压缩完毕后会有提示:“文件有改动”; 但是测试用的大概是1G的文件,如果换成是740G的呢?
原文地址:http://blog.51cto.com/13577495/2156965
时间: 2024-10-03 09:55:13