星期一, 10月 13, 2014

2014IT鐵人賽-28-透過 rsync進行異地備份

2014IT鐵人賽-28-透過 rsync進行異地備份


今天一樣使用 EasyCloud  雲端簡單龍的帳戶, 那就登入 https://gemini.nchc.org.tw/ 來開始練習openSUSE 基礎指令吧.


今天練習用rsync 指令進行異地備份吧, 所以要使用我們之前所建立的另外一台虛擬機器.
上次的練習我們已經介紹過備份的範圍以及使用 tar 指令來進行備份, 今天我們來進行兩台電腦的異地備援.

開始練習吧


Lab: rsync 異地備援




Server /tmp/test 目錄 ---------rsync同步-----------------> Client  

Server:

#mkdir /root/.ssh <建立~/.ssh  目錄,供日後存放金鑰使用>
#rpm -q rsync <檢查是否安裝rsync套件>
#chkconfig  rsync --list                                        
#chkconfig  rsync on <啟動 rsync 服務>
#chkconfig  rsync --list                                        
#rcxinetd restart <重新啟動xinetd>
#mkdir  /tmp/test                                               


Client:

#mkdir /root/.ssh <建立~/.ssh  目錄,供日後存放金鑰使用>
#ssh-keygen -d <建立金鑰,設定存放目錄,不設定密碼>
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): <請輸入Enter 不使用密碼>
Enter same passphrase again:         <請輸入Enter 不使用密碼>

#ls /root/.ssh <請觀察資訊, 會出現公/私鑰>
#scp /root/.ssh/id_dsa.pub  伺服器的IP:/root/.ssh/authorized_keys         
<將公鑰id_dsa.pub scp方式 傳送到同學的/root/.ssh/並命名為authorized_keys>
The authenticity of host '192.168.3.130 (192.168.3.130)' can't be established.
RSA key fingerprint is 4e:52:bf:ad:59:bf:59:33:af:62:d2:c7:72:40:78:e0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.3.130' (RSA) to the list of known hosts.
Password: <請輸入對方root 密碼>

#ssh 伺服器的IP <此時登入不需要密碼,即可登入>
遠端#exit <登出遠端>



撰寫一個shell script 來利用rsync 同步server

#vi /root/sync.sh <撰寫一個shell 同步目錄>       
       
#!/bin/bash
# 使用 rsync                   來源目錄                目的地目錄
rsync  -alvR --delete -e ssh 伺服器的IP:/tmp/test    /

<rsync同步使用ssh方式 server上的/tmp/test 到本機上>     


測試1:

請於 Client 上面
#rm  /tmp/test <如果有之前練習的 test 檔案先刪除>
#ls  /tmp <請觀察 /tmp目錄>
#sh  /root/sync.sh <執行剛剛的 shell script>
#ls  /tmp <請觀察是否有同步 /tmp/test 目錄到client>
------------------------------------------------------------------------------

測試2:
請於Server上面建立三個檔案
#touch  /tmp/test/file1
#touch  /tmp/test/file2
#touch  /tmp/test/file3


請於 Client 上面
#sh /root/sync.sh <執行剛剛的 shell script>
#ls /tmp/test <請觀察是否有同步 /tmp/test 目錄到client>
------------------------------------------------------------------------------

測試3:
請於Server上面刪除 其中一個檔案
#rm  /tmp/test/file2

請於 Client 上面
#sh /root/sync.sh <執行剛剛的 shell script>
#ls /tmp/test <請觀察是否有同步 /tmp/test 目錄到client>

Fun with Day 28 ~


沒有留言: