Linux 要作異地備份最簡單的方式就是使用 rsync 這個工具,簡單的介紹它的優缺點及使用方式:
優點:
缺點:
其他的解決方案:
主機端:儲存備份資料的目的主機 (需要啟動 rsync 服務)
用戶端:原始資料的來源主機
備份流程為 用戶端 -> 主機端
主機端及用戶端都需要安裝 rsync 套件,在 CentOS 直接使用 yum install rsync。
新增設定檔 /etc/rsyncd.conf
[backup_1] path = /backup/directory/path/1 auth users = user1 uid = root gid = root secrets file = /etc/rsyncd.secrets read only = no [backup_2] path = /backup/directory/path/2 auth users = user2 uid = root gid = root secrets file = /etc/rsyncd.secrets read only = no
*[backup_1].[backup_2] 自行修改正確值
*path 自行修改正確值
*auth users 自行修改正確值
新增密碼檔 /etc/rsyncd.secrets
user1:pass1 user2:pass2
*帳號:密碼 自行修改正確值
#chmod 600 /etc/rsyncd.secrets
開機時自動起動
#chkconfig rsync on
#service xinetd restart
TPs:
RSYNC 服務預設使用 port 873 (TCP),Rsync Server 端必須開啟
用戶端不需要啟動 rsyncd daemon,只需要用到 rsync 指令。
對應主機端的設定,新增密碼檔 /root/rsync-client.secrets,用戶端的密碼檔只需要輸入密碼,不用帳號。
pass1
#chmod 600 /root/rsync-client.secrets
執行下述指令可以開始作備份
#rsync -av --delete --password-file=/root/rsync-client.secrets /source/dir/path user1@主機端位址::backup_1
user1 對應主機端設定
backup_1 對應主機端設定
A:在傳送端執行
# rsync -a source username@remote_host:/path/to/destination 或 # rsync -a -e ssh source/ username@remote_host:/path/to/destination # rsync -av --delete -e ssh <source_dir/> username@remote_host:/path/to/destination
以上就可以完成異地檔案同步,不過執行時會提示輸入SSH 密碼,這要讓它自動化,造成困擾,要避免密碼提示有兩種方式
Images 0 | ||
---|---|---|
No images to display in the gallery. |