Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

27.2. 将 ReaR 与备份软件集成

ReaR 的主要目的是生成救援系统,但它也可与备份软件集成。集成意味着内置、受支持和不支持的备份方法有所不同。

27.2.1. 内置备份方法

Rear 包括内置或内部备份方法。这个方法完全集成了 ReaR,它有以下优点:

  • 可以使用一个 rear mkbackup 命令创建救援系统和完整系统备份
  • 救援系统自动从备份中恢复文件

因此,ReaR 可以覆盖创建救援系统和完整系统备份的整个过程。

27.2.1.1. 配置内部备份方法

要使 ReaR 使用其内部备份方法,请将这些行添加到 /etc/rear/local.conf 中:

BACKUP=NETFS
BACKUP_URL=backup location

这些行将 ReaR 配置为使用 tar 命令创建包含完整系统备份的存档。使用 rear(8)man page 的"Backup Software Integration"一节中的其中一个选项替换备份位置。确保备份位置有足够的空间。

例 27.4. 添加 tar 备份

要扩展 第 27.1 节 “基本 ReaR 用法” 中的示例,将 ReaR 配置为同时将 tar 完整系统备份输出到 /srv/backup/ 目录中:

OUTPUT=ISO
OUTPUT_URL=file:///mnt/rescue_system/
BACKUP=NETFS
BACKUP_URL=file:///srv/backup/

内部备份方法允许进一步配置。

  • 要在创建新存档时保留旧的备份存档,请添加以下行:

    NETFS_KEEP_OLD_BACKUP_COPY=y
  • 默认情况下,ReaR 在每次运行时都会创建一个完整备份。要逐步备份,意味着每次运行时只备份更改的文件,添加以下行:

    BACKUP_TYPE=incremental

    这会将 NETFS_KEEP_OLD_BACKUP_COPY 设置为 y

  • 要确保除增量备份外定期执行完整备份,请添加以下行:

    FULLBACKUPDAY="Day"

    使用"Mon"、"Tue"、"Wed"、"Thu" 之一替换"Day"。"Fri", "Sat", "Sun".

  • Rear 也可以在 ISO 镜像中包含救援系统和备份。要做到这一点,将 BACKUP_URL 指令设置为 iso:///backup/

    BACKUP_URL=iso:///backup/

    这是系统备份的最简单方法,因为救援系统不需要用户在恢复期间获取备份。然而,它需要更多存储。此外,单ISO 备份不能是增量的。

    例 27.5. 配置单ISO 救援系统和备份

    此配置会创建一个救援系统和备份文件作为单个 ISO 镜像,并将其放在 /srv/backup/ 目录中:

    OUTPUT=ISO
    OUTPUT_URL=file:///srv/backup/
    BACKUP=NETFS
    BACKUP_URL=iso:///backup/
    注意

    在这种情况下,ISO 镜像可能较大。因此,红帽建议您仅创建一个 ISO 镜像,而不是两个 ISO 镜像。详情请查看 “特定于 ISO 的配置”一节

  • 要使用 rsync 而不是 tar,请添加以下行:

    BACKUP_PROG=rsync

    请注意,只有使用 tar 时支持增量备份。

27.2.1.2. 使用内部备份方法创建备份

使用 BACKUP=NETFS 设置,ReaR 可以创建救援系统、备份文件或两者。

  • 要只创建救援系统,请运行:

    rear mkrescue
  • 要只创建备份,请运行:

    rear mkbackuponly
  • 要创建救援系统和备份,请运行:

    rear mkbackup

请注意,只有使用 NETFS 方法,才能使用 ReaR 触发备份。Rear 无法触发其他备份方法。

注意

在恢复时,使用 BACKUP=NETFS 设置创建的救援系统需要在执行 重新恢复 前存在备份。因此,救援系统启动后,将备份文件复制到 BACKUP_URL 中指定的目录中,除非使用单个 ISO 镜像。只有之后才运行re ar恢复

为了避免不必要的重新创建救援系统,您可以使用以下命令检查存储布局是否已自上次救援系统创建以来更改:

~]# rear checklayout
~]# echo $?

非零状态表示磁盘布局出现更改。如果 ReaR 配置已更改,则返回非零状态。

重要

rear checklayout 命令不会检查救援系统目前是否存在在输出位置,即使不存在也返回 0。因此,它不能保证救援系统可用,仅确保布局自上次创建救援系统以来没有改变。

例 27.6. 使用 rear checklayout

要创建一个救援系统,但前提是布局已改变,请使用这个命令:

~]# rear checklayout || rear mkrescue

27.2.2. 支持的备份方法

除了 NETFS 内部备份方法外,ReaR 还支持多种外部备份方法。这意味着救援系统会自动从备份中恢复文件,但无法使用 ReaR 触发备份创建。

有关支持的外部备份方法的列表和配置选项,请参阅 rear(8)man page 的"Backup Software Integration"部分。

27.2.3. 不支持的备份方法

使用不支持的备份方法,有两个选项:

  1. 救援系统会提示用户手动恢复文件。这是"基本 ReaR 使用"中所述的场景,但备份文件格式除外,其格式可能与 tar 存档不同。
  2. rear 执行用户提供的自定义命令。要配置此功能,将 BACKUP 指令设置为 EXTERNAL。然后,使用 EXTERNAL_BACKUP 和 EXTERNAL_ RESTORE 指令指定要在备份和恢复期间运行的命令。另外,还可指定 EXTERNAL_IGNORE_ERRORSEXTERNAL_CHECK 指令。有关示例配置,请参阅 /usr/share/rear/conf/default.conf

27.2.4. 创建多个备份

使用 2.00 版本时,ReaR 支持创建多个备份。支持此功能的备份方法包括:

  • BACKUP=NETFS (内部方法)
  • BACKUP=BORG (外部方法)

您可以使用 rear 命令的 -C 选项指定单个备份 参数是 /etc/rear/ 目录中额外备份配置文件的基名。每个特定备份的方法、目的地和选项都在特定的配置文件中定义,而不是在主配置文件中定义。

执行系统的基本恢复:

系统的基本恢复

  1. 创建 ReaR 恢复系统 ISO 镜像以及基本系统文件的备份:

     ~]# rear -C basic_system mkbackup
  2. /home 目录中备份文件:

     ~]# rear -C home_backup mkbackuponly

请注意,指定的配置文件应包含系统基本恢复所需的目录,如 /boot/root/usr

在 rear 恢复 shell 中恢复系统

要在 rear 恢复 shell 中恢复系统,请使用以下命令顺序:

~]# rear -C basic_system recover
~]# rear -C home_backup restoreonly