相關參考
http://phorum.study-area.org/viewtopic.php?t=15553
http://rsync.samba.org/examples.html
文章轉自:http://freesf.tw/modules/newbb/viewtopic.php?topic_id=533&forum=15
sakana:
rsync 異地備援 心得筆記
主機的備分問題一直是粉多人的煩惱之一http://phorum.study-area.org/viewtopic.php?t=15553
http://rsync.samba.org/examples.html
文章轉自:http://freesf.tw/modules/newbb/viewtopic.php?topic_id=533&forum=15
sakana:
rsync 異地備援 心得筆記
在這裡使用 rsync 這個套件 來作兩台電腦的資料備份
環境說明
server (需要備份的主機.目前運作中的機器) :
O/S:Redhat 9.0
ip : 192.168.0.2
user : root
欲備份目錄 : /test (實驗用.預設沒有此目錄請自行建立)
client (遠端存放備份的機器.不提供服務只備份資料) :
O/S:Redhat 9.0
ip : 192.168.0.253
user : root
存放資料目錄 : /test (實驗用.預設沒有此目錄請自行建立)
分兩個部分來做
server 部分:
1.首先檢查有沒有rsync 套件 (Redhat 預設都會裝)
#rpm -q rsync
rsync-2.5.5-4
2.開啟rsync的服務並檢查狀態
#chkconfig rsync on
#chkconfig rsync --list
rsync 開啟
client 部分:
為了使用SSH加密傳輸且不需要輸入密碼
1.#cd /root/.ssh (進入到/root/.ssh/ 目錄下)
2.#ssh-keygen -d (產生ssh的公鑰和私鑰)
Generating public/private dsa key pair.
Enter file in which to save the key (/root/.ssh/id_dsa): (產生到何處.按Enter 就可以了)
Enter passphrase (empty for no passphrase): (要不要設定passwd.避免問我們按Enter 就可以了)
Enter same passphrase again: (再按一次Enter)
Your identification has been saved in /root/.ssh/id_dsa.
Your public key has been saved in /root/.ssh/id_dsa.pub.
此時目錄下會產生公鑰id_dsa.pub和私鑰id_dsa
現在要把id_dsa.pub丟到192.168.0.2 並且更名為 authorized_keys
3.#scp id_dsa.pub 192.168.0.2:/root/.ssh/authorized_keys
root@192.168.0.2's password:
id_dsa.pub 100% |*****************************| 613 00:00
試試看 ssh 到server 應該就不用輸入密碼了
4.#ssh 192.168.0.2
#exit (記得離開)
5.#cd /usr/local/bin (要寫一個shell script 在 /usr/local/bin下 故先到此目錄下)
#vi sync
rsync -avlR --delete -e ssh 192.168.0.2:/test /
(把192.168.0.2下面的 /test 目錄 備份到本機上的 / , 因為備份會產生test這個資料夾.所以本機上設定為/)
(讓/test => /test 而不是 /test => /test/test)
參數意義如下﹕
-a, --archive
It is a quick way of saying you want recursion and want to preserve almost everything.
-v, --verbose
This option increases the amount of information you are given during the transfer.
-l, --links
When symlinks are encountered, recreate the symlink on the destination.
-R, --relative
Use relative paths. 保留相對路徑...才不會讓子目錄跟 parent 擠在同一層...
--delete
是指如果Server端刪除了一文件,那客戶端也相應把這一文件刪除,保持真正的一致。
-e ssh
建立起加密的連接。
6.#chmod 700 sync 只讓root 可以使用
7.#./sync (執行sync這個script.........此時你就會發現兩台電腦的/test是同步的呢^_^)
參考文件
小弟的心得是參考以下的文件來製作
http://www.adj.idv.tw/server/linux_rsync.php
http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html
http://phorum.study-area.org/viewtopic.php?t=15553&highlight=rsync
http://linux.tnc.edu.tw/techdoc/rsync.htm
===========================================================
底下是2 => 1 (2台到一台backup server)
我有做過2部server對1部用戶端
方 法是先在用戶端產生1部server的id_dsa再下scp指令將檔案複制到第一部server後刪除authorized_keys2再產生第二部 server的id_dsa1(注意檔名有改,請自訂)將產生的authorized_keys2內容copy 起來貼到id_dsa.pub(第一部產生的檔案)累加(不同行)存檔後再下scp指令將檔案複制到第二部server,然後2部就不用再key密碼了.
=----------=
將二個用戶端產生的authorized_keys2內容結合為一放到server內就可以了
===========================================================
Yukie:
剛剛看到一篇文章,它提到 server 如果有開 ssh 的話,即使未安裝 rsync server 也是可以的。所以我就試了一下,將 server 端的 rsync server 關掉,然後由 Windows 端以 rsync via ssh 進行備份,果然成功。所以備份的準備工作就更加簡單了。
原文網址在此:
http://www.longren.org/2005/07/09/quick-and-easy-remote-backups/
===========================================================
Yukie:
參考各位網友們的資料後,我寫了一篇在 Windows 上應用 rsync與 ssh 備份資料的文章,歡迎參考:
利用 rsync 備份 Wins 資料
因為怕格式亂掉,所以沒有直接貼過來,抱歉。
方 法是先在用戶端產生1部server的id_dsa再下scp指令將檔案複制到第一部server後刪除authorized_keys2再產生第二部 server的id_dsa1(注意檔名有改,請自訂)將產生的authorized_keys2內容copy 起來貼到id_dsa.pub(第一部產生的檔案)累加(不同行)存檔後再下scp指令將檔案複制到第二部server,然後2部就不用再key密碼了.
=----------=
將二個用戶端產生的authorized_keys2內容結合為一放到server內就可以了
===========================================================
Yukie:
剛剛看到一篇文章,它提到 server 如果有開 ssh 的話,即使未安裝 rsync server 也是可以的。所以我就試了一下,將 server 端的 rsync server 關掉,然後由 Windows 端以 rsync via ssh 進行備份,果然成功。所以備份的準備工作就更加簡單了。
原文網址在此:
http://www.longren.org/2005/07/09/quick-and-easy-remote-backups/
===========================================================
Yukie:
參考各位網友們的資料後,我寫了一篇在 Windows 上應用 rsync與 ssh 備份資料的文章,歡迎參考:
利用 rsync 備份 Wins 資料
因為怕格式亂掉,所以沒有直接貼過來,抱歉。
No comments:
Post a Comment