想知道其他資訊可以參考鳥哥喔!!!
http://linux.vbird.org/linux_server/0310telnetssh.php#rsync
這次楊大俠測試的環境是三台web server互相備份資料。
一開始有用過Rsync的朋友可以跳過簡單基本的Rsync教學喔。
首先當然先認識一下Rsync。
rsync -av -e ssh /home/a/www/ /home/b/www/
-av -e ssh
我這邊不多說嚕,鳥哥寫得很清楚了(楊大俠懶惰。
主要楊大俠要講的是後面的路徑喔,因為楊大俠第一次看的時候,看得霧煞煞,應該還是有人跟楊大俠一樣吧!!!!!!。
/home/a/ /home/b/
以上就是a 傳送到 b,也可以說成 a 複製到 b。
舉個例子,現在/home/a/底下有aaa這個檔案,/home/b/底下是空的,然後執行上面那條指令,在/home/b/底下就會看到aaa喔。
很簡單吧!!!!
下面是實際的操作喔!!!!
以上是自己對自己喔!!!
如果需要自己對別人呢?
延續上面例子,一樣是/home/a/ 傳送到/home/b,差別就在與是自己的/home/a/ 傳送到別人的/home/b。
指令只要加上對方的ip就可以嚕。
rsync -av -e ssh /home/a/www/ user@x.x.x.x:/home/b/www/
實際上就是
rsync -av -e ssh /home/a/www/ root@192.168.1.1:/home/b/www/
執行此指令會需要密碼喔。
以上基本的運用會了,就可以再進階一點嚕,上面內容鳥哥都有喔。
如果可以SSH不用密碼登入,再加上crontab 設定每天執行一次,這樣就可以每天自動備份資料。
對怕資料遺失,以及管理server方便多了。
就開始來看楊大俠的介紹吧!!!!
首先先要讓SSH不用密碼登入。
先cd到.ssh(若沒有[root@xxx#]mkdir .ssh)
[root@xxx]#cd /root/.ssh
[root@.ssh]#ssh-keygen -d
]root@.ssh]#scp id_dsa.pub X.X.X.X:/root/.ssh/authorized_keys2
[root@.ssh]#ssh root@X.X.X.X
X.X.X.X 是IP address
若成功就不用密碼,就可以進入到另一台主機。
藍色圈圈是 root密碼
三角形原本是主機2變成主機1嚕!!!!
再來就是設定crontab
[root@xxx]# crontab –e
####進入到編輯畫面增加下面那行,每天0點0分執行sync,若要0點10分,則為10 0 * * * /root/sync
0 0 * * * /root/sync
然後:wq 存檔跳出編輯畫面。
再來就是編寫sync黨,並且變成可執行黨。
[root@xxx~]#cd /root
[root@xxx~]#nano sync2
把之前rsync的指令寫在上面。
以上應該不會太難,其實網路上還有其他資訊,東看看西看看,都可以成功。 把之前rsync的指令寫在上面。
不過楊大俠這篇想寫的重點就是在同一個目錄底下,若有不需要同步的目錄或資料,該如何處裡,(例如:在/home/A這的資料夾底下有a b c三個檔案,但是我不想要b這個檔案同步。)這在網路的相關資源應該滿少的,我個人認為拉,因為楊大俠需之前在google收尋到的不是很多,所以才寫這篇方便有緣人查詢看到。
在/home/da/新增一個文件 名稱為file
然後把不需要的檔案寫在file上,以剛說的例子,就把b寫入在這文件(file)內。
[root@xxx]# cd /home/da
[root@xxx]# vim file
進入編輯畫面
b
~
~
~
:wq 離開
不好意思,楊大俠在實作的時候沒有存照片,沒辦法貼上來,不過應該不會難道各位先進。
所以不需要同步的檔案或目錄路徑就是/home/da/file
重點來拉!!!就是指令怎麼寫呢?(指令的環境:在/home/A這的資料夾底下有a b c三個檔案,但是我不想要b這個檔案同步。)
rsync -av -e ssh --exclude-from=/home/da/file /home/A user@x.x.x.x:/home/A
使用排除指令 --exclude-from
只要增加--exclude-from=不需要同步的資料夾所在路徑。
其他都跟上面一樣,很簡單吧!!!!!
所以只需要在sync這個可執行黨內加上排除指令就可大功告成嚕。
任督二脈:
楊大俠還不知道排除指令的時候,檔案一多一大,可是一行一行慢慢打的,不僅僅麻煩,效能又慢,剛好有找到排除指令的用法,就只有一行,方便多了,感覺我之前打那得多,都是白工作了,而且又是浪費時間。
在實作測試的時候,楊大俠認為比較麻煩的部分就是SSH的金鑰部分,如果是兩台電腦互相給金鑰,那倒是沒什麼問題,三台電腦可能會有問題,因為楊大俠上面貼的指令,如果三台照作,因為先後的關係,後面的會把前面那組金鑰給覆蓋下去,所以造成先作SSH沒辦法順利不用密碼連線SSH,最後是用vim編輯金鑰,把別人的自己手動copy進去。
備份的方法 3 : 使用 rsync
rsync 參數設定及範例
不用密碼直接用SSH登入到遠端電腦
rsync 檔案備份
楊大俠還不知道排除指令的時候,檔案一多一大,可是一行一行慢慢打的,不僅僅麻煩,效能又慢,剛好有找到排除指令的用法,就只有一行,方便多了,感覺我之前打那得多,都是白工作了,而且又是浪費時間。
在實作測試的時候,楊大俠認為比較麻煩的部分就是SSH的金鑰部分,如果是兩台電腦互相給金鑰,那倒是沒什麼問題,三台電腦可能會有問題,因為楊大俠上面貼的指令,如果三台照作,因為先後的關係,後面的會把前面那組金鑰給覆蓋下去,所以造成先作SSH沒辦法順利不用密碼連線SSH,最後是用vim編輯金鑰,把別人的自己手動copy進去。
參考網站
rsync 參數設定及範例
不用密碼直接用SSH登入到遠端電腦
rsync 檔案備份





沒有留言:
張貼留言