通过shell脚本整合了rsync(daemon)守护进程模式对文件备份以及进行md5校验的功能。

#!/bin/bash

file=access_2018-12-8.log
tarfile=./backup$(date +%F).tar.gz

tar zcf $tar_file $file
md5sum $tar_file >md5.log

#执行脚本的本机需要有rsync客户端的基础配置(密码文件授权600root只读权限,提前写好)

rsync -avz $tar_file md5.log [email protected]::backup --password-file=/etc/rsync.password

#需要公钥分发到备份服务器主机,实现免秘钥交互

cmd="cd /backup;md5sum -c md5.log"
ssh 172.16.1.41 $cmd

#通过返回值判断md5sum的校验状态

if [ $? -eq 0 ]
then
echo "backup file is ok (md5sum)"
else
echo "file transfer is fail"
fi