一、 编写脚本
编写一个脚本文件,使脚本可以执行备份命令。
例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。
1. 创建脚本
命令格式: touch 路径/文件名.sh
例如:
输入命令:touch /home/backup.sh
2. 写入命令
首先进入脚本:vi命令
vi /home/backup.sh
在脚本内写入:
#!/bin/sh mkdir /home/beifen #创建一个临时文件(要保存备份的路径) cp -r /home/backups/balalala /home/beifen #数据存在backups目录下,备份到beifen目录下,所以先将数据拷过来 tar -zcPvf /home/backup$(date +%Y%m%d).tar.gz /home/beifen #将数据所在文件夹beifen打包 rm -rf /home/beifen/ #删除临时文件内容 find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} ; #删除改文件夹下超过30天的文件
3. 执行脚本文件
直接手动执行脚本文件。
命令格式:sh 路径/文件名.sh
例如:sh /home/backup.sh
二、 设置定时执行本脚本。
例如:设置脚本每7天执行一次。
1. 安装crond
如果没有安装crond服务就先装上服务。
检查服务状态:service crond status
2. 修改crontab内容
输入命令:crontab –e
进入后继续输入命令:0 0 /7 * sh /home/backup.sh —->一定要加上sh命令
设置为每7天执行一次脚本文件
然后,保存退出:wq
sh脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录 —>一定要加上sh命令
3. 重新启动crond服务
输入命令:service crond restart
至此配置完成!
#! /bin/sh
mkdir /home/plantask/temp
#创建一个临时文件 保存备份的路径
cp -r /www/xilan /home/plantask/temp
#数据存在plantask目录下,备份到temp目录下,所以先将数据拷过来
tar -zcPvf /www/backups/xilan$(date +%Y%m%d%H%M%S).tar.gz /home/plantask/temp -->时间精确到毫秒
#将数据所在文件夹plantask打包
rm -rf /home/plantask/temp
#删除临时文件内容
find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} ;
crontab
0 */1 * * * sh /home/plantask/backup.sh #每小时执行一次 */1 * * * * sh /home/plantask/backup.sh #每分钟执行一次 用于调试