日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

带你走进rsync的世界

發布時間:2024/4/13 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 带你走进rsync的世界 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
導讀Rsync(remote synchronize)是一個遠程數據同步工具,可通過LAN/WAN快速同步多臺主機間的文件,也可以使用 Rsync 同步本地硬盤中的不同目錄。rsync共有3種使用方法,在配置rsync也是有6個步驟的。下面我們就從rsync的介紹,rsync的使用和rsync的配置帶你走進rsync的世界
一.rsync簡介

Rsync(remote synchronize)是一個遠程數據同步工具,可通過LAN/WAN快速同步多臺主機間的文件,也可以使用 Rsync 同步本地硬盤中的不同目錄。 在使用 rsync 進行遠程同步時,可以使用兩種方式:遠程 Shell 方式(建議使用 ssh,用戶驗證由 ssh 負責)和 C/S 方式(即客戶連接遠程 rsync 服務器,用戶驗證由 rsync 服務器負責)。rsync 被稱為是一個文件同步的快速方法,主要是因為其在同步文件時會檢查文件之間是否有差異,它只同步存在差異或者不存在的文件,但是首次同步時速度依然很慢。

rsync有許多選項:-n: 在不確定命令是否能按意愿執行時,務必要事先測試;-n可以完成此功能;-v: --verbose,詳細輸出模式-q: --quiet,靜默模式-c: --checksum,開啟校驗功能,強制對文件傳輸進行校驗-r: --recursive,遞歸復制;-a: --archives,歸檔,保留文件的原有屬性-p: --perms 保留文件的權限-t: --times 保留文件的時間戳-l: --links 保留文件的符號鏈接 -g: --group 保留文件的屬組-o: --owner 保留文件的屬主-D: --devices 保留設備文件-H, --hard-links 保留硬鏈結;-S, --sparse 對稀疏文件進行特殊處理以節省DST的 空間;-e ssh: 表示使用ssh協議作承載-z: 對文件壓縮后傳輸--progress:顯示進度條--stats: 顯示如何執行壓縮和傳輸--delete:刪除那些DST中有而SRC沒有的文件,即刪除DST中多余的文件;

二,rsync使用方法

rsync可以在此處下載 http://rsync.samba.org/ ,CentOS系統上rsync默認是安裝的。

rsync有六種不同的工作模式:

1. 拷貝本地文件

當SRC和DES路徑信息都不包含有單個冒號”:”分隔符時就啟動這種工作模式。

[root@localhost ~]# rsync -avSH /home/feiyu/ /bak/ 2.將本地機器的內容拷貝到遠程機器

使用一個遠程shell程序(如rsh、ssh)來實現將本地機器的內容拷貝到遠程機器。當DST路徑地址包含單個冒號”:”分隔符時啟動該模式。

[root@localhost ~]# rsync -av /home/feiyu/ 192.168.0.24:/home/feiyu/ 3.將遠程機器的內容拷貝到本地機器

使用一個遠程shell程序(如rsh、ssh)來實現將遠程機器的內容拷貝到本地機器。當SRC地址路徑包含單個冒號”:”分隔符時啟動該模式。

[root@localhost ~]# rsync -av 192.168.0.24:/home/feiyu/ /home/feiyu/

注意:rsync命令使用中,如果源參數的末尾有斜線,就會復制指定目錄的內容,而不復制目錄本身;沒有斜線,則會復制目錄本身;目標參數末尾的斜線沒有作用;因此下面的命令

[root@localhost ~]# rsync -r /mydata/data /backups/ : 會把目錄data直接同步至/backups目錄中[root@localhost ~]# rsync -r /mydata/data/ /backups/: 會把目錄data/中的內容的同步至/backups目錄中

后面三種模式都是在rsync作為服務器時才能使用的,下面就開始配置rsync作為一個服務。

三,配置rsync服務

配置一個簡單的rsync服務并不復雜,但是我們安裝好rsync后,并沒有發現配置文件,所以你需要手動建立一些配置文件。rsync可以經由xinetd啟動daemon,或者作為一個獨立進程啟動daemon。如果把它作為一個獨立進程來啟動,只需要運行命令:rsync –daemon即可;但是我們一般將其作為超級守護進程使用。下面是安裝步驟:

1.安裝并啟動xinetd [root@localhost ~]# yum -y install xinetd [root@localhost ~]# ls /etc/xinetd.d/ #rsync的xinetd配置文件已經存在 chargen-dgram daytime-dgram discard-dgram echo-dgram rsync time-dgram chargen-stream daytime-stream discard-stream echo-stream tcpmux-server time-stream 2. 為rsync服務提供配置文件

配置文件為/etc/rsyncd.conf,獲取幫助的方式:man rsyncd.conf。配置文件需要定義一個全局配置和多個rsync共享配置。

[root@localhost ~]# cat /etc/rsyncd.conf # Global Settings # port = 873 端口號默認為873,可以不指定 uid = nobody //指定當模塊傳輸文件的守護進程UID gid = nobody //指定當模塊傳輸文件的守護進程GID use chroot = no //使用chroot到文件系統中的目錄中 max connections = 5 //最大并發連接數 strict modes = yes #嚴格檢查文件權限 pid file = /var/run/rsyncd.pid //指定PID文件 lock file = /usr/local/rsyncd/rsyncd.lock //指定支持max connection的鎖文件,默認為/var/run/rsyncd.lock log file = /var/log/rsyncd.log //rsync 服務器的日志# Directory to be synced [mydata] //自定義模塊 path = /mydata/data //用來指定要備份的目錄 ignore errors = yes //可以忽略一些IO錯誤 read only = no //設置no,客戶端可以上傳文件,yes是只讀 write only = no //no為客戶端可以下載,yes 不能下載 hosts allow = 192.168.0.0/16 //可以連接的IP hosts deny = * //禁止連接的IP list = false //客戶請求時,使用模塊列表 uid = root gid = root auth users = myuser //連接用戶名,和linux系統用戶名無關系 secrets file = /etc/rsyncd.passwd //驗證密碼文件

說明(deny | allow 規則):
1、二者都不出現時,默認為允許訪問;
2、只出現hosts allow: 定義白名單;但沒有被匹配到的主機由默認規則處理,即為允許;
3、只出現hosts deny: 定義黑名單;出現在名單中的都被拒絕;
4、二者同時出現:先檢查hosts allow,如果匹配就allow,否則,檢查hosts deny,如果匹配則拒絕;如二者均無匹配,則由默認規則處理,即為允許;

3.創建密碼文件

文件格式(明文): username : password

[root@localhost ~]# echo "myuser:mypass" > /etc/rsyncd.passwd [root@localhost ~]# chmod 600 /etc/rsyncd.passwd #權限必須為600

?

4.啟動服務 [root@localhost ~]# service xinetd start 5.使用方法 ( 后三種模式 )

a. 從遠程rsync服務器中拷貝文件到本地機。當SRC路徑信息包含”::”分隔符時啟動該模式。

[root@localhost ~]# rsync -av myuser@192.168.0.23::mydata /tmp/ #myuser為rsync服務器的一個用戶

b. 從本地機器拷貝文件到遠程rsync服務器中。當DST路徑信息包含”::”分隔符時啟動該模式。

[root@localhost ~]# rsync -av install.log.syslog myuser@192.168.0.23::mydata

c. 列遠程機的文件列表。這類似于rsync傳輸,不過只要在命令中省略掉本地機信息即可。

[root@localhost ~]# rsync -av myuser@192.168.0.23::mydata

總結

以上是生活随笔為你收集整理的带你走进rsync的世界的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。