如何使用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