rsync
配置rsync
试验准备:A主机IP地址为192.168.56.100(服务端),B主机IP地址为192.168.56.200(客户端)可有多个
架构图,经典拉取模式:
关闭selinux,如有防火墙应开启相应端口,默认873端口
sed -i 's/SELINUX=.*/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
A主机作为同步源:
#mkdir /mnt/www
#chown www:www /mnt/www -R #注意两边都要有相应的权限
#echo "www:www" /etc/rsync.passwd #格式为 username:passwd 注意冒号,非系统级别用户,可自定义用户密码
#chmod 600 /etc/rsync.passwd
# cat /etc/rsyncd.conf
1 uid = nobody 2 gid = nobody 3 port = 873 4 fake super = yes 5 use chroot = no 6 max connections = 200 7 timeout = 600 8 ignore errors 9 read only = true 10 list = false 11 dont compress = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2 12 [test] 13 path = /mnt/www 14 comment = copy file for every node 15 read only = no 16 write only = no 17 list = no 18 ignore errors 19 auth users = www 20 secrets file = /etc/rsync.passwd
#systemctl daemon-reload
#systemctl restart rsyncd
B主机作为客户端下载:
新建密码文件:
#echo "www" /home/www/rsync.passwd
#chmod 600 /home/www/rsync.passwd
注意事项:密码文件权限必须为600,内容为服务端密码文件中的用户密码,不包含用户名
进行下载操作
# rsync -avz 192.168.56.100::test /mnt/www/ --password-file=/home/www/rsync.passwd
rsync命令的用法:
基本格式:rsync [选项] 原始位置 目录位置
常用选项:
-a:归档模式,递归并保留对象属性,等同于-rlptgoD
-v:显示同步过程的详细(verbose)信息
-z:在传输文件时进行压缩(compress)
-H:保留硬链接文件
-A:保留ACL属性信息
--delete:删除目标位置有而原始位置没有的文件
-r:递归模式,包含目录及子目录中所有文件
-l:对于符号链接文件仍然复制为符号链接文件
-p:保留文件的权限标记
-t:保留文件的时间标记
-g:保留文件的属组标记(仅超级用户使用)
-o:保留文件的属主标记(仅超级用户使用)
-D:保留设备文件及其他特殊文件
官方文档_rsync_man: https://download.samba.org/pub/rsync/rsync.html
官方文档_rsyncd.conf: https://download.samba.org/pub/rsync/rsyncd.conf.html