バックアップ · 1 min read · Feb 08, 2026
rdiff-backupによる自動バックアップ - ページ 2
ステップ 3: server1.example.com の公開鍵を編集する
server1.example.com に root としてログインし、 /root/.ssh/authorized_keys を確認してください。以下のようになっているはずです:
| ssh-rsa AAAAB3Nza[...]W1go9M= rdiff-backup@backup |
次に、以下の文字列を /root/.ssh/authorized_keys の先頭に追加します:
command=”rdiff-backup –server –restrict-read-only /“,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty
これは、鍵とスペースで区切られた1行(!)でなければなりません:
| command="rdiff-backup --server --restrict-read-only /",from="backup.example.com",no-port-forwarding,no-X11-forwarding,no-pty ssh-rsa AAAAB3Nza[...]W1go9M= rdiff-backup@backup |
これにより、ユーザー rdiff-backup が backup.example.com から server1.example.com にSSH接続した際に rdiff-backup –server –restrict-read-only /* コマンドが実行されます。–restrict-read-only / は、rdiff-backup が server1.example.com で読み取り専用アクセスのみを持つことを保証します。これが機能するかどうかは、あなたのrdiff-backupのバージョンによります。これが機能しない場合は、–restrict-read-only /* を省略して、次のように読み取ります:
command=”rdiff-backup –server”,from=”backup.example.com”,no-port-forwarding,no-X11-forwarding,no-pty
from=”backup.example.com” には、backup.example.com のIPアドレスの逆引きが返すホスト名を使用する必要があります。例えば、backup.example.com のIPアドレスが 1.2.3.4 で、**
dig -x 1.2.3.4
が返すのは
| rdiff-backup@backup:~$ dig -x 1.2.3.4 ; <> DiG 9.2.4 <> -x 1.2.3.4 ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38020 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;4.3.2.1.in-addr.arpa. IN PTR ;; ANSWER SECTION: 4.3.2.1.in-addr.arpa. 43200 IN PTR server3245.somehoster.com. ;; Query time: 118 msec ;; SERVER: 145.253.2.75#53(145.253.2.75) ;; WHEN: Thu Oct 13 14:56:03 2005 ;; MSG SIZE rcvd: 83 rdiff-backup@backup:~$ |
であれば、server3245.somehoster.com を使用する必要があります:
command=”rdiff-backup –server –restrict-read-only /“,from=”server3245.somehoster.com”,no-port-forwarding,no-X11-forwarding,no-pty
また、backup.example.com のIPアドレスを使用することもできます:
command=”rdiff-backup –server –restrict-read-only /“,from=”1.2.3.4”,no-port-forwarding,no-X11-forwarding,no-pty
次に実行します
chmod -R go-rwx /root/.ssh
その後、 /etc/ssh/sshd_config を確認してください。以下の行が含まれているはずです:
| RSAAuthentication yes PubkeyAuthentication yes |
/etc/ssh/sshd_config を変更した場合は、sshを再起動します:
/etc/init.d/ssh restart
ステップ 4: backup.example.com で rdiff-backup をテストする
backup.example.com に戻り、再びユーザー rdiff-backup として、バックアップをテストします:
cd /backup
rdiff-backup server1_backup::/boot boot
2番目のコマンドには server1_backup という文字列が含まれています。これは、host の後に /backup/.ssh/config で使用した文字列です。この2番目のコマンドでは、ユーザー rdiff-backup が server1.example.com に root ユーザーとして接続し、server1.example.com のディレクトリ /boot を backup.example.com のディレクトリ /backup/boot に保存します。これが機能し、パスワードを入力する必要がない場合は、おめでとうございます!成功しました!
今残っているのは、cronジョブを作成することだけです。引き続きユーザー rdiff-backup として、次のコマンドを実行します:
crontab -e
そして、次のようなcronジョブを作成します:
40 2 /usr/bin/rdiff-backup –exclude /tmp –exclude /mnt –exclude /proc –exclude /dev –exclude /cdrom –exclude /floppy server1_backup::/ /backup/server1*
これにより、毎晩2時40分にバックアップが実行され、server1.example.com のディレクトリ / とすべてのサブディレクトリ(/tmp, /mnt, /proc, /dev, /cdrom, /floppy を除く)が backup.example.com の /backup/server1 に保存されます。
(注(少し脱線しますが): Debian Sarge では crontab -e は自動的にエディタ nano を開きます。vi エディタに慣れている場合は、次のコマンドを実行します:
rm -f /etc/alternatives/editor
ln -s /usr/bin/vi /etc/alternatives/editor
その後、crontab -e を実行すると、vi が開きます。)
より多くの rdiff-backup コマンド(特にバックアップの復元方法)を知りたい場合は、次のコマンドを実行します:
man rdiff-backup
そして、http://www.nongnu.org/rdiff-backup/examples.html を確認してください。
リンク
rdiff-backup ホームページ: http://www.nongnu.org/rdiff-backup/index.html
rdiff-backup の例: http://www.nongnu.org/rdiff-backup/examples.html
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。