1、下載
wget https://download.samba.org/pub/rsync/src/rsync-3.1.2.tar.gz
tar -zxvf rsync-3.1.2.tar.gz
2、安裝
cd rsync-3.1.2
./configure --prefix=/usr/local/rsync
make
make install
3、配置rsyncd.conf
vim /usr/local/rsync/rsyncd.conf
內容如下:
### 全局參數 ###
port=8730 # 【注意:默認端口是873,這里改用8730了】
motd file=/usr/local/rsync/rsyncd.motd
log file=/usr/log/rsyncd.log
pid file=/var/run/rsyncd.pid
### 模塊參數 ###
[mymodule]
path=/home/test
use chroot=true
uid=0
gid=0
read only=false
exclude=/readme.txt /runtime
auth users=txinz
secrets file = /usr/local/rsync/rsyncd.secrets
4、配置rsyncd.secrets
vim /usr/local/rsync/rsyncd.secrets
內容如下(語法為 用戶名:登錄密碼):
txinz:qwert54321
# 此文件權限必須設置為600
chmod 600 /usr/local/rsync/rsyncd.secrets
5、配置rsyncd.motd
vim /usr/local/rsync/rsyncd.motd
內容如下:
welcome use rsync service !
6、啟動rsync服務
【假設本機IP是:39.108.230.60】
/usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/rsyncd.conf
【查看rsyncd進程】
ps aux | grep rsyncd
7、測試rsync
在另一台裝了rsync的服務器上執行如下命令來測試:
[推送數據]
/usr/local/rsync/bin/rsync --port=8730 -av /root/test/ txinz@39.108.230.60::mymodule --password-file=/home/txinz.pass
【接收數據】
/usr/local/rsync/bin/rsync --port=8730 -av txinz@39.108.230.60::mymodule /root/test/ --password-file=/home/txinz.pass
注意:--password-file是可選的,表示導入"txinz@39.108.230.60::mymodule"對應的密碼,這里作為演示,里面的內容為qwert54321
其他參考:
http://www.linuxidc.com/Linux/2016-09/135120.htm
配置rsync開機啟動:
vi /etc/rc.local
在末尾加上上面介紹的啟動rsync服務的代碼保存即可,即 /usr/local/rsync/bin/rsync --daemon --config=/usr/local/rsync/rsyncd.conf
failed to create pid file /var/run/rsyncd.pid: File exists報錯
#刪除 /var/run/rsyncd.pid即可
[root@pcidata-jenkins ansible_playbooks]# rm -fr /var/run/rsyncd.pid
[root@pcidata-jenkins ansible_playbooks]# rsync --daemon