服务器A(主) 192.168.1.120tomcat
服务器B(从) 192.168.1.130安全
需求:服务器B按期拉取服务器A的数据并备份。bash
实现方式:服务器
1)查看是否安装 rpm -aq rsync
安装命令 yum intsall rsync -y ssh
2)启动服务
测试
rsync --daemon
3)查看服务spa
ps -ef |grep rsync #或者 netstat -lnutp |grep rsync
新增用户code
useradd rget
设置密码crontab
echo '123456' | passwd --stdin rget
设置权限get
setfacl -R -m user:rget:rwx /home/tomcat8
设置默认权限 及时之后目录变更更改
setfacl -R -m default:rget:rwx /home/tomcat8
查看权限是否正确
getfacl /home/tomcat8_pay
1)生成密钥(一直回车就能够)
ssh-keygen -t rsa
2)复制密钥,这里须要输入服务器A刚才配置的的密码
ssh-copy-id rget@192.168.1.120
3)测试 登录服务器A(主)
ssh rget@192.168.1.120
4)登录成功 exit 退出便可
1)执行命令
rsync -azP --delete rget@192.168.1.130:/home/tomcat8 /backup
若是backup目录中存在tomcat8中的文件,同步成功。
2)编写脚本
vi rsync_back.sh
#!/bin/bash
rsync -az rget@192.168.1.130:/home/tomcat8 /backup
按期备份的时候能够把 -azP中的P去掉,不用看进度。
delete 也要去掉,防止误删操做。
执行 chmod +x rsync_back.sh
3)定时同步(天天一点半)
命令 crontab -e
30 1 * * * /home/rsync_back.sh &
#按期备份
tar -zcvf backup_`date +%Y-%m-%d`.tar.gz /backup/
固然这样实现备份是极为不安全的,rget用户是能够登录系统的,也就是说能够作各类操做,甚至提权操做。
后面咱们要讲到的是使用 rsync配置虚拟用户备份文件,不使用系统用户。