脚本作用
定时备份网站/home/www/htdocs/blog
到/home/www/backup/site-blog
下,
并删除10天前的备份。
创建脚本
1
|
vi /home/www/shell/site_backup_blog.sh
|
脚本内容
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
#!/bin/bash
############### common file ################
#备份文件存放目录
WEBBACK_DIR="/home/www/backup/site-blog"
#格式化日期,备份文件时用日期来做文件名的
DATE=`date +%Y%m%d-%H%M%S`
#保存日期
DAYS=10
############ www info ######################
#WEB目录
WEBSITE_DIR="/home/www/htdocs/blog"
# 排除某些目录(日志和缓存),exclude.txt文件中写入
#/home/www/htdocs/blog/runtime
#/home/www/htdocs/blog/logs
#指定www备份文件的前缀
WEBSITE_PREFIX=web-blog-
# 判断备份目录是否存在,不存在则创建
if [ ! -d "$WEBBACK_DIR" ];then
mkdir -p $WEBBACK_DIR
fi
#开始备份网站目录,备份过程同上
tar zcvf ${WEBBACK_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ${WEBSITE_DIR} -X /home/www/shell/exclude.txt
#只保留指定时间内的文件
find ${WEBBACK_DIR} -name "$WEBSITE_PREFIX*" -type f -mtime +${DAYS} -exec rm {} \;
|
设置执行权限
1
|
chmod 700 /home/www/shell/site_backup_blog.sh
|
设置定时任务
crontab -e
文件内容:
1
|
3 4 * * * /home/www/shell/site_backup_blog.sh
|
每天凌晨4:03分开始执行备份任务。