## 服務器端安裝
~~~
#1,查看rsync安裝包
rpm -qa rsync
#安裝
#yum install rsync -y
#源碼安裝:
rpm -e --nodeps rsync #卸載系統自帶的rsync
rpm -qa rsync
wget https://download.samba.org/pub/rsync/src/rsync-3.1.3.tar.gz
#wget -O https://download.samba.org/pub/rsync/src/rsync-3.1.3.tar.gz ./rsync.tar.gz
tar xf rsync-3.1.3.tar.gz
cd rsync-3.1.3
#./configure --prefix=/apps/rsync/
./configure
make && make install
#2,添加rsync服務的用戶,管理本地目錄的
useradd -s /sbin/nologin -M rsync
id rsync
#useradd rsync -s /sbin/nologin -M
#tail -1 /etc/passwd
#3,生成rsyncd.conf配置文件
#放入事先準備的配置。man rsyncd.conf去查(http://www.samba.org/ftp/rsync/rsyncd.conf.html)
vi /etc/rsyncd.conf
#rsync_config_______________start
#created by jo 2017-11-27
#QQ 31333741 blog:http://oldboy.blog.51cto.com
##rsyncd.conf start##
uid = rsync 用戶,遠端的命令使用rsync訪問共享目錄
gid = rsync 用戶組
use chroot = no 安全選項
max connections = 200 最大連接數
timeout = 300 超時時間s
pid file = /var/run/rsyncd.pid rsync進程對應的進程號文件
lock file = /var/run/rsync.lock rsync的程序鎖文件
log file = /var/log/rsyncd.log rsync的日志 出錯
[oldboy] 模塊名稱
path = /oldboy 服務器提供訪問的目錄
ignore errors 忽略錯誤
read only = false 可讀可寫
list = false 不允許列表
hosts allow = 10.0.0.0/24 允許的主機范圍
hosts deny = 0.0.0.0/32 拒絕的主機范圍
auth users = rsync_backup 虛擬用戶
secrets file = /etc/rsync.password 用戶對應的密碼文件
#rsync_config_______________end
#多模塊配置
cat >/etc/rsyncd.conf<<EOF
#rsync_config_______________start
#created by jo 2018-07-27
##rsyncd.conf start##
uid = rsync
gid = rsync
use chroot = no
max connections = 200
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
#提取到上面,讓所有模塊公用下面的配置
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
#hosts allow和 hosts deny只保留一條
#hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
[backup]
path = /backup
[nfsbackup]
path = /nfsbackup
#rsync_config_______________end
EOF
#4,根據rsyncd.conf的auth users配置帳戶,遠程連接的。并根據secrets file 參數生成密碼文件
echo "rsync_backup:123456" >/etc/rsync.password
cat /etc/rsync.password
#5,為密碼文件配置權限
chmod 600 /etc/rsync.password
ls -l /etc/rsync.password
#6,創建共享的目錄并授權rsync服務管理
mkdir /backup -p
chown -R rsync.rsync /backup
ls -ld /backup/
#如果沒有/backup目錄,就會chdir failed
##7,啟動rsync服務并檢查
rsync --daemon
ps -ef | grep rsync |grep -v grep
lsof -i :873
#或者用下面的命令,已知端口查看命令
netstat -lntup|grep 873
#centos7
ss -lntup|grep 873
#8,加入開機啟動
echo "/usr/bin/rsync --daemon" >>/etc/rc.local
tail -1 /etc/rc.local
~~~
## 客戶端安裝
~~~
#0,安裝
yum install rsync -y
#1,生成連接服務器需要的密碼文件
echo "123456" >/etc/rsync.password
cat /etc/rsync.password
#2,為密碼文件配置權限
chmod 600 /etc/rsync.password
ls -l /etc/rsync.password
#3,同步文件
#推送
rsync -avz /tmp/ rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password
rsync -avz /tmp/ rsync://rsync_backup@172.16.1.41/backup/ --password-file=/etc/rsync.password
#拉取:
rsync -avz rsync_backup@172.16.1.41::backup /tmp/ --password-file=/etc/rsync.password
rsync -avz rsync://rsync_backup@172.16.1.41/backup /tmp/ --password-file=/etc/rsync.password
說明:注意/dir01/表示目錄下的所有內容 /dir01表示的目錄本身
此例子是拷貝目錄下的內容所以要加上/dir01/如果是要將/dir01整個目錄拷貝到/dir02下,那么就要寫/dir01 --->注意后面沒有/
1,目錄后有/,復制目錄下的內容
2,目錄后沒有/,復制目錄和目錄下的內容
~~~