Latest News

Home » 遠端連線維護系統 » 遠端備份(Linux主機伺服器架設技術)

遠端備份(Linux主機伺服器架設技術)

遠端備份(Linux主機伺服器架設技術)

rSync 是遠端備份資料的機制,而且這個機制是跨平台的,也就是不限作業系統類型。
建議的作法是,用 Linux 架一台 rSync Server ,供其他 Linux Server 或 Windows 平台備份資料。

在架設上,Linux Server 的方式最簡易,但由於其預設檔名編碼為 Big5 碼,鑑於相容,筆者建議採用 Linux 系列來架設。
但是 Linux 上沒有 Linux server 的 rysnc 快速設定工具, 所以若要把 Linux 當成 rsync server, 就得依下面步驟來處理。
rSync伺服器

* 修改 /etc/default/rsync
RSYNC_ENABLE=false → 改成RSYNC_ENABLE=true

* 到現有的 Linux server 產生伺服器設定檔 /etc/rsyncd.conf 及 /etc/rsyncd.secrets 複製到 Linux 的 /etc 底下。再依以下 rsyncd.conf 示例中所示, 必須建立 /mybk1 資料夾來放備份資料。

o rsyncd.secrets 的內容為「帳號:密碼」, 示例如下

my_backup:my_backup_passwd

o 權限改為 400
user@Linux:# sudo chmod 400 rsyncd.secrets

o rsyncd.conf 檔示例

log file = /var/log/rsyncd.log
[mybk1]
path = /mybk1
auth users = my_backup
uid = root
gid = root
secrets file = /etc/rsyncd.secrets
read only = no

[mybk2]
path = /mybk2
auth users = my_backup
uid = root
gid = root
secrets file = /etc/rsyncd.secrets
read only = no

註:[mybk1]是區段名稱, 從[mybk1]至read only = no為一區段, 而一個設定檔, 允許設定多個區段

*
o 建立 /mybk1 及 /mybk2 資料夾
user@Linux:# sudo mkdir /mybk1
user@Linux:# sudo mkdir /mybk2

rSync客戶端

* 到現有的 Linux server 產生客戶端執行檔 bk-Linux.sh 及 rsyncd.secrets 丟至 rsync 客戶端電腦上的 /root 底下, 這兩個檔案的擁有者必須為 root , 而且必須 su 至 root 權限來執行
o Client 端的 rsyncd.secrets 必須注意兩件事
1. 內容只含密碼

my_backup_passwd

2. 檔案權限必須設定為 400 (-r——–)
o Client 端的 bk-Linux.sh 內容示例如下

#! /bin/sh

/usr/bin/rsync -rvlHpogDtS –password-file=/root/rsyncd.secrets /var/www my_backup@rsync.server::mybk1

註:把 /var/www 備份至 rsync.server這台主機的 mybk1 區段

* 對 bk-Linux.sh 賦予執行權
user@Linux:# sudo chmod +x /root/bk-Linux.sh

* 執行備份動作
user@Linux:# sudo /root/bk-Linux.sh

* 設定 crontab , 定時執行 /root/bk-Linux.sh
user@Linux:# sudo crontab -e

0 3 * * * /root/bk-Linux.sh

註:每日 3 時執行 bk-Linux.sh 以備份資料

在 Windows 用 rsync 備份至 Linux 上的 rsync server

* 請參考下列網址:
http://myip.tw/itsmw/index.php/DeltaCopy

rSync還原

* 不論您的 client 端為何種 OS,一律建議使用 FileZilla,使用 SFTP 模式取回即可。請參考下面動畫示範:
http://myip.tw/Linuxdoc/LinuxBase/m6_filezilla_sftp.htm

About

發佈留言