如何使用Rsync備份整個Linux系統

今天,我們想重新安裝運行Ubuntu 16.04 LTS服務器的虛擬機之一。 在安裝之前,我們嘗試對整個系統進行備份。 在尋找簡便的方法時,可以在Arch Linux Wiki頁面上找到引人注目的解決方案。 我們從未想過這會容易得多。 我們已經使用一鍵式Rsync命令複製了整個根目錄。 是的,這只是一條命令。 儘管有很多工具可以備份您的系統,但是這種方法更容易,更方便。 另外,此方法比使用命令克隆磁盤更好。 dd… 因為您的硬盤驅動器大小不同或使用不同的文件系統都沒有關係。 此方法在所有情況下均適用。

在此快速指南中,我們將說明如何 整個Linux系統的備份 使用Rsync實用程序。

使用Rsync備份整個Linux系統

首先,插入備份媒體(外部硬盤驅動器或其他媒體)。 然後使用“ fdisk -l”命令找到磁盤ID。 在我們的例子中,磁盤標識符 / dev / sdb1… 將驅動器安裝在您選擇的任何位置。

sudo mount /dev/sdb1 /mnt

要備份整個系統,您需要做的就是打開一個終端並以用戶身份運行以下命令

sudo rsync -aAXv / --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt

此命令將備份整個目錄 /,但找不到目錄/ dev,/ proc,/ sys,/ tmp,/ run,/ mnt,/ media,/ lost +。

讓我們分解上面的命令,看看每個參數的作用。

  • 同步 -快速,通用,本地和遠程文件複製實用程序
  • -aAXv -文件以“存檔”模式傳輸,可確保保留符號鏈接,設備,權限,所有權,修改時間,ACL和擴展屬性。
  • / -源目錄
  • -排除 -從備份中排除這些目錄。
  • / mnt -這是備份的目標文件夾。

請記住你 應該排除目標目錄如果它存在於本地系統上。 這樣可以避免無限循環。

要恢復備份,只需在上面的命令中交換源路徑和目標路徑即可。

請記住,這僅適用於本地和脫機系統。 如果您的系統正在積極訪問網絡上的其他系統,則這不是最佳解決方案。 因此,這些系統的內容可能每分鐘不斷更新,並且某些文件在rsync過程中可能會更改。 舉例來說,當Rsync到達文件2時,前一個文件(文件1)的內容可能會更改。 當您需要使用該備份時,這將使您產生依賴項錯誤。 在這種情況下,快照備份是最好的方法。 因為系統將在開始備份過程之前“凍結”,並且將在備份過程完成後使其“解凍”,以便所有文件兼容。

這就是全部。 希望這可以幫助。 如果您發現我們的文章有幫助,請在社交,專業網絡上共享它們,以便其他用戶也可以從中受益。

Sidebar