温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

rsync配置与自动化执行

发布时间:2020-04-20 23:11:07 来源:网络 阅读:1477 作者:老唐6 栏目:建站服务器

rsync是类unix系统下的数据镜像备份工具——remote sync。一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH、rsync主机同步。我们先来了解下rsync的语法吧,然后在配置rsync+ssh+crontab,实现自动化备份。

yum install rsync -y                     #安装服务

本地目录同步(个人认为本地同步还是cp实用)

rsync -avz /tang /home            #将/tang目录下的文件复制到/home中,参数说明看下面。

rsync配置与自动化执行


实验环境:

由于我想把实验录成gif效果,所以装了个图像界面,左边是主服务器,右边是ssh远程备份服务器。

把主服务器的  /tang/  目录 备份到备份服务器的 /home中,备份服务器的IP为:192.168.23.35

rsync -avz /tang/ root@192.168.23.35:/home/        #把本地/tang/目录备份到远程备份服务器的/home目录下

rsync配置与自动化执行



假如主服务器和备份服务器都想保持一致,可以加上 --delete,让备份服务器同步主服务器,有多余的就删除。  左边是主服务器,右边是ssh远程备份服务器。

rsync --delete -avz /tang/ root@192.168.23.35:/home/

rsync配置与自动化执行


同步指定的文件夹名。这里是以b开头的文件夹都匹配

rsync -avz --include 'b*' --exclude '*' /tang root@192.168.23.35:/home   

解释:--include是包括的意思。 --exclude是排除的意思,*代表前面的(左邻)字符有0个或0个以上。

如果想要准确的同步一个文件夹,--include这里是文件夹的名字,后面不加*号键。 

左边是主服务器,右边是ssh远程备份服务器。

rsync配置与自动化执行



-a, -权限的属性不变

-v, -详细模式输出

-z, -传输时进行压缩处理

-e, --rsh=COMMAND 指定使用rsh、ssh方式进行数据同步


基本的操作上面应该都演示了,相信你应该知道每次同步都要输入备份服务器的密码,现在来配置ssh免密码登录,然后在 crontab -e 中 写个脚本就可以自动化执行了。实验如下:


在主服务器上生成密钥

ssh-keygen            #(直接选择回车,都选择默认就行)


使用ssh-copy-id将公匙发送到备份服务器

ssh-copy-id 192.168.23.35


然后再测试下,远程登录是否要密码,不用就OK!

rsync配置与自动化执行


手动测试同步是否需要输入密码

rsync -avz -e ssh /tang root@192.168.23.35:/home

rsync配置与自动化执行


ssh 免密码登录OK,现在我们把这句写入一个脚本里面

echo "rsync -avz -e ssh /tang root@192.168.23.35:/home " > /etc/tang.sh


crontab -e            #编写定时执行任务,每个小时的第五分钟执行一次。

5 * * * * sh /etc/tang.sh

rsync配置与自动化执行


*  *  *  *  *    sh /etc/tang.sh


解释:

第1列表示分钟1~59 每分钟用*或者 */1表示 

第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天) 






以上实验配置完毕,

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI