バックアップ · 1 min read · Sep 12, 2025

Rocky Linux 9にRsnapshot Linuxバックアップをインストールする方法

RsnapshotはLinuxベースのマシン用のバックアップユーティリティです。ほとんどのLinuxディストリビューションで利用可能で、パッケージマネージャを通じて簡単にインストールできます。rsnapshotはPerlで書かれており、依存関係はありません。また、ローカルおよびリモートバックアップをサポートしています。

Rsnapshotを使用すると、ローカルディレクトリをバックアップできます。リモートバックアップについては、rsnapshotは「ssh」と「rsync」を利用します。

このガイドでは、Rocky Linux 9サーバーにRsnapshotをインストールおよび構成する方法を学びます。また、RsnapshotとCronを使用して自動バックアップを行う方法も学びます。

前提条件

始める前に、以下のものを用意してください:

  • Rocky Linux 9サーバー
  • 管理者権限を持つ非ルートユーザー

Rsnapshotのインストール

RsnapshotはUnix系オペレーティングシステム用のバックアップユーティリティです。RedHatベースのディストリビューションでは、EPEL(Enterprise Linux用の追加パッケージ)リポジトリを通じてRsnapshotをインストールできます。このステップでは、EPELリポジトリをシステムに追加し、その後Rsnapshotをインストールします。

まず、以下のコマンドを実行してEPEL(Enterprise Linux用の追加パッケージ)リポジトリをRocky Linuxサーバーに追加します。確認のために「 Y 」を入力してEPELリポジトリを追加します。

sudo dnf install epel-release

epel-releaseを追加

EPELが追加されたら、以下の「dnf」コマンドを実行して「rsnapshot」パッケージをインストールします。インストールを確認するために「 Y 」を入力します。

sudo dnf install rsnapshot nano firewalls

rsnapshotをインストール

インストールが完了したら、以下のコマンドを使用してバイナリファイルの場所と「rsnapshot」バージョンを確認します。

which rsnapshot  
rsnapshot --version

以下の出力で、「 rsnapshot1.4.5 が「 /usr/bin/rsnapshot 」にインストールされていることがわかります。

rsnapshotを確認

リモートバックアップのためのSSHの設定

Rsnapshotを使用してSSH経由でリモートバックアップを行うには、サーバーへのキー認証を設定する必要があります。RsnapshotサーバーからターゲットサーバーにSSHキーを使用してログインできることを確認してください。このステップでは、RsnapshotサーバーでSSHキーを生成し、公開鍵をターゲットバックアップサーバーにアップロードします。

Rocky Linuxサーバーで、以下の「 ssh-keygen 」コマンドを実行して新しいSSHキーを生成します。

ssh-keygen -t ed25519
  • ENTERを押して、キーをデフォルトの場所「 ~/.ssh 」ディレクトリに保存します
  • パスフレーズを求められたら、ENTERを2回押します

キーを生成

次に、以下の「 ssh-copy-id 」コマンドを実行してターゲットマシンにSSHキーをアップロードします。この例では、サーバー「 192.168.10.50 」からRocky Linuxサーバーにデータをバックアップします。

ssh-copy-id [email protected]

プロンプトが表示されたらパスワードを入力します。アップロードが完了したら、パスワードなしでターゲットサーバーにログインでき、Rsnapshotの設定ができるようになります。

ssh-copy-idキーをアップロード

ローカルおよびリモートバックアップのためのRsnapshotの設定

SSHキー認証の設定が完了したので、Rsnapshotを設定できます。この例では、バックアップディレクトリ、バックアップ保持、ローカルファイルのバックアップを設定し、SSHを介してリモートバックアップを作成します。

デフォルトの設定「’/etc/rsnapshot.conf’」をバックアップし、「nano」エディタを使用して修正します。

sudo cp /etc/rsnapshot.conf /etc/rsnapshot.conf.orig  
sudo nano /etc/rsnapshot.conf

バックアップ先パスを「 snapshot_root 」オプションに追加します。この例では、すべてのバックアップが「 /data/backup 」ディレクトリに保存されます。

snapshot_root /data/backup/

オプション「 cmd_rsync 」、「 cmd_ssh 」、「 cmd_du 」、「 cmd_rsnapshot_diff 」のコメントを外します。すべてのコマンドのパスが正しいことを確認してください。

cmd_rsync /usr/bin/rsync  
cmd_ssh /usr/bin/ssh  
cmd_du /usr/bin/du  
cmd_rsnapshot_diff /usr/bin/rsnapshot_diff

デフォルトの「retain」設定を以下のように変更します。命名は任意で、必要に応じて変更できます。この例では、「 retain daily 6 」が新しいバックアップディレクトリ「 daily.0 」から「 daily.5 」を作成します。

retain daily 6  
retain weekly 7  
retain monthly 4

logfile 」オプションのコメントを外して、Rsnapshotのログ記録を有効にします。

logfile /var/log/rsnapshot.log

ssh_args 」のコメントを外して、追加のSSHコマンドを渡します。特に、非標準ポートでSSHを実行している場合は注意が必要です。

ssh_args -p 22

次に、「 backup 」設定を以下のように変更して、ローカルディレクトリ「 ‘/home/arvdl’ 」をバックアップします。

backup /home/arvdl/ local

SSH経由でのリモートバックアップには、以下のような設定を使用します。この例では、「 192.168.10.50 」サーバーから「 /etc 」および「 /var/www 」ディレクトリをRsnapshotサーバーにバックアップします。また、SSHキー認証を使用して正しいSSHユーザーを指定してください。

backup [email protected]:/etc/ rocky9  
backup [email protected]:/var/www rocky9

完了したら、ファイルを保存してエディタを終了します。

最後に、以下の「rsnapshot」コマンドを実行して設定を確認します。適切に設定されていれば、「 Syntax is OK 」という出力が表示されます。

rsnapshot configtest

Rsnapshotでのバックアップのテスト

この時点で、Rsnapshotを設定し、ローカルおよびリモートサーバーのバックアップを作成しました。次に、「rsnapshot」コマンドラインを介して手動でRsnapshotでバックアップを行います。また、バックアップサイズを確認し、Rsnapshotのログファイルを確認します。

手動でバックアップを取るには、「 rsnapshot 」コマンドの後に保持名(例:「 daily 」)を続けて実行します。これにより、「 snapshot_root 」ディレクトリに新しいバックアップが作成されます。

rsnapshot daily

snapshoot_root 」ディレクトリを確認して、バックアップが作成されていることを確認します。この例では、「snapshot_root」ディレクトリは「 /data/backup 」です。

ls /data/backup

次に、以下の「 rsnapshot 」コマンドを実行してバックアップのサイズを確認します。以下の例では、私たちのファイルのバックアップは「 3MB 」です。

rsnapshot du

rsnapshot du

最後に、「/var/log/rsnapshot* 」のRsnapshotログファイルを確認して、Rsnapshotの操作に関する情報を取得できます。

cat /var/log/rsnapshot

ログを確認

RsnapshotとCronjobによる自動バックアップ

この最後のセクションでは、RsnapshotとCronjobを使用して自動バックアップを設定する方法を学びます。これにより、「 rsnapshot 」コマンドが定期的に自動的にCronを介して実行されます。

新しいcron設定ファイル「 /etc/cron.d/snapshot 」を以下の「 nano 」エディタで作成します。

sudo nano /etc/cron.d/rsnapshot

以下の設定を挿入して、Rsnapshotのcrontabを設定します。以下の例では、「rsnapshot daily」、「rsnapshot weekly」、および「rsnapshot monthly」を実行します。

# 毎日のバックアップ  
0 0 * * * root rsnapshot daily  
  
# 毎週のバックアップ  
0 0 * * 0 root rsnapshot weekly  
  
# 毎月のバックアップ  
0 0 1 * * root rsnapshot monthly

完了したら、ファイルを保存してエディタを終了します。

結論

おめでとうございます!Rocky Linux 9サーバーにRsnapshotのインストールと設定を完了しました。また、基本的な「rsnapshot」コマンド、複数のRsnapshot保持の設定方法、SSHを介してリモートバックアップを行う方法、さらにRsnapshotとCronjobを使用して自動バックアップを設定する方法を学びました。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。