@nfs-server #编写备份脚本
[root@nfs ~]# cat MyBackup.sh
#!/bin/bash
#0.定义变量
Host=$(hostname)
Addr=$(hostname -I | cut -d " " -f 1)
Date=$(date +%F-%H-%M)
DestDir=${Host}_${Addr}
BackupRoot=/backup
#1.创建备份目录
[ -d ${BackupRoot}/${DestDir} ] || mkdir -p ${BackupRoot}/${DestDir}
#2.备份对应的文件
cd ${BackupRoot}/${DestDir} && tar czf ${Host}_${Date}_etc.tar.gz /etc
#3.生成MD5验证信息
cd ${BackupRoot}/${DestDir} && md5sum ${Host}_${Date}_etc.tar.gz > ${Host}_${Date}_etc.tar.gz.md5
#4.推送本地数据至备份服务器
export RSYNC_PASSWORD=123
rsync -av $BackupRoot/ rsync_backup@192.168.99.112::data
#5.本地保留最近7天的数据
[ -n "${BackupRoot}" ] ?&& ?find ${BackupRoot} -type f -mmin +20 | xargs rm -rf
#编写部署脚本(节点IP放在hostlist文件中)
[root@nfs ~]# cat Deploy.sh
#!/bin/bash
for ip in $(cat hostlist)
do
? ? ? ? scp MyBackup.sh root@${ip}:~/.
? ? ? ? ssh root@${ip} 'echo "*/5 * * * * sh /root/MyBackup.sh" | crontab'
? ? ? ? ssh root@${ip} 'mount /dev/cdrom /media/CentOS'
? ? ? ? ssh root@${ip} 'yum install rsync -y'
done
?
|