共計 1088 個字符,預計需要花費 3 分鐘才能閱讀完成。
今天就跟大家聊聊有關 Linux 如何進行自動備份,可能很多人都不太了解,為了讓大家更加了解,丸趣 TV 小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
1. 利用的工具:rsync,ssh
2. 特點:
l 檢查原文件并只復制發生變化的數據塊
l 使用 ssh 加密數據
l 允許傳輸前壓縮
l 從源系統移除數據時,在目標系統上自動移除
l 允許設置 WAN 連接的數據傳輸速度
l 具有復制設備文件的能力
3. 簡單的備份示意圖
圖 1:備份示意圖
4. Ssh 服務器與客戶端設置為了實現自動雙向驗證,我們通過公鑰驗證,這里用 root 來連接服務器,首先更改 ssh 服務器的 ssh 服務配置文件 /etc/ssh/sshd_config.
如下圖:去掉:橢圓里前面的注釋:
圖 2
然后重啟服務:#service sshd restart。
為客服端的 root 用戶生成密鑰對:
#ssh-keygen -t rsa
如圖 3 所示,將在家目錄下的.ssh/ 目錄下生成 id_rsa,id_rsa.pub 文件,其中前面一個是私鑰,后面一個是公鑰
圖 3
將公鑰 id_rsa.pub 的內容復制到 ssh 服務器的 /root/.ssh/authorized.keys 文件里。
這樣服務器就可以通過公鑰對 root 用戶認證,而客戶端對服務器的認證是在 *** 連接時,自動從服務器下載服務器公鑰,并放在~/.ssh/known_hosts 里。
*** 一步:運行一下 #ssh-add 命令
然后測試:
在客服端輸入:
#ssh cluster2 hostname
命令,如果成功的話將直接輸出 hostname 運行結果,而沒有輸入密碼提示。
5. 配置 rsync:
我們創建在 rsync 主服務器(ssh 客服端)上創建一個測試目錄:
#mkdir /www
#echo“this is a rsync test”/www/index.html
運行 rsync 命令:
#rsync -v -a -z -e ssh –delete /www/ cluster2:/www
- v 顯示操作信息
- a 目錄下的文件及目錄
- z 壓縮
-e ssh 通過 ssh 傳輸
/www/ 源目錄,注意要以“/”結尾后面就是備份目標了,詳細的 rsync 選項請查閱在線文檔將遠程文件“拉”到本地,只需將源路徑和目標路徑交換。
6. 剩下的就是通過 cron 作業,定期復制備份了。如下
#crontab -e
30 * * * * rsync -v -a -z -e ssh –delete /www/ cluster2:/www /dev/null 2 1
這樣每隔 30 分鐘自動同步一次。
看完上述內容,你們對 Linux 如何進行自動備份有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注丸趣 TV 行業資訊頻道,感謝大家的支持。