您的位置:首页 > 运维架构 > Linux

Linux自动备份文件

2012-07-30 09:00 274 查看
今天有人让我给写个脚本,说是让linux定时备份数据和资料,每次备份的数据文件名不一样,并删除超过一定时期的资料,这个听起来挺有意思的,具体看下面吧:

1,写一个脚本backup.sh内容如下

#!/bin/sh

cp -r /home/..../data /tmp/backup/bak //数据存在data目录下,备份到backup目录下,所以先将数据拷过来

tar -zcvf /tmp/backup/bak$(date +%Y%m%d).tar.gz /tmp/backup/bak //将数据所在文件夹bak打包

rm -rf /tmp/backup/bak //删除临时文件内容

find /tmp/backup -mtime +30 -name "*.*" -exec -rf{}; //删除改文件夹下超过30天的文件

2,修改crontab内容

#crontab -e

* * * * * /home/.../backup.sh

如:22 11 1 * * /home/backup.sh 就是每月的1号11点22分执行home下的backup。sh脚本

前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录

3,重新启动crond服务

#service crond restart

如果没有安装crond服务就先装上服务再说,用service crond status可以查看该服务状态

注:我们可以用crond服务做很多与定时有关的任务,比如定时发邮件,每天生成一份系统状态报告等等。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: