於 Rsync 分類下的文章
xinetd.conf可以說是預設值的設定檔。假設這邊啟動了rsync服務,但是在rsync此服務並沒有特別去設定參數,因此在設定值部份就會以xinetd.conf為主。
以下是預設定xinetd.conf
[root@localhost ~]# vim /etc/xinetd.conf defaults { # The next two items are intended to be a quick access place to # temporarily enable or disable services. # enabled = #啟用 # disabled = #禁用 # Define general logging characteristics. log_type = SYSLOG daemon info #登錄檔的記錄服務類型 log_on_failure = HOST #發生錯誤時需要記錄的資訊為主機 (HOST) log_on_success = PID HOST DURATION EXIT #成功啟動或登入時的記錄資訊 # Define access restriction defaults # no_access = # only_from = # max_load = 0 cps = 50 10 #同一秒內最大連線數為 50 個,超過則暫停 10 秒 instances = 50 #同一服務的最大同時連線數 per_source = 10 # 同一來源的用戶端的最大連線數 # Address and networking defaults # bind = # mdns = yes v6only = no #是否僅允許 IPv6 # setup environmental attributes # passenv = groups = yes umask = 002 # Generally, banners are not used. This sets up their global defaults # banner = # banner_fail = # banner_success = } includedir /etc/xinetd.d #在/etc/xinetd.d會有更多的設定值 |
以上的設定檔內容大概是說明:「同一個服務的最大連線數為50,而每秒內發起的「新」連線最多50個,若超過的話服務則會停止10秒,而在相同IP同時連線的情況下最多只有10個連線數。而在成功登入和登入失敗情況下所記錄的資訊會有所不同。並且不允許IPv6的連線。」
參數說明 :
-h --help show this help (-h works with no other options) -v, --verbose 列出rsync過程 詳細內容 -q, --quiet 不列出rsync過程 詳細內容 -c, --checksum skip based on checksum, not mod-time & size -a, --archive archive mode 權限保存模式,相當於-rlptgoD 參數(no -H) --no-OPTION turn off an implied OPTION (e.g. --no-D) -r, --recursive 複製所有下層的資料(遞迴) -R, --relative 使用相對路徑 --no-implied-dirs don't send implied dirs with --relative
-b, --backup 目的端已經存在的檔案在傳輸或刪除前會被備份 (see --suffix & --backup-dir) --backup-dir=DIR DIR設定為備份的資料夾路徑 --suffix=SUFFIX suffix設定備份檔案名稱字尾,預設為 ~
-u, --update skip files that are newer on the receiver --inplace update destination files in-place (SEE MAN PAGE) --append append data onto shorter files -d, --dirs transfer directories without recursing -l, --links 複製所有的連結 -L, --copy-links transform symlink into referent file/dir --copy-unsafe-links only "unsafe" symlinks are transformed --safe-links ignore symlinks that point outside the source tree -k, --copy-dirlinks transform symlink to a dir into referent dir -K, --keep-dirlinks 把連結到資料夾的檔案當成資料夾處理 -H, --hard-links 保留硬式連結 -p, --perms 保留檔案權限 -E, --executability 保留文件的可執行性 -A, --acls 保留 ACLs (implies --perms) -X, --xattrs preserve extended attributes (implies --perms) --chmod=CHMOD 改變目的地的權限 -o, --owner 保留檔按擁有者 (super-user only) -g, --group 保留檔按群組 --devices preserve device files (super-user only) --specials preserve special files -D 保留device資訊 -t, --times 保留時間點 -O, --omit-dir-times 保留時間點 省略目錄 --super receiver attempts super-user activities -S, --sparse 嘗試處理零星檔案,讓這些檔案在目的端佔去較少磁碟空間 -n, --dry-run 不實際執行傳送,只顯示將會有的傳輸動作 -W, --whole-file 複製整個文件 (without rsync algorithm) -x, --one-file-system 不要跨越檔案系統分界(只在一個檔案系統處理) -B, --block-size=SIZE 強制透過rsync程式去比對修復block-sizeforce -e, --rsh=COMMAND 使用指定的 shell --rsync-path=PROGRAM 定義rsync在遠端機器存放資料的路徑 --existing 只比對更新目的端已經存在的檔案 --ignore-existing 忽略目的端已經存在的檔案(也就是不更新) --remove-sent-files sent files/symlinks are removed from sending side --del an alias for --delete-during |
一、 Rsync介紹
rsync是Unix下的一款應用軟體,它能同步更新兩處電腦的檔案與目錄,並適當利用差分編碼以減少資料傳輸。rsync中一項與其他大部份類似程式或協定中所未見的重要特性是映像對每個目標只需要一次傳送。rsync可複製/顯示目錄內容,以及複製檔案,並可選擇性的壓縮以及遞歸複製。在常駐模式(daemon mode)下,rsync預設監聽TCP埠873,以原生rsync傳輸協定或者透過遠端shell如RSH或者SSH伺服檔案。SSH情況下,rsync用戶端執行程式必須同時在本機和遠端機器上安裝。rsync是自由軟體,以GNU通用公共許可證發行。
Rsync在備份的部份
主要是傳送資料差異的部份,因此大多都被使用在差異備份上。除了資料第一次傳輸是整份檔案外,之後都只會傳送資料間異動的部份。
備份相關名詞 :
鏡像備份(mirror backup) : 如同鏡子一般,把資料完整的做一份備份。
增量備份(incremental backup) : 只備份從上次備份後,資料有異動的部份。
二、 Rsync設定
這次在rsync設定部份,直接使用範例的方式會比較快了解。
範例 :
把A主機的網頁資料( /var/www/html ),定期備份到B主機的( /home/backup/)
A主機( Server端 ) IP :192.168.1.222
B主機( Clinet端 ) IP :192.168.1.122
在開始設定之前,有兩個檔案要說明一下:
/etc/rsyncd.conf 為rsync設定檔
/etc/rsyncd.secrets 為rsync 密碼檔
1.1 在B主機上查詢是否有安裝rsync
[root@localhost ~]# rpm -qa | grep 'rsync' rsync-2.6.8-3.1 |
如果沒有安裝的話 請自行補上
[root@localhost ~]# yum -y install rsync |
近期迴響