最近因为项目需要,要实现rsync文件同步的功能,需要把rsync命令写到shell脚本当中。以下是服务端和客户端的配置方式:
重新启动rsync服务的方式:
rsync --daemon --config=/data/etc/rsyncd.conf
服务端:
rsyncd.conf的配置方式:
[root@centos65 LinuxOrder]# cat /data/etc/rsyncd.conf
read only=yes
strict modes=false
log file=/var/log/rsyncd.log
[test]
uid=root
gid=root
read only=no
path = /home/liumengyang/
hosts allow=10.0.96.180
auth users=root
secrets file=/etc/rsyncd.secret
rsyncd.secret的配置方式:
[root@centos65 LinuxOrder]# cat /etc/rsyncd.secret
root:mengzhen@cnic
服务端的rsyncd.secret的文件格式是:【username:password】
客户端:
rsyncd.secret的配置方式,只需要密码即可
[root@localhost etc]# cat /etc/rsyncd.secret
mengzhen@cnic
最后同步命令如下:
[root@localhost etc]# rsync -rtav --password-file=/etc/rsyncd.secret /home/hello/ root@10.0.26.1::test/nihao
sending incremental file list
created directory /nihao
./
test.txt
test001.txt
sent 141 bytes received 49 bytes 126.67 bytes/sec
total size is 0 speedup is 0.00
[root@localhost etc]#
注意事项:
服务端和客户端的rsyncd.secret权限需要改为600:【chmod 600 rsyncd.secret】