如何备份Linux系统

外置硬盘通过USB插入笔记本电脑Yuriy Seleznev / Shutterstock.com

不要冒数据丢失的风险。从Linux命令行备份有价值的数据。我们将使用 rsync的 为此命令,我们甚至为它找到了一些不错的可选图形界面。

有很多方法可以完成制作文件的备份副本。我们希望向您展示一种强大,灵活且可靠的方法来保护您的数据。我们选择 rsync的 因为它备受推崇的算法可以计算源目录和目标目录中文件之间的差异。仅传输文件的两个版本之间的差异,而不是整个文件,如果可以避免的话。

从1990年代中期开始,当这种效率与其在执行文件复制和目录同步方面的良好记录配对时, rsync的 是从Linux命令行创建备份的完美候选者。

此外,还有独立的软件程序作为前端 rsync的。它们提供图形用户界面(GUI) rsync的 有些人可能会觉得更容易使用。

备份越简单越快,就越有可能这样做。

使用rsync与外部硬盘驱动器

要将数据备份到外部硬盘驱动器,必须安装并可以访问硬盘驱动器。如果你可以写信,那么也可以 rsync的。在此示例中,将名为SILVERXHD的外部USB硬盘驱动器(用于“Silver eXternal Hard Drive”)插入Linux计算机。它已由操作系统自动安装。

您需要知道驱动器的路径。在GNOME中,打开Nautilus文件浏览器并在侧栏中找到驱动器的名称。

将鼠标指针悬停在外部驱动器的名称上,工具提示将显示驱动器的路径。

外部驱动器的工具提示

在此示例中,工具提示通知我们外部驱动器上的文件系统的安装点是“/ media / dave / SILVERXHD”。

如果您的文件浏览器不这样做,请浏览到外部驱动器并在该位置打开终端窗口。使用 PWD 命令打印终端窗口的路径。

从源目录复制内容

使用 rsync的 要将目录的内容复制到备份目标,请使用以下命令。

-r (递归)选项原因 rsync的 复制所有嵌套的子目录及其内容。请注意,在“SILVERXHD”一词的末尾有正斜杠“/”,但它已经绕到屏幕截图中的下一行。

rsync -r / home / dave / Documents / / media / dave / SILVERXHD /

rsync -r / home / dave / Documents / / media / dave / SILVERXHD /在终端窗口中

文件复制发生,您将返回到命令行提示符。

如果我们查看外部USB驱动器,我们会看到Documents目录中的目录已被复制到外部驱动器的根目录。

LS

在终端窗口

复制源目录及其内容

如果您希望将Documents目录及其内容复制到外部驱动器,请从命令行中的“/ home / dave / Documents”末尾删除“/”,如下所示:

rsync -r / home / dave / Documents / media / dave / SILVERXHD /

rsync -r / home / dave / Documents / media / dave / SILVERXHD /在终端窗口中

为避免混淆,我在执行第二个命令之前从外部驱动器中删除了两个先前复制的目录。

如果我们让第二个副本完成并再次查看外部驱动器,我们会看到Documents目录已被复制。它的内容在该目录中。它们不在外部驱动器的根目录中。

在终端窗口

复制到特定目标目录

要复制到目标硬盘驱动器上的特定目录,请将目录名称添加到目标路径。假设我们想要将“/ home / dave / Documents”目录的内容复制到外部驱动器上名为“backups”的目录中。

我们使用以下命令执行此操作。

rsync -r / home / dave / Documents / / media / dave / SILVERXHD / backups /

rsync -r / home / dave / Documents / / media / dave / SILVERXHD / backups / na终端窗口

检查外部驱动器,我们可以看到备份目录已创建,并且在该目录中是“/ home / dave / Documents”目录的内容。

LS
我的备份

终端窗口中ls的输出

保留文件所有权和权限

使用 -一个 (存档)选项,用于保存复制文件,符号链接和特殊块文件等文件属性,如修改日期,文件所有权,访问权限等。

rsync -ra / home / dave / Documents / / media / dave / SILVERXHD / backups /

rsync -ra / home / dave / Documents / / media / dave / SILVERXHD / backups /在终端窗口中

使用详细模式

-v (详细)期权力量 rsync的 列出正在复制的文件。

rsync -rav / home / dave / Documents / / media / dave / SILVERXHD / backups /

rsync -rav / home / dave / Documents / / media / dave / SILVERXHD / backups /在终端窗口中

复制完成后,将显示备份摘要。

来自终端窗口中rsync的详细输出

  • 已发送:传输到目标的字节数。

  • 收到:主机收到的字节数。

  • 字节/秒:是有效传输速率。

  • 总大小:表示如果不使用,将发送的数据大小 rsync的。随后的运行 rsync的 它只会传输文件差异。该数字代表不必转让的数据。

  • 加速:这是必须发送的数据量与存在的数据总量之间的比率。如果 rsync的 需要完整地复制所有文件(例如,第一次运行时),加速将为1.0。什么时候 rsync的 接下来使用,它将优化转移。它只会发送文件之间的差异,而不是整个文件。没有更改的火鸡将被忽略。加速数字将表示需要传输的少量数据与文件总大小之间的比率。

使用进度选项

-P (进度)选项的原因 rsync的 复制每个文件后生成一个小的进度报告。

rsync -raP / home / dave / Documents / / media / dave / SILVERXHD / backups /

rsync -raP / home / dave / Documents / / media / dave / SILVERXHD / backups /在终端窗口中

可以在每个复制的文件之间看到提供的信息。

rsync输出与终端窗口中的进度

提供的信息是:

  • 字节大小:为此文件传输的数据。

  • 百分比:传输文件的百分比。

  • B / s:数据传输速率。

  • 剩余时间:传输此文件的估计时间。

  • xfr#:到目前为止传输的文件数。

  • to-chk:优化算法要检查和验证的文件数。

增加速度

要加快转移,请使用 -z (压缩)选项。这会压缩传输中的文件,但文件未压缩存储在目标目录中。

压缩选项不会为涉及许多小文件的传输带来显着的好处。对于较大文件的集合,它可以以有意义的方式减少传输时间。

我们也在使用 --partial 选项在这里。 rsync的 将删除由网络故障或其他中断引起的部分传输文件。该 --partial 期权力量 rsync的 将部分传输的文件保留在目标上。净时间 rsync的 运行它不必重新传输部分传输文件的部分。

请注意,如果存在某人将部分传输的文件误认为是完全传输的文件的风险,您可能不想使用此选项。

rsync -ravz –partial / home / dave / Documents / / media / dave / SILVERXHD / backups /

rsync -ravz --partial / home / dave / Documents / / media / dave / SILVERXHD / backups /在终端窗口中

在我们的例子中,收益是微不足道的。

终端窗口中的rsync输出

加速比率有所改善,但却提高了百分之二十!在现实世界中,您的速度提升将更加令人印象深刻。

在网络上使用rsync

到目前为止,我们一直在针对外部USB驱动器。要使用网络位置作为备份目标,请在命令行上使用该位置的路径。本文研究的网络上有一个网络连接存储设备(NAS)。

我们可以使用我们之前使用的相同技巧来识别NAS的路径,方法是将鼠标悬停在Nautilus中与该设备的连接上。

在网络上备份没有特殊选项;这些都是我们已经使用过的选项。

rsync -ravz –partial / home / dave / Documents / / media / dave / NAS / dave / backups /

rsync -ravz --partial / home / dave / Documents / / media / dave / NAS / dave / Backups /在终端窗口中

输出格式没有区别。

终端窗口中的rsync输出

毫不奇怪,字节数/秒数显着改善。

如果我们跑 rsync的 再一次,我们可以看到没有要传输的文件,因为没有任何更改,但仍然有一些字节来回传输。这是需要传输的数据量,以将目标上的文件列表与源上的文件列表进行比较。

输出fromrsync,没有要在终端窗口中传输的文件

在这种情况下,加速比率更好一个数量级。在实践中,您的性能比将介于我们的两个伪人工读数之间。

通过SSH使用rsync

rsync的 支持通过SSH连接进行备份。我们需要在命令行上提供用户帐户名和SSH位置。我们在这里使用网络名称,但您也可以使用IP地址。

请注意SSH连接详细信息与远程目标上的网络路径起点之间的“:”。

rsync -ravz –partial / home / dave / Documents / [email protected]:/ home / dave / Backups /

rsync -ravz --partial / home / dave / Documents / dave@sulaco.local:/ home / dave / Backups /在终端窗口中

系统将要求您输入远程计算机上用户帐户的密码。这不是源计算机上的密码。

通过终端窗口中的ssh连接进行rsync

备份将照常完成。由于在安全shell连接中发生加密和解密,吞吐量不如常规网络连接快。

自动备份

我们可以通过向crontab文件添加条目来轻松创建自动备份。

crontab -e

crontab -e在终端窗口中

我们将设置一个自动备份,每天04:30运行(如果当时计算机处于打开状态)。的语法 rsync的 命令根本不会改变。

crontab在终端窗口中以nano打开

Ctrl + O会将更改写入文件,Ctrl + X将关闭 纳米 编辑。

有关: 怎样在Linux上安排任务:Crontab文件简介

在Rsync上放一个友善的面孔

对命令行不太熟悉的人可以使用许多程序之一来放置图形用户界面(GUI) rsync的。两个很好的例子是luckyBackup和Grsync。这两个程序都允许这些程序 rsync的 通过用户界面选择的选项。

Grsync 程序专注于成为可视化包装器 rync。它提供了方便的访问 rsync的 选项并仅添加一组有限的新功能。

其中一个Grsync设置对话框,其中一个Grsync设置对话框,

luckyBackup 程序不仅仅是一个简单的包装器 rsync的。它是一个使用的备份程序 rsync的 在幕后。例如, luckyBackup 可以制作备份的多个“快照”。然后,您可以“回滚”到任何快照中的文件版本。

其中一个luckyBackup设置对话框其中一个luckyBackup设置对话框。

安装Grsync

安装 Grsync 在Ubuntu中,使用此命令:

sudo apt-get install grsync

sudo apt-get在终端窗口中安装grsync

安装 Grsync 在Fedora中,使用此命令:

sudo dnf安装grsync

sudo dnf安装grsync

安装 Grsync 在Manaro中使用此命令:

sudo pacman -Syu grsync

sudo pacman -Syu grsync在终端窗口中

安装luckyBackup

安装 luckyBackup 在Ubuntu中,使用以下命令:

sudo apt-get install luckybackup

在终端窗口中sudo apt-get install luckybackup

安装 luckyBackup 在Fedora中使用以下命令:

sudo dnf安装luckybackup

sudo dnf在终端窗口中安装luckyback

在Manjaro你必须安装 luckyBackup 来自Arch User Repository(AUR)。你可以这样做 pamac 包经理。

pamac包经理

不要冒险,经常备份您的数据

备份绝对至关重要。经常备份,备份到多个位置,并备份到不同的媒体。一旦设置完毕, rsync的 可以为你做所有这些。

body #primary .entry-content ul#nextuplist list-style-type:none; margin-left:0px; padding-left:0px;
body #primary .entry-content ul#nextuplist li a text-decoration:none; color:#1d55a9;

请阅读下一步

  • >怎样流UFC格斗之夜155 de Randamie vs. Ladd Online
  • >怎样加快您的Internet连接速度
  • >怎样将Alexa添加到智能镜像
  • >怎样在Linux上使用GPG加密和解密文件
  • >犯罪分子怎样以您的名义订购电话(以及怎样阻止他们)
本文机器自动生成,不保证语句完整通顺和表达准确,亦不对内容真实有效性负责,请读者知悉。