完成了服务器apache日志自动清理了,数据备份也完成了定时清理,保存最近30天的。一时半会不会再担心硬盘被这些大文件给占满了。
再处理这两个问题中遇到了一些问题。也是不太好查出的问题。最后发现是windows上存的文件,到linux服务器上运行会报错。还是要存成unix类型的文件 ,到上面执行就没有问题了。不是shell脚本的语法错误,报错的时候会提示命令不存在。害我排错绕了一大圈啊。
处理数据库备份文件清理的时候,遇到的问题是find命令还不能所有文件一视同人,不然的话,会把这个备份的根目录也删除了。这下就麻烦了。只能按压缩包的gz文件来查找,然后再去删除里面的空目录。暂时还没有想到更好的办法,不过这个方法目前能解决这个问题就OK了。等想出更好的方法再来优化一下。
#删除.gz结尾的备份文件
find /backup_dir -mtime +30 -name "*.gz" -exec rm -rf {} \;
#删除空目录
find /backup_dir -depth -empty -type d -exec rmdir -p {} \;
整个shell脚本就不帖了,太长。有需要的朋友可以留言。可以发mail给你。
