首页 > 代码库 > rsync 实验
rsync 实验
参考1:http://www.jb51.net/LINUXjishu/142722.html
参考2:http://sookk8.blog.51cto.com/455855/328076
主服务器IP 192.168.109.128
从服务器IP 192.168.109.132
1.查看 rsync xinetd是否安装
rpm -q rsync
2.关闭 iptables 和 SELinux
从服务器IP 192.168.109.132 上的配置开始
1.yum install rsync xinetd #安装 如果已经安装可略过
2.vi /etc/xinetd.d/rsync #编辑配置文件
disable = no #修改为no
3./etc/init.d/xinetd start #启动
4.创建rsyncd.conf配置文件
vi /etc/rsyncd.conf #创建配置文件,添加以下代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | log file = / var /log/rsyncd.log #日志文件位置,启动rsync后自动产生这个文件,无需提前创建 pidfile = / var /run/rsyncd.pid #pid文件的存放位置 lock file = / var /run/rsync.lock #支持max connections参数的锁文件 secrets file = /etc/rsync.pass #用户认证配置文件,里面保存用户名称和密码,后面会创建这个文件 motd file = /etc/rsyncd.Motd #rsync启动时欢迎信息页面文件位置(文件内容自定义) [test_rsync] #自定义名称 path = /test/ #rsync服务端数据目录路径 comment = test_rsync #模块名称与[home_www.jb51.net]自定义名称相同 uid = root #设置rsync运行权限为root gid = root #设置rsync运行权限为root port=873 #默认端口 use chroot = no #默认为true,修改为no,增加对目录文件软连接的备份 read only = no #设置rsync服务端文件为读写权限 list = no #不显示rsync服务端资源列表 max connections = 200 #最大连接数 timeout = 600 #设置超时时间 auth users = root #执行数据同步的用户名,可以设置多个,用英文状态下逗号隔开 hosts allow = 192.168.109.128 #允许进行数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开 hosts deny = 192.168.21.254 #禁止数据同步的客户端IP地址,可以设置多个,用英文状态下逗号隔开 |
5、创建用户认证文件
vi /etc/rsync.pass #配置文件,添加以下内容
1 | root:123456 #格式,用户名:密码,可以设置多个,每行一个用户名:密码 |
6、设置文件权限
1 2 | chmod 600 /etc/rsyncd.conf #设置文件所有者读取、写入权限 chmod 600 /etc/rsync.pass #设置文件所有者读取、写入权限 |
7、让配置生效
service xinetd restart
8.检查rsync
#netstat -a | grep rsync
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
9.设置开机启动项
#vi /etc/rc.d/rc.local 加入
/usr/bin/rsync --daemon //不知道干嘛用的
service xinetd start
第二部分:在主服务器192.168.109.128上操作
1.查看和安装
1 2 3 4 5 6 7 | whereis rsync #查看系统是否已安装rsync,出现下面的提示,说明已经安装 rsync: /usr/bin/rsync /usr/share/man/man1/rsync.1.gz yum install xinetd #只安装xinetd即可,CentOS中是以xinetd来管理rsync服务的 yum install rsync xinetd #如果默认没有rsync,运行此命令进行安装rsync和xinetd vi /etc/xinetd.d/rsync #编辑配置文件,设置开机启动rsync disable = no #修改为no /etc/init.d/xinetd start #启动(CentOS中是以xinetd来管理rsync服务的) |
2、创建认证密码文件
vi /etc/rsync.pass #编辑文件,添加以下内容
1 | 123456 #密码 |
3.修改权限
1 | chmod 600 /etc/passwd.txt #设置文件权限,只设置文件所有者具有读取、写入权限即可 |
4.测试是否成功
1 | rsync -arHz --port=873 --progress -- delete /test/ root@192.168.109.132::text_rsync --password-file=/etc/rsync.pass |
选项解释:
-a 保持文件属性
-r 子目录递归处理
-H 保持硬链接关系
-z 传输时压缩处理
--progress 显示传输过程
--delete 删除目标备份没有的文件
-e ssh 使用ssh加密隧道传输
--password-file 使用本地密码和目标密码匹配 跳过手动输入密码的过程