利用rsync实现目录单向同步
近日有一个重要目录的异地备份需求,拟打算通过ssh免密登录 + rsync目录同步来实现,比如将 10.30.3.231:/opt/mysql_keyring_backup
单向同步到 10.30.3.232:/home/backup
- 第1步,[目标服务器]创建备份专用用户,比如
backup
cat /etc/group | grep backup || groupadd backup
cat /etc/passwd | grep backup || useradd backup -g backup -d /home/backup -s /bin/bash
echo 'Admin_147' | passwd backup --stdin
- 第2步,[源服务器]生成ssh免密登录公私钥(一路回车即可)
cat ~/.ssh/id_rsa.pub | grep ssh-rsa || ssh-keygen -t rsa
- 第3步,[源服务器]将公钥上传到目标服务器(可指定用户,比如
backup
),实现免密登录
ssh-copy-id -i ~/.ssh/id_rsa.pub backup@10.30.3.232
- 第4步,[源服务器]验证一下免密登录
[root@3.231 ~]$ ssh backup@10.30.3.232
[backup@3.232 ~]$ exit
- 第5步,[源服务器]利用rsync实现目录同步
rsync -avh --bwlimit=2048 /opt/mysql_keyring_backup backup@10.30.3.232:/home/backup/
- 第6步,[目标服务器]确认文件已同步
[root@3.232 ~]# ll /home/backup/
total 0
drwxr-xr-x 2 backup backup 21 Oct 30 13:35 mysql_keyring_backup