http://dz.adj.idv.tw/thread-48-1-4.html
一.前言
自從911事件之後...異地備援這個名稱就常聽人提起...不過就是滿少看到大家在討論...剛好這次因為有需要...不得不研究這個東西...順便看看大家都是怎樣實作異地備援的...底下是個人的一點點心得...
這次主要分成三個部份...單向 Trusted SSH Authorized...Rsync...Crontab....姑且不論傳輸速度為何...以及無時差的異地備援...相信這樣的Solutions應該可以滿足一般人的需求吧
二.準備
測試系統: Red Hat Linux 7.3 to Red Hat 7.3 ...
Local 端需要啟動 Rsync...套件 openssh-3.4p1-1
** 假設: A (10.0.0.1) 要對 B (192.168.0.1) 做異地備援
PS:角色定位要明確...當然您要巔倒的來做也行...
參考網站 : http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html
三.開始實作
1.完成單向Trusted SSH Authorized﹕
我
要 A (10.0.0.1) 要對 B (192.168.0.1) 做異地備援 ...所以我針對 A 讓它使用SSH連到 B
時...不需要輸入密碼...User 是 Root...SSH
Version2的版本..首先要先在A(10.0.0.1)產生public/private dsa key pair..
[root@mondeo home]# cd /root/.ssh/
|
這時會在系統下看到兩個檔案...id_dsa與id_dsa.pub 現在要把id_dsa.pub丟到192.168.0.1 並且更名為 authorized_keys2
[root@mondeo .ssh]# scp id_dsa.pub 192.168.0.1:/root/.ssh/authorized_keys2root@192.168.0.1's password:
|
現在您可以執行ssh 192.168.0.1 看看能否登入而不需要輸入密碼...
2.使用rsync 做Remote sync﹕
rsync特性簡介 :
rsync是unix-like系統下的數據鏡像備份工具,從命名上就可以看出來了remote sync。它的特性如下:
1、可以鏡像保存整個目錄樹和文件系統。
2、可以很容易做到保持原來文件的權限、時間等等。
3、無須特殊權限即可安裝。
4、優化的流程,文件傳輸效率高。
5、可以使用rcp、ssh等方式來傳輸文件,當然也可以通過直接的socket連接。
6、支持匿名傳輸。
首先要先對B(192.168.0.1)把Rsync的Server on起來...
[root@linux /]#chkconfig --list rsync
|
現在我先在A(10.0.0.1)上建一個 Backup directory...然後對B(192.168.0.1)的mysql跟html的目錄做異地備援...偶寫一個簡單的script如下:
[root@mondeo /]# mkdir backup
|
參數意義如下﹕
-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
建立起加密的連接。
參數的使用因人而異...您可以man rsync來使用更多的參數...
測試看看:
[root@mondeo backup]# ./syncreceiving file list ... done
|
看到沒詢問密碼....以及有把檔案copy過來就沒問題囉....當然你可以把遠端的資料做個變動...看是否真有同步啦....
3.使用crontab 來做自動排程﹕
現在設好之後...我希望每天的0點0分...夜深人靜的時後再來幫我做sync....當然您想要多久做 sync 看個人需求囉...
[root@mondeo backup]# crontab -e0 0 * * * /backup/sync |
回覆刪除All are saying the same thing repeatedly, but in your blog I had a chance to get some useful and unique information, I love your writing style very much, I would like to suggest your blog in my dude circle, so keep on updates.
SAP training in Chennai
SAP ABAP training in Chennai
SAP FICO training in Chennai
SAP MM training in Chennai
SAP SD training in Chennai
SAP HR training in Cheennai