rsync備份套件
rsync Server端設定
安裝rsync
% cd /usr/ports/net/rsync //切換至安裝目錄
% make install clean //安裝並清除過程中不必要的檔案
設定conf檔
% nano /usr/local/etc/rsync/rsyncd.conf
新增以下備份模組
[web] #模組名稱
comment = backup web Data #註解
path = /home/backup #備份路徑
auth users = <USER_name> #認證帳號(之後要設定於rsyncd.secrets的帳號)
uid = root #以uid來啟動rsync server(備份目錄的擁有者要設定為root)
gid = wheel #以gid來啟動rsync server(備份目錄的群組要設定為wheel)
secrets file = /usr/local/etc/rsyncd.secrets #密碼檔所在位置
read only = no #是否只允許讀取
編輯密碼檔
% nano /usr/local/etc/rsyncd.secrets
<USER_name>:<PASSWD>
bob:1234
tom:5678
修改密碼檔權限,讓別人無法修改
% chmod 600 /usr/local/etc/rsyncd.secrets
讓rsync開機後自動執行
% nano /etc/rc.conf
rsyncd_enable="YES" #新增此行
啟動rsync
% service rsyncd start
檢查rsync是否正常執行
% sockstat |grep rsync
root rsync 97328 4 tcp4 *:873 *:* # 出現使行代表正常執行
rsync Client端設定
安裝rsync
% cd /usr/ports/net/rsync
% make install clean
備份
上傳Push (由Client端上傳資料至Server端)
語法:% rsync [OPTION...] SRC... [USER@]HOST::DEST
- OPTION:為參數
- SRC:來源位置(Client端的資料路徑)
- DEST:目的位置(Server端的備份模組,須與Server的備份模組名稱相同)
範例:
% rsync -az /usr/home/webbackup user@host::web
- 將webbackup資料夾上傳至Server的web模組位置
- 參數a:上傳archive (包括資料夾、檔案)
- 參數z:上傳壓縮檔
下載Pull (由Server端下載資料至Client端)
語法:% rsync [OPTION...] [USER@]HOST::SRC... [DEST]
- OPTION:為參數
- SRC:來源位置(Server端的備份模組,須與Server的備份模組名稱相同)
- DEST:目的位置(Client端的資料路徑,)
範例:
% rsync -az user@host::web /usr/home/webbackup
- 將Server的web模組位置下載至webbackup資料夾
- 參數a:下載archive (包括資料夾、檔案)
- 參數z:下載壓縮檔
建立密碼檔
- 以上簡易傳輸,每次皆需要手動輸入密碼
- 可設定密碼檔,讓系統自行讀取。
% nano /usr/local/etc/rsyncd.secrets password //自行設定密碼
上傳指令:
% rsync -az --password-file=/usr/local/etc/rsyncd.secrets /usr/home/webbackup user@host::web
下唄指令:
% rsync -az --password-file=/usr/local/etc/rsyncd.secrets user@host::web /usr/home/webbackup