rsync 搭建 (配置安裝)

一、什麼是rsync?
rsync是linux系統下的數據鏡像備份工具。使用快速增量備份工具Remote Sync可以遠程同步,支持本地複製,或者與其他SSH、rsync主機同步。不但可以同步文件, 還可以對系統有一個操作的能力.
外文名
rsync
全 稱
remote sync
定 義
linux系統下的數據鏡像備份工具
優 點
遠程同步和支持本地複製

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

三、原理

Rsync本來是用於替代rcp的一個工具,目前由rsync.samba.org維護,所以rsync.conf文件的格式類似於samba的主配 置文件;Rsync可以通過rsh或ssh使用,也能以daemon模式去運行

在以daemon方式運行時Rsync server會打開一個873 端口,等待客戶端去連接。連接時,Rsync server會檢查口令是否相符,若通過口令查覈,則可以開始進行文件傳輸。第一次連通完成時,會把整份文件傳輸一次,以後則就只需進行增量備份

四、兩種工作模式 推和拉

rsync -avz /home/work ip:/home #推
rsync -avz ip:/home/work /home #拉

五、rsync 命令常用參數選項說明

-v, --verbose 詳細模式輸出,傳輸時的進度等信息
-z, --compress 傳輸時進行壓縮以提高傳輸效率,–compress-level=NUM可按級別壓縮 。
-a, --archive 歸檔模式,表示以遞歸方式傳輸文件,並保持所有文件屬性,等於-rtopgDl(字母l)
!!!###注意:複製文件到 /tmp目錄的時候, 會把/tmp目錄的權限改了
rsync -avz /etc/hosts 172.16.1.31:/tmp
-r, --recursive 對子目錄以遞歸模式,即目錄下的所有目錄都同樣傳輸,注意是小寫r
-t, --times 保持文件時間信息
-o, --owner 保持文件屬主信息
-p, --perms 保持文件權限
-g, --group 保持文件屬組信息
-D, --devices 保持設備文件信息
-l, --links 保留軟鏈
-P --progress 顯示同步的過程及傳輸時的進度等信息
-e, --rsh=COMMAND 使用的信道協議(remote shell),指定替代rsh的shell程序。例如:ssh
–exclude=PATTERN 指定排除不需要傳輸的文件模式(和tar參數一樣)
–exclude-from=file(文件名所在的目錄文件) (和tar參數一樣)
–bwlimit=RATE limit socket I/O bandwidth 傳輸的時候限速

六、搭建 (配置安裝)
一).主機服務

  1. rpm -qa | grep rsync #查看軟件是否安裝
    在這裏插入圖片描述

  2. rsync --version #查看版本信息
    在這裏插入圖片描述

  3. 配置rsync軟件的配置文件

    cat >>/etc/rsyncd.conf<<EOF
    #rsync_config
    #created by HQ at 2017
    ##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 deny = 0.0.0.0/32
    auth users = rsync_backup
    secrets file = /etc/rsync.password
    [backup]
    comment = “backup dir by oldboy”
    path = /backup
    EOF
    ————————————————
    ################配置文件註釋#####################################
    #rsync_config
    #created by oldboy 15:00 2016-11-15
    ##rsyncd.conf start##
    uid = rsync # 用戶 遠端的命令使用rsync訪問共享目錄
    gid = rsync # 用戶組
    use chroot = no # 安全相關
    max connections = 200 # 最大連接數
    timeout = 300 # 超時時間
    pid file = /var/run/rsyncd.pid # 進程對應的進程號文件
    lock file = /var/run/rsyncd.lock # 鎖文件
    log file = /var/log/rsyncd.log # 日誌文件
    ignore errors # 忽略錯誤
    read only = false # 可寫
    list = false # 不能列表
    hosts allow = 172.16.1.0/24 # 允許連接的服務器
    hosts deny = 0.0.0.0/32 # 後勤組連接的服務器
    auth users = rsync_backup # 虛擬用戶
    secrets file = /etc/rsync.password # 虛擬用戶對應的用戶和密碼文件

[backup] # 模塊名稱
path = /backup # 服務端提供訪問的目錄
————————————————
4. mkdir -p backup #創建目錄
在這裏插入圖片描述
5 useradd rsync -s /sbin/nologin -M #創建rsync備份目錄的管理用戶與用戶組
在這裏插入圖片描述
6. chown -R rsync.rsync backup/ #授權
在這裏插入圖片描述
在這裏插入圖片描述
7. 創建服務端和客戶端的身份認證文件
echo “rsync_backup:oldboy123” >/etc/rsync.password
chmod 600 /etc/rsync.password #配置文件權限只允許 root 用戶查看
cat /etc/rsync.password
在這裏插入圖片描述
8. rsync --daemon #啓動服務
9.查看端口netstat -lntup |grep rsync #rsync 端口是 873 端口
在這裏插入圖片描述
二).客戶端配置

1.rpm -qa | grep rsync #查看軟件是否安裝,如已安裝則無需在進行安裝
在這裏插入圖片描述
2.echo “oldboy123” >/etc/rsync.password #創建認證
在這裏插入圖片描述
3.cat /etc/rsync.password 查看密碼
在這裏插入圖片描述
4 rsync --daemon #啓動服務
在這裏插入圖片描述
5 netstat -lntup |grep rsync #查看是否監聽端口
在這裏插入圖片描述
6. rsync -av /etc/hosts 192.168.110.104:/mnt/ 輸入IP:192.168.110.104 的root密碼即可登錄成功。

在這裏插入圖片描述

驗證 ls 查看信息是否由IP:192,168.110.215同步到IP:192.168.110.104
在這裏插入圖片描述

發佈了10 篇原創文章 · 獲贊 3 · 訪問量 489
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章