通过一个备份归档的脚本演示rsync限速和find如何删除文件

通过一个备份归档的脚本演示rsync限速和find如何删除文件


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#!/bin/bash
# 2015/04/15
 
src='mysqlbak'
ip='192.168.1.20'
dest='/data/backup/mysql/3306/test20'
 
f_log='/data/backup/mysql/log/bak_mysql_3306_test20.log'
 
[ -d $dest ] || mkdir -p $dest
 
echo "[`date +%F_%T`] rsync mysql slave tar backup file from test20 and remove old one:" >${f_log}
rsync -avzP --bwlimit=50000 ${ip}::${src}/gz ${dest} >>${f_log} 2>&1
rsync -avzP --bwlimit=50000 ${ip}::${src}/log ${dest} >>${f_log} 2>&1
echo "[`date +%F_%T`] finished! 10s later, delete files over 30 days:" >>${f_log}
 
sleep 10s
find /data/backup/mysql/3306/test20/gz -maxdepth 1 -type f -name "*.tar.gz" -mtime +30 -print >>${f_log} 2>&1
find /data/backup/mysql/3306/test20/gz -maxdepth 1 -type f -name "*.tar.gz" -mtime +30 -delete >>${f_log} 2>&1
find /data/backup/mysql/3306/test20/log -maxdepth 1 -type f -name "*.log" -mtime +30 -print >>${f_log} 2>&1
find /data/backup/mysql/3306/test20/log -maxdepth 1 -type f -name "*.log" -mtime +30 -delete >>${f_log} 2>&1


其中test20上的rsyncd.conf的配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[Jack@test20 ~]$ cat /etc/rsyncd.conf 
uid = nobody
gid = nobody
use chroot = no
max connections = 50
pid file /var/run/rsyncd.pid
lock file /var/run/rsync.lock
log file /var/log/rsyncd.log
 
[mysqlbak]
path = /data/backup/mysql/3306
read only = yes
list = no
hosts allow = 192.168.1.250
hosts deny = *
uid = root
gid = root



本文转自 pcnk 51CTO博客,原文链接:http://blog.51cto.com/nosmoking/1632845,如需转载请自行联系原作者
上一篇:jsp获得文件的绝对路径


下一篇:ios启动界面和icon设置