機械翻訳について

3 ReaRを使用したバックアップの管理

ReaRは、ローカル・データ・センターのOracle Linuxシステムで使用できる障害時リカバリ・ツールです。 ReaRは、ブート可能なリカバリ環境と外部ファイルのバックアップを自動的に生成します。

systemdタイマーやCrontabユーティリティなどを使用して、ReaRレスキュー・システムの作成をスケジュールできます。 ReaRを使用して、失われたユーザーおよびシステム・ファイルを元のディレクトリの場所にリストアできます。

ReaRの詳細は、https://relax-and-recover.org/およびReaRのインストール後に使用可能なrear(8)マニュアル・ページを参照してください。

ReaRのインストール

Oracle Linux yumサーバーからrearパッケージをインストールします。

sudo dnf install rear

ReaRレスキュー・システムの作成

ReaRを使用して、基礎となるシステムをリストアし、外部ソースからデータをコピーするために使用できるブート可能なデバイスを作成します。

前提条件

続行する前に、次のタブ付きセクションで説明するように、ブート可能リカバリ環境をISOイメージ・ファイルとして作成するために必要なパッケージをインストールする必要があります:

次のコマンドを実行して、xorrisoおよびsyslinuxパッケージをインストールします:

sudo dnf install xorriso syslinux

次のコマンドを実行して、xorrisoおよびsyslinuxパッケージをインストールします:

sudo dnf install xorriso syslinux

次のコマンドを実行して、genisoimageおよびsyslinuxパッケージをインストールします:

sudo dnf install genisoimage syslinux

ReaRレスキュー・システムの構成

レスキュー・システム構成は、/etc/rear/local.confファイルに格納されます。

ノート:

/etc/rear/local.confで使用できるすべての使用可能なパラメータの標準構成のガイドは、/usr/share/rear/conf/default.confファイルを参照してください。

OUTPUTパラメータとISOイメージ・ファイルの場所(OUTPUT_URLパラメータで指定)を設定して、ストレージ・メディアを定義します。

OUTPUT=ISO
OUTPUT_URL=file:///mnt/rescue_system/

この構成では、ISOイメージ・ファイルが/var/lib/rear/output/ディレクトリに/mnt/rescue_system/host_name/rear-localhost.isoとして生成されます。 ネットワーク・ストレージ・マウントの場合、file:///nfs://に置き換えることもできます。

ディスク領域が制限されている場合は、/mnt/rescue_systemディレクトリに単一のISOイメージ・ファイルのみを生成するように、オプションで/var/lib/rear/output/を省略するようにReaRを構成します。

OUTPUT=ISO
BACKUP=NETFS
OUTPUT_URL=null
BACKUP_URL=iso:///backup
ISO_DIR=/mnt/rescue_system

リカバリ・システムが生成されるたびにファイル・バックアップを自動的に生成するには、「ReaRを使用したファイルのバックアップ」を参照してください。

ReaRレスキュー・システムの生成

レスキュー・システムのベース設定を構成した後、mkrescueコマンドを使用してISOイメージ・ファイルを生成します。

sudo rear mkrescue

ddコマンドを使用してISOファイルからUSBインストール・メディアを作成する方法の詳細は、次のいずれかのリンクを参照してください:

ReaRレスキュー・システムの作成のスケジュール

systemdタイマーを使用して、ReaRレスキュー・システムの作成をスケジュールします。

前提条件

次の手順では、スケジュールするReaRレスキュー・システムの作成を構成およびテストしていることを前提としています。 ReaRレスキュー・システムの構成および生成の詳細は、「ReaRレスキュー・システムの構成」および「ReaRレスキュー・システムの生成」を参照してください

この例の目的で、次の手順の各ステップでは、systemdタイマーと対応するsystemdサービス・ユニットを使用して、平日22:00時に新しいレスキュー・システムを自動的に生成する方法を示します。

後部レスキュー・システムの作成をスケジュールするには、次のステップを実行します:

ステップ

  1. ReaRレスキュー・システムの作成に使用されるrear mkrescueコマンドを実行するsystemdサービス・ファイルを作成します。

    たとえば、次の内容を含むrear-mkrescue.serviceという名前のファイルを/usr/lib/systemd/systemディレクトリに作成します:

    [Unit]
    Description=Service unit that creates ReaR rescue system using the rear mkrescue command. 
    
    [Service]
    Type=oneshot
    ExecStart=/usr/sbin/rear mkrescue
  2. rear-mkrescue.timerという名前の対応するsystemdタイマー・ファイルを作成して、前のステップで作成したrear-mkrescue.serviceファイルのアクティブ化をスケジュールします。

    たとえば、平日の22:00時間ごとにサービスをトリガーするには、次の内容のファイル/usr/lib/systemd/system/rear-mkrescue.timerを作成します:

    [Unit]
    Description=Timer to activate the service unit according to schedule defined in this file. 
    
    [Timer]
    OnCalendar=Mon..Fri 22:00:00
    
    [Install]
    WantedBy=timers.target

    ノート:

    デフォルトでは、systemdタイマーは、一致する名前(サフィクスを除く)でsystemdサービスをアクティブ化します。 したがって、この例で使用されているファイル名: rear-mkrescue.timerおよびrear-mkrescue.service 詳細は、systemd.timer(5)を参照してください。

  3. タイマーを有効にして起動するには、次のコマンドを実行します:
    sudo systemctl enable rear-mkrescue.timer
    sudo systemctl start rear-mkrescue.timer
  4. systemctl list-timersコマンドを使用して、タイマーが予想どおりにスケジュールされたことを確認します:
    sudo systemctl list-timers

    前述のコマンドは、タイマー単位に関する情報をスケジュール時間の昇順で出力します。 次の出力例では、rear-mkrescue.timerが次にFri 2025-06-06 22:00 GMTでサービスをアクティブ化するようにスケジュールされています:

    NEXT                            LEFT LAST                              PASSED UNIT                         ACTIVATES                     
    ...
    Fri 2025-06-06 21:00 GMT        ...         
    Fri 2025-06-06 22:00 GMT      13h Thu 2025-06-05 22:00 GMT 11h ago rear-mkrescue.timer          rear-mkrescue.service
    Fri 2025-06-06 22:30 GMT..      ...
    ...
systemdタイマーの使用方法の詳細は、マニュアル・ページsystemd.timer(5)を参照してください。 次のリンクにアクセスすることもできます:

ReaRを使用したファイルのバックアップ

レスキュー・システムを作成する以外に、オプションで、完全ファイル・バックアップを同時に生成するようにReaRを構成できます。

tarballバックアップの作成

ファイル全体のバックアップを作成し、結果をtarballとして格納するには、/etc/rear/local.confファイルを編集します。 次のリストでは、定義可能な選択したパラメータについて説明します:

  • BACKUPおよびBACKUP_URL設定では、/srv/backupディレクトリに出力tarファイルが生成されます。次に例を示します。

    OUTPUT=ISO
    OUTPUT_URL=file:///mnt/rescue_system/
    BACKUP=NETFS
    BACKUP_URL=file:///srv/backup/
  • NETFS_KEEP_OLD_BACKUP_COPY設定を使用すると、新しいバックアップを作成する前に名前を変更することで、前のバックアップを保持できます。たとえば:

    NETFS_KEEP_OLD_BACKUP_COPY=y
  • 完全なISOイメージ・ファイルを作成するには、BACKUP_URLを次のように変更します。

    BACKUP_URL=iso:///backup/
  • BACKUP_URLがNFS共有を指し、設定BACKUP=NETFSおよびBACKUP_PROG=tar (デフォルト)が使用されている場合、次のプロパティを構成できます:

    • BACKUP_TYPE設定では、バックアップを増分することによってディスク領域を節約します。次に例を示します。

      BACKUP_TYPE=incremental
    • FULLBACKUPDAYは、BACKUP_TYPE設定に関係なく、週の特定の日に全体バックアップが作成されるようにするために使用されます。 たとえば:

      FULLBACKUPDAY=(Sun)

ReaRを使用したバックアップの生成

最後にバックアップを生成してからファイル・システムが変更されたかどうかを確認するには、次のように入力します。

sudo rear checklayout

/etc/rear/local.confBACKUP設定がNETFSの場合は、ReaRを使用して3種類のバックアップを作成できます。

  • ファイル・バックアップなしでレスキュー・システムを作成します。

    sudo rear mkrescue
  • レスキュー・システムなしでファイル・バックアップを作成します。

    sudo rear mkbackuponly
  • レスキュー・システムおよびファイル・バックアップを作成します。

    sudo rear mkbackup

ReaRレスキュー・システムのテスト

システム・リカバリが可能であることを確認するには、バックアップからリストアできることを定期的にテストする必要があります。 重要なデータを失うことなく安全にリカバリを実行できるテスト・システムをプロビジョニングし、次のステップを実行します。

  1. ReaRレスキュー・システムの作成で生成されたレスキュー・システムのリカバリ・メディアからテスト・システムをブートします。

  2. テスト・システム上の「ReaRを使用したシステムのリカバリ」の手順に従います。 診断情報の詳細は、-vパラメータをリカバリ・コマンドに追加します。次に例を示します。

    rear -v recover
  3. テスト・システムでリカバリが正しく実行されない場合は、ReaR構成を修正してレスキュー・システムを再生成します。

  4. リカバリ・プロセスが成功するまで、テスト・システムでこれらのステップを繰り返します。

ReaRを使用したシステムのリカバリ

Oracle Linuxインストールがブート不可になった場合は、ReaRを使用してシステムをリカバリし、データをリストアできます。 このユーティリティは、そのデバイスに対して生成された専用のレスキュー環境で実行します。

  1. ReaRレスキュー・システムの作成で生成したレスキュー・システムでデバイスをブートします。

  2. ブート・ローダー・メニューからRecover localhostオプションを選択します。

  3. rootユーザーとしてレスキュー・システムにログインします。

    シェル環境では、/root/.ssh/authorized_keysファイルに格納されている資格証明(使用可能な場合)が使用されます。 または、SSH_ROOT_PASSWORD環境変数を手動で設定できます。

  4. 自動リカバリ・プロセスを開始します。

    rear recover

    システムのファイル構造は、/mnt/localディレクトリにレプリケートされます。 必要に応じて、そのディレクトリを外部ソースからファイルを回復するための出力ディレクトリとして使用できます。

  5. tarballの内容を/mnt/localに抽出します。

    tar -xf backup.tar.gz -C /mnt/local

    ノート:

    このステップでは、バックアップtarballがリカバリするシステムと同じシステム上にあることを前提としています。 tarballがリモートで格納されている場合は、最初にシステムに格納する必要があります。

    たとえば、SSH接続経由でtarballを転送し、リモートtarballが/mnt/backups/にあると仮定するには、次を入力します。

    scp root@example.com:/mnt/backups/backup.tar.gz backup.tar.gz

    ネットワーク共有からtarballを転送するには、次のように入力します。

    rsync -avzh root@example.com:/mnt/backups/backup.tar.gz .
  6. /mnt/localディレクトリに.autorelabelという空白のファイルを作成して、次のブート時にラベル変更するようにSELinuxを設定します。

    touch /mnt/local/.autorelabel
  7. システムをリブートしてリカバリ環境を終了します。

    reboot

    SELinuxによってファイル・システム全体のラベルが変更されると、リカバリされたホスト・システムはブート可能になります。

ReaRを使用した複数のバックアップの作成

様々なrearコマンドを使用して、基礎となるシステムのファイルを使用してレスキュー・システムを作成し、/homeディレクトリと/optディレクトリの両方からデータをバックアップできます。

rearの共通設定は/etc/rear/local.confファイルで定義されますが、シナリオごとに別の構成ファイルで個々の値をオーバーライドできます。次に例を示します。

  • /etc/rear/basic_system.conf

  • /etc/rear/home_backup.conf

  • /etc/rear/opt_backup.conf

これらの構成ファイルで、バックアップに含めるフォルダを選択し、出力tarball名を定義します。 より多くの一致を含めるには、指定したパス名にワイルドカード(*)を指定できます。

詳細およびサンプル構成は、https://relax-and-recover.org/documentation/を参照してください。

rearを使用してバックアップを作成するには、次を実行します。

  1. バックアップの実行方法を指定する適切なファイルを構成します。

    たとえば、/etc/rear/home_backup.confファイルに/homeディレクトリのみを含めるように指定するには、次の構成定義を追加します。

    BACKUP_ONLY_INCLUDE="yes"
    BACKUP_PROG_INCLUDE=( '/home/*' )
    BACKUP_PROG_ARCHIVE="backup-${this_file_name%.*}"
  2. 各バックアップを生成します。

    -Cオプションは、使用する構成ファイルを指定します。

    sudo rear -C basic_system mkbackup
    sudo rear -C home_backup mkbackuponly
    sudo rear -C opt_backup mkbackuponly
  3. レスキュー環境内から、同じラベルを使用してシステムをリカバリします。次に例を示します。

    rear -C basic_system recover
    rear -C home_backup restoreonly
    rear -C opt_backup restoreonly

    rearコマンド・パラメータおよびリカバリ・オプションの詳細は、rear(8)マニュアル・ページを参照してください。