rsync的安裝配置

簡介linux

rsync(remote sync)是類unix系統下的數據鏡像備份工具。它的特性以下:vim

  1. 能夠鏡像保存整個目錄樹和文件系統。
  2. 能夠很容易作到保持原來文件的權限、時間、軟硬連接等等。
  3. 無須特殊權限便可安裝。
  4. 快速:第一次同步時 rsync 會複製所有內容,但在下一次只傳輸修改過的文件。rsync 在傳輸數據的過程當中能夠實行壓縮及解壓縮操做,所以可使用更少的帶寬。
  5. 安全:可使用scp、ssh等方式來傳輸文件,固然也能夠經過直接的socket鏈接。
  6. 支持匿名傳輸,以方便進行網站鏡象。

安裝安全

在RedHat中,rsync是默認安裝的。可經過命令行檢查是否安裝bash

[root@linuxprobe ~]# rpm -q rsync
rsync-3.0.4-2.47.28

配置rsync server服務器

1.  修改rsync的配置文件,將disable從"yes"改爲"no"ssh

[root@linuxprobe ~]# vi /etc/xinetd.d/rsync
service rsync
{
        disable = no
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}

設置開機啓動RSYNCsocket

[root@linuxprobe ~]# chkconfig rsync on

2.  配置/etc/rsyncd.conf(須要手動生成)tcp

全局參數工具

uid = root           //運行RSYNC守護進程的用戶
gid = root                //運行RSYNC守護進程的組
use chroot = no           //不使用chroot
max connections = 4       // 最大鏈接數爲4
strict modes =yes         //是否檢查口令文件的權限
port = 873                //默認端口873

模塊參數網站

[backup]       //這裏是認證的模塊名,在client端須要指定
path = /home/backup/     //須要作鏡像的目錄,不可缺乏!
comment = This is a test      //這個模塊的註釋信息
ignore errors        //能夠忽略一些無關的IO錯誤
read only = yes       // 只讀
list = no        //不容許列文件
auth users = linuxprobe        //認證的用戶名,若是沒有這行則代表是匿名,此用戶與系統無關
secrets file = /etc/rsync.pas        //密碼和用戶名對比表,密碼文件本身生成
hosts allow = 192.168.1.1,10.10.10.10        //容許主機
hosts deny = 0.0.0.0/0       //禁止主機
#transfer logging = yes
註釋:下面這些文件是安裝完RSYNC服務後自動生成的文件
pid file = /var/run/rsyncd.pid     //pid文件的存放位置
lock file = /var/run/rsync.lock    //鎖文件的存放位置
log file = /var/log/rsyncd.log     //日誌記錄文件的存放位置

3.  配置rsync密碼

(1) 建立密碼文件(文件即上述配置文件中的secrets file = /etc/rsync.pas)

[root@linuxprobe ~]# vim /etc/rsync.pas
linuxprobe:password  //帳號:密碼,一行一個用戶

(2) 修改密碼文件的權限爲600

[root@linuxprobe ~]# chown root.root /etc/rsync.pas 
[root@linuxprobe ~]# chmod 600 /etc/rsync.pas

4.  設置歡迎信息/etc/rsyncd.motd(無關緊要)
rsyncd.motd記錄了rsync服務的歡迎信息,你能夠在其中輸入任何文本信息,如:

[root@linuxprobe ~]# vim /etc/rsyncd.motd
Welcome to use the rsync services!

5.  生效配置

[root@linuxprobe ~]# service xinetd restart

啓動rsync server

1. RSYNC服務端啓動的兩種方法
(1) 啓動rsync服務端(獨立啓動)

[root@linuxprobe ~]#/usr/bin/rsync –daemon

(2) 啓動rsync服務端 (有xinetd超級進程啓動)

[root@linuxprobe ~]# /etc/rc.d/init.d/xinetd reload

2. 加入rc.local

在各類操做系統中,rc文件存放位置不盡相同,能夠修改使系統啓動時把rsync --daemon加載進去。

[root@linuxprobe ~]# vim /etc/rc.local
加入一行/usr/bin/rsync --daemon

3. 檢查rsync是否啓動

若輸出顯示state爲LISTEN,表示爲等待接受連接的狀態,說明rsync已經啓動。

[root@linuxprobe ~]# netstat -a | grep rsync
   tcp        0      0 0.0.0.0:873                 0.0.0.0:*                   LISTEN

配置rsync client

1. 設定密碼

[root@linuxprobe ~]# vim /etc/rsync.pas password

修改權限

[root@linuxprobe ~]# chown root.root /etc/rsync.pas
[root@linuxprobe ~]# chmod 600 /etc/rsync.pas

2. client鏈接SERVER

從SERVER端取文件

/usr/bin/rsync -vzrtopg --progress --delete linuxprobe@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas

向SERVER端上傳文件

/usr/bin/rsync -vzrtopg --progress --password-file=/root/rsync.pas  /home/backup linuxprobe@192.168.0.217::backup

這個命令將把本地機器/home/backup目錄下的全部文件(含子目錄)所有備份到RSYNC SERVER(172.20.0.6)的backup模塊的設定的備份目錄下。
請注意若是路徑結束後面帶有"/",表示備份該目錄下的東東,但不會建立該目錄,如不帶"/"則建立該目錄。

RSYNC用法:

rsync [OPTION]... [USER@]HOST::SRC  [DEST]              #從RSYNC SERVER備份文件到本地機器
rsync [OPTION]... SRC [SRC]...      [USER@]HOST::DEST   #從本地機器備份文件到RSYNC SERVER

3. 自動運行

1) 製做腳本文件

[root@linuxprobe ~]# vim /usr/local/rsync/time.sh
[root@linuxprobe ~]# !/bin/bash
/usr/bin/rsync -vzrtopg --progress --delete linuxprobe@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas

2) 編輯crontab

[root@linuxprobe ~]# crontab -e
55 * * * * /usr/local/rsync/time.sh //每55分運行一次time.sh腳本文件

防火牆設置

若是服務器上裝有防火牆,需在服務器中設置iptables將837端口開放。

[root@linuxprobe ~]# iptables -A INPUT -p tcp --dport 873 -j ACCEPT

免費提供最新Linux技術教程書籍,爲開源技術愛好者努力作得更多更好:http://www.linuxprobe.com/

相關文章
相關標籤/搜索