image header
Index >> Plamo Linux Fan >> バックアップメモ
                バックアップメモ
2000/05/23

1.目的

 DNS だの DHCP だのにしか使ってないうちは、インストール時のメモと変更した設定ファイルを FD にでも書き出しておけば、壊れても充分復旧可能ですけど、WEB だ FTP だメールだ、しまいには Samba や Mars/NWE で完全なファイルサーバにした暁には、定期バックアップ無しで運用するなんて怖くてできませんね(^^;
今「ドキッ」とした貴方、早く予算申請しましょう(笑)
 最近出始めているサーバ向けディストリビューションでは、バックアップユーティリティまで簡単操作できる形でパッケージされるものもあるらしいですが、Plamo な世界では基本的に自分で何とかしなくてはなりません(^-^)b
 まぁ、これが Plamo のいいところなんですけどね。

2.入手先

SUNsiteのバックアップツールアーカイブ
ftp://sunsite.sut.ac.jp/pub/archives/linux/sunsite-unc/system/backup/!INDEX.html

3.導入方法

 上記のSUNsiteを覗くと、いろいろなツールがあるのがわかるのですが、これだけではどれがメジャーなのか、どれだと自分の環境で有効に使えるのか、さっぱりわかりません(^^;
 そこで、ここでは、僕の独断と偏見で選んだものについてだけ書いてみることにします。「やっぱこれじゃねぇだろB-(」という方、是非ご連絡を。

  1. ftpbackup-2.1.tar.gz
     まず、サーバの移行などで役に立つ「ftpbackup」を試してみました。
     これ、何が役に立つと思ったかというと、ローカルホストのディスク容量に余裕がなくて、且つテープドライブなどの2次媒体を持たないマシン(ほとんどそうでしょう(^^;)をバックアップして、ディストリビューションのバージョンを上げたり、全く異なるマシンへ移行したりするのにはもってこいだと思ったわけです。
     今までは、同じような構成でマシンを作ってOSインストールしてから、個別にファイルを転送していたのを、FTP で接続可能なディスク容量に余裕のある全く別のマシンに自動でファイルを転送できて、当該マシンを作りなおしてから戻せるのです。
     マシンが2台必要だという事と、ネットワークで結ばれている必要があるという条件をクリアしていれば、これは便利でしょう(^-^)b

     これをインストールするには、まず上記アーカイブを展開します。

    # tar xvfz ftpbackup-2.1.tar.gz

     コードをコンパイルして、インストールします。

    # cd ftpbackup-2.1
    # make
    # make install

     これで終わりです。本体は、/usr/local/bin へインストールされます。マニュアルは、man ftpbackup で参照可能です。

  2. mt-st
     これは、テープドライブの制御を行う、割と一般的なツールらしいですね。導入は、Plamo 1.4.x の場合はパッケージになっているので、pkgtool や installpkg で追加するだけです。plamo/ap1/mt_st.tgz です。

    # mount /cdrom ※CD-ROMメディアで持っている場合
    # cd /cdrom/plamo/ap1
    # installpkg mt_st.tgz

  3. afio-2.4.6
     cpio に代わるバックアップ用アーカイブツールだそうな。この手のツールの代表的なものは、なんといっても tar でしょうが、Backup-mini-HOWTO にあるように、tar では途中の一部が壊れてしまうとそれ以降のデータすべてが読み出せなくなるので、あまり向かないらしいです。言われてみればそりゃぁそうですね(^^; ちなみに普段 NetWare サーバや NT サーバのバックアップに使っているバックアップユーティリティは、こういう考え方に則っているようですから、このほうがいいのでしょう。

     これをインストールするには、まず上記アーカイブを展開します。

    # tar xvfz afio-2.4.6.tgz

     コードをコンパイルし、インストールします。

    # cd afio.2.4.6
    # make
    # make install

     これで終わりです。本体は、/usr/bin へインストールされます。マニュアルは、man afio で参照可能です。

4.運用

  1. ftpbackup の使い方
     たとえば、僕のユーザディレクトリ(/home/que/)をそっくりそのまま別のマシンへ転送してしまうことができます。しかも、当該ホスト上のディスク容量があまりなくても(少なくとも同容量のアーカイブを作成できるスペースがなくても)です。
     下記のようにします(tar を作る前提で)。
    # tar cvfzP - /home/que/ | ftpbackup -h hostname -u que -d /home/que -b hostname.que.tar.gz
     すると、パスワードを聞かれるので正しいパスワードを入れると、後はゆっくりと(そう、ほんとにゆっくりと)圧縮付きでアーカイブしながら他のホストへ転送してくれます。
     これをシェルスクリプトに書いて、crontab -e でスケジュールに加えれば、毎日でも毎週でも毎月でも、任意の間隔で定期的に他ホストへバックアップを転送することができます。ただし、普通の on-disk アーカイブとは異なり、追記や一部差し替え、一部削除などの細かい操作はできない(よく考えれば当たり前だが)ので、一発でバックアップできるある程度上位のディレクトリを指定するか、必要数だけアーカイブを作成するかのいずれかをする必要があります。不便といえば不便ですが、なにも無いよりはましでしょう(^-^)b

  2. mt-st の使い方
     基本的には、テープドライブを操作することしかできません。これ自身がバックアップを行うわけではないのですが、どうもバックアップを行うツールとデバイスを制御するツールとは切り離されているのが UNIX では当たり前らしいですね(^^;
     一部はドライブ制御まで含んだものがあるようですが、インタラクティブにしか操作できず、結局自動バックアップには使えなかったりします(^^;

     よくありがちな操作を列挙します。これ以外は、man mt して調べてください。または、dump-restore mini HOWTOあたりでも、mt コマンドの使い方に言及していますから、一読をお勧めします。

    mt status
    文字通り、ドライブのステータスを見る
    mt offline
    テープを巻き戻した上、吐き出す
    mt eod
    テープを使用済み領域の末尾へ移動する
    テープへ追記する前に必要な処理
    mt rewind
    文字通り、テープの巻き戻し
    mt datcompression
    DAT ドライブが圧縮をサポートしている場合、そのオンオフを切り替えたり、現状を確認したりする
    mt tell
    テープの現在位置を知る
    ブロック単位で表示されるので、これに [mt status] で得られるブロックサイズを掛ければ、何バイト目あたりにいるかがわかる
    [mt eod] してこれをすると、使用済み容量がわかるという仕掛け

  3. afio の使い方
     参考文献を読むと詳しく書いてあるので、たいした説明も要らないでしょう(笑)
     たとえば、/home 以下を丸ごとバックアップしたいなら、下記のようにします。

    # find /home | afio -ovZ -L /var/log/backup.log /dev/st0 2&>1 | tee /var/log/backup.lis

付録1.参考文献

JFの文書
Backup-mini-HOWTO
dump-restore-mini-HOWTO
taper ホームページ
http://www.e-survey.net.au/taper/
Index >> Plamo Linux Fan >> バックアップメモ

image footer