2014IT鐵人賽-28-透過 rsync進行異地備份
今天練習用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>
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 ~
沒有留言:
張貼留言