linux下rsync安裝與配置

rsync    (同步數據,支持增量備份)

使用方法:

rsync -av 192.168.31.182:/tmp/1.txt /tmp/    (將服務器192.168.31.182中tmp文件夾下的1.txt文件拷貝到本機的tmp目錄下)

rsync -av /tmp/1.txt 192.168.31.182:/tmp/    (將本機的tmp目錄下的1.txt文件拷貝到服務器192.168.31.182中tmp文件夾下)

rsync -av 192.168.31.182::longfei/123/1.txt /tmp/    (demo從服務器複製到本地)

rsync -av /tmp/1.txt 192.168.31.182::longfei/123/    (demo從本地複製到服務器)

選項:

-a == -rlptgoD

-v == 可視化

--delete == a-->b刪除同步過程中a沒有b有的文件

--exclude=PATTERN == 同步過程中不同步某些文件夾

-P == 能夠查看同步進度,類似於-v

-u == a-->b避免覆蓋b機器上已經修改過的文件內容

-avL    (可以將有軟鏈接的文件直接同步拷貝)


rsync -av 111/ /tmp/123/    (將111目錄下的文件拷貝到/tmp/123/下)

rsync -avL 111/ /tmp/123/    (將有軟鏈接的文件的鏈接的文件直接覆蓋拷貝到/tmp/123/下對應的文件)

rsync -avL --delete 111/ /tmp/123/    (將有軟鏈接的文件的鏈接的文件直接覆蓋拷貝到/tmp/123/下對應的文件,且將原文件夾內刪除的文件,在目標文件夾內也刪除)

rsync -avLu 111/ /tmp/123/    (將有軟鏈接的文件的鏈接的文件直接覆蓋拷貝到/tmp/123/下對應的文件,且不會將目標文件夾內已經修改的文件覆蓋)

rsync -avLu --exclude="*.txt" 111/ /tmp/123/    (將有軟鏈接的文件的鏈接的文件直接覆蓋拷貝到/tmp/123/下對應的文件,且不會將目標文件夾內已經修改的文件覆蓋,但是不拷貝原文件夾內的所有.txt結尾的文件)

rsync -avLuPz --exclude="*.txt" 111/ /tmp/123/    (將有軟鏈接的文件的鏈接的文件直接覆蓋拷貝到/tmp/123/下對應的文件,且不會將目標文件夾內已經修改的文件覆蓋,但是不拷貝原文件夾內的所有.txt結尾的文件,並顯示當前拷貝進度,並將拷貝內容壓縮後傳輸)

rsync -avPz -e "ssh -p 10022" 192.168.31.182/tmp/111/ ./111/    (指定端口進行拷貝傳輸)

rsync -avL --delete --exclude [email protected]::mokuaiming/test ./ --password-file=/home/admin/rsyncd.passwd    (rsync參考詞條,較全)


rsync後臺服務方式

配置文件:

/etc/rsyncd.conf    (配置文件,可自定義,現在爲自動加載)


配置文件內容:

    prot=8730

    log file=/var/log/rsync.log

    pid file=/var/run/rsync.pid


    [mokuaiming]

    path=/tmp/rsync    #目錄要真實存在

    use chroot=yes    #是否把登錄用戶限定在當前目錄下,對軟鏈接有限制,如果有軟鏈接文件,需要改爲no

    max connections=4

    read only=no    #登錄到該目錄下,且限定目錄文件是否只讀,如果需要將服務器文件下載下來,需要改爲no

    list=yes    #能否使用rsync --prot 8730 192.168.31.182 命令把模塊名字列出

    uid=root

    gid=root

    auth users=sponge

    secret file=/etc/rs.passwd    #密碼權限需要可讀

    hosts allow=192.168.31.182 192.168.31.18    #允許哪些ip能夠連接

    

    [mokuaiming2]    #不需要用戶認證都可以拷貝,且任何機器都能連接

    path=/tmp/rsync123    #目錄要真實存在

    use chroot=yes    #是否把登錄用戶限定在目錄下

    max connections=4

    read only=no    #登錄到該目錄下,且只讀

    list=yes    #是否把模塊名字列出

    uid=root

    gid=root


rsync --demon    (啓動rsync的demon進程,更改配置文件後不需要重啓進程,直接生效)

rsync -avPz --prot 8730 192.168.31.182::mokuaiming/tmp/rsync/1.txt ./    (同步文件格式)

rsync -avPz --prot 8730 [email protected]::mokuaiming2/tmp/rsync123/1.txt ./    (同步文件格式)

rsync -avPz --prot 8730 --password-file=/tmp/rsync.passwd.txt  [email protected]::mokuaiming2/tmp/rsync123/1.txt ./    (不需要輸入密碼,直接能夠進行傳輸,但是密碼文件中需要寫入密碼,且一個文件只能存一個密碼)


diff    (對比兩個文件的差異)

使用方法:

diff /tmp/1.txt /etc/init.d    (對比兩個文件異同)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章