rsync远程同步
Remote Sync,rsync远程同步。是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树。支持增量备份、保持连接和权限采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用。
配置rsync
1.本次实验需要准备两台虚拟机。一台作为rsync同步源,一台作为和客户端。
2.通过挂载本地的光盘镜像,加载本地yum源。
3.两台虚拟机安装rsync。
yum -y install rsync
4.修改同步源的配置文件。
vim /etc/rsyncd.conf
#删除原有内容,并加入下面内容。
uid = nobody
gid = nobody
#只能使用源目录
use chroot = yes
#监听地址
address = 192.168.80.104
#端口号
port 873
#日志文件和进程号
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
#允许访问的IP地址
hosts allow = 192.168.80.0/24
#共享模块名称
[wwwroot]
#模块路径
path = /var/www/html
comment = Document Root of www1.bdqn.com
#是否只读
read only = yes
dont comperss = *.gz *.bz2 *.tgz *.zip *.rar *.z
授权的用户
auth users = backuper
密码文件路径
secrets file = /etc/rsyncd_users.db
5.连接需要密码
vi /etc/rsyncd_users.db
输入自己定好的密码。
6.可以用以下命令开启和关闭rsync进程。
#开启进程
rsync --deamon
#关闭进程
kill $(cat /var/run/rsync.pid)
rsync相关命令与同步配置
1.可以用以下两种方式进行远程同步。
格式1:用户名@主机地址::共享模块名
rsync -azv backuper@192.168.80.104::wwwroot /opt
格式2: rsync://用户名@主机地址/共享模块名
rsync -azv rsync://backuper@192.168.80.104/wwwroot /opt
rsync命令的相关参数:
-a:归档模式,递归并保留对象属性,等同于 -rlptgoD
-v:显示同步过程的详细(verbose)信息
-z:在传输文件时进行压缩(compress)
-H:保留硬连接文件
-A:保留ACL属性信息
--delete:删除目标位置有而原始位置没有的文件
--checksum:根据对象的校验和来决定是否跳过文件
2.设置免交互同步
在客户端上编写好密码文件,在输入命令时指定密码路径即可。
#在客户端上创建密码文件。
vim password.pass
#写入远程密码
修改密码文件权限
chmod 600 password.pass
再输入命令时指定密码文件路径。
rsync --password-file=/opt/password.pass backuper@192.168.80.104::wwwroot /opt