rsync備份工具
阿新 • • 發佈:2019-03-17
rsync教程
[root@wangzb01 ~]# yum install -y rsync //安裝軟體包,同步的機器和被同步的機器都需要安裝 rsync -av /etc/passwd /tmp/1.txt rsync -av /tmp/1.txt 192.168.188.128:/tmp/2.txt rsync格式 rsync [OPTION] … SRC DEST rsync [OPTION] … SRC [user@]host:DEST rsync [OPTION] … [user@]host:SRC DEST rsync [OPTION] … SRC [user@]host::DEST rsync [OPTION] … [user@]host::SRC DEST rsync常用選項 -a 包含-rtplgoD -r 同步目錄時要加上,類似cp時的-r選項 -v 同步時顯示一些資訊,讓我們知道同步的過程 -l 保留軟連線 -L 加上該選項後,同步軟連結時會把原始檔給同步 -p 保持檔案的許可權屬性 -o 保持檔案的屬主 -g 保持檔案的屬組 -D 保持裝置檔案資訊 -t 保持檔案的時間屬性 --delete 刪除DEST中SRC沒有的檔案 --exclude 過濾指定檔案,如--exclude “logs”會把檔名包含logs的檔案或者目錄過濾掉,不同步 -P 顯示同步過程,比如速率,比-v更加詳細 -u 加上該選項後,如果DEST中的檔案比SRC新,則不同步 -z 傳輸時壓縮 rsync通過ssh方式同步 rsync -av test1/ 192.168.133.132:/tmp/test2/ rsync -av -e "ssh -p 22" test1/ 192.168.133.132:/tmp/test2/ rsync 通過服務的方式同步 要編輯配置檔案/etc/rsyncd.conf 啟動服務rsync --daemon 格式:rsync -av test1/ 192.168.133.130::module/dir/ rsyncd.conf樣例 port=873 log file=/var/log/rsync.log pid file=/var/run/rsyncd.pid address=192.168.133.130 [test] path=/root/rsync use chroot=true max connections=4 read only=no list=true uid=root gid=root auth users=test secrets file=/etc/rsyncd.passwd hosts allow=192.168.133.132 1.1.1.1 2.2.2.2 192.168.133.0/24 rsyncd.conf配置檔案詳解 port:指定在哪個埠啟動rsyncd服務,預設是873埠。 log file:指定日誌檔案。 pid file:指定pid檔案,這個檔案的作用涉及服務的啟動、停止等程序管理操作。 address:指定啟動rsyncd服務的IP。假如你的機器有多個IP,就可以指定由其中一個啟動rsyncd服務, 如果不指定該引數,預設是在全部IP上啟動。 []:指定模組名,裡面內容自定義。 path:指定資料存放的路徑。 use chroot true|false:表示在傳輸檔案前首先chroot到path引數所指定的目錄下。這樣做的原因是實現額外的安全防護, 但缺點是需要以roots許可權,並且不能備份指向外部的符號連線所指向的目錄檔案。預設情況下chroot值為true, 如果你的資料當中有軟連線檔案,阿銘建議你設定成false。 max connections:指定最大的連線數,預設是0,即沒有限制。 read only ture|false:如果為true,則不能上傳到該模組指定的路徑下。 list:表示當用戶查詢該伺服器上的可用模組時,該模組是否被列出,設定為true則列出,false則隱藏。 uid/gid:指定傳輸檔案時以哪個使用者/組的身份傳輸。 auth users:指定傳輸時要使用的使用者名稱。 secrets file:指定密碼檔案,該引數連同上面的引數如果不指定,則不使用密碼驗證。 注意該密碼檔案的許可權一定要是600。 格式:使用者名稱:密碼 hosts allow:表示被允許連線該模組的主機,可以是IP或者網段,如果是多個,中間用空格隔開。 當設定了auth users和secrets file後,客戶端連服務端也需要用使用者名稱密碼了, 若想在命令列中帶上密碼,可以設定一個密碼檔案 rsync -avL [email protected]::test/test1/ /tmp/test8/ --password-file=/etc/pass 其中/etc/pass內容就是一個密碼,許可權要改為600
補充
stat命令檢視一個檔案的三個時間
atime 表示檔案最近一次被訪問的時間
mtime表示檔案內容最近一次被修改的時間
ctime表示檔案屬性資訊最忌那一次被改動的時間(inode儲存的資訊,檔案所屬組,屬主,檔案大小