利用 rsync 同步檔案

rsync 是什麼?

  • 同步更新兩處電腦的檔案與目錄
  • 使用 zlib 演算法,傳輸資料量小
  • 可以透過本機/NAS/SSH/Daemon同步

rsync 可以幹嘛?

  • 差異備份
  • 同步資料
  • mirroring
  • 增量備份

rsync installation

cd /usr/ports/net/rsync && make install

設定檔:/usr/local/etc/rsyncd.conf

rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
rsync [OPTION]... SRC [SRC]... rsync://[USER@]HOST[:PORT]/DEST

rsync uses TCP port 873.

Options

-r: recursive
-p: perms
-t: times
-g -o: group/owner
–delete: 刪除遠端主機上不存在於本機的檔案

-a: archive (includes: -rlptgoD)
-u: update 跳過新版檔案

實戰定時異地備援

  • 所有電腦都要安裝 rsync
  • 備份主機要啟動 rsync daemon
  • Side Quest: 設定防火牆

 rsyncd.conf

[test]
comment = backup test
path = /home/sntc06/rsync
auth users = sntc06
uid = sntc06
gid = sntc06
secrets file = /etc/rsyncd.secrets
read only = no

kerker

rsyncd.secrets

內容格式:帳號:密碼 (ex. sntc06:rsyncpassword)

chown root:root rsyncd.secrets
chmod 600 rsyncd.secret

客戶端的設定

rsyncd.secrets:密碼

chmod 600 rsyncd.secrets

同步囉!

rsync -av --password-file=/path/to/password /path/to/folder/ sntc06@localhost.org::test1

Optional: -u (update)
Optional: –delete

利用 rsync 同步檔案

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料