1. 程式人生 > >rsync以守護進程的方式傳輸備份數據

rsync以守護進程的方式傳輸備份數據

usr rsync服務 etc 分享圖片 ldb 檢查 創建 文件傳輸 行數

本文介紹rsync以守護進程的方式進行數據的傳輸備份,希望能給學習rsync的童鞋提供一些幫助。

一、環境

1、準備兩臺服務器,一臺為server端,一臺為client端

技術分享圖片

2、邏輯圖

技術分享圖片

二、rsync server端部署

1、檢查是否安裝rsync

[root@server  ~]#  which  rsync

/usr/bin/rsync

2、配置rsyncd.conf

註意:rsyncd.conf配置文件是不存在的,需要我們自己進行創建,路徑為/etc/rsyncd.conf

[root@server  ~]# vim  /etc/rsyncd.conf

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

[oldboy]
path =  /backup/
ignore errors
read only = false
list = false
hosts allow = 192.168.1.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup            
secrets file = /etc/rsync.password  

3、創建/etc/rsync.password文件

註意:rsync.password是虛擬賬號和密碼,賬號就是/etc/rsyncd.conf配置文件中的auth users = rsync_backup

[root@server ~]#  echo “rsync_backup:123456”  >/etc/rsync.password

[root@server ~]#  cat  /etc/rsync.password

rsync_backup:123456

[root@server ~]#  chmod  600  /etc/rsync.password 

備註:rsync_backup:123456 (rsync虛擬用戶名:rsync虛擬用戶密碼)

4、啟動rsync服務

[root@server ~]#  rsync --daemon

[root@server ~]#  netstat -lntup|grep rsync

tcp        0      0 0.0.0.0:873                 0.0.0.0:                   LISTEN      2844/rsync          
tcp        0      0 :::873                                :::                        LISTEN      2844/rsync *

5、創建系統虛擬用戶rsync

[root@server ~]# useradd rsync -s /sbin/nologin

6、創建需要備份的目錄/backup/

[root@server ~]# mkdir /backup
[root@server ~]# chown  -R  rsync.rsync  /backup/

7、關閉iptables和selinux

[root@server ~]#  /etc/init.d/iptables stop
[root@server ~]#  getenforce 
Disabled 

到此為止,server端的相關配置已經完成,接下來配置client端。

三、rsync client端部署

client端的配置要簡單的多了,首先要有rsync軟件,其次配置密碼文件rsync.password

1、檢查是否有rsync

[root@client ~]#   which rsync

/usr/bin/rsync

2、創建rsync.password 文件

[root@client ~]#  echo “123456”  >/etc/rsync.password 

[root@client ~]#  cat  /etc/rsync.password

123456

[root@client ~]#  chmod  600  /etc/rsync.password

註意:client端的rsync.password中只需要密碼就可以了

3、測試

[root@client ~]# rsync -avz [email protected]::oldboy /home/receive
Password: 
receiving incremental file list
./
1.txt
2.txt

sent 105 bytes  received 218 bytes  92.29 bytes/sec
total size is 0  speedup is 0.00

文件傳輸成功,太高興啦!

總結:

1、server端和client端都要有rsync軟件;

2、rsync命令必須要在client端執行,這一點也是剛學rsync容易忽略的地方。

rsync以守護進程的方式傳輸備份數據