安装rsyncd:
tar xf rsync-3.1.1.tar.gz
cd rsync-3.1.1
./configure --prefix=/usr/local/rsync
make && make install
ln -s /usr/local/rsync/bin/rsync /usr/bin/rsync
配置rsyncd:
mkdir /etc/rsyncd
vim /etc/rsyncd/rsyncd.conf
uid=root
gid=root
use chroot=false
max connections=200
timeout=600
pid file=/var/run/rsyncd.pid
lock file=/var/run/rsyncd.lock
log file=/var/log/rsyncd.log
[test]
path=/data/test 文件路径
#ignore errors 可以忽略一些无关的IO错误,最好不要不然会报错。
read only=true 只读
list=no不允许列文件
include = db1/<---包括进去db1/,包括其他全路径。
exclude = db1/1.log<---排除 db1/1.log,支持表达是(*)。
hosts allow=192.168.16.134 允许IP
auth users=rsync认证用户
secrets file=/etc/rsyncd/rsyncd.password 认证文件名
创建密码:
echo ‘rsync:123456‘ >> /etc/rsyncd/rsyncd.password <---- 创建认证文件
chmod 600 /etc/rsyncd/rsyncd.password <----不修改会一直报没权限。
启动:
rsync --daemon --address=192.168.16.135 --port=873 --config=/etc/rsyncd/rsyncd.conf
echo "rsync --daemon --address=192.168.16.135 --port=873 --config=/etc/rsyncd/rsyncd.conf" >> /etc/rc.local
Client:
mkdir /etc/rsyncd
echo ‘123456‘>> /etc/rsyncd/rsync.password.scrt
chmod 600 /etc/rsyncd/rsync.password.scrt //注意,是哪个用户跑就chown哪个用户。
rsync -avz --progress [email protected]::test /test --password-file=/etc/rsyncd/rsync.password.scrt