この章では,tar と mt の簡単な使い方を紹介します.
利用できるユーティリティには,tar, dd, cpio, afio があります.テープおよび ftape ドライバーの潜在能力をフルに活用するためには mt が必要です.初心者にお 薦めできるのは tar です.これは多数のディレクトリーのアーカイブを作成したり, アーカイブから特定のファイルを抜き出したりする機能を備えたプログラムです. cpio を使えば tar よりも小さくかつ柔軟性に富むアーカイブを作成できるそうです. しかし著者自身は cpio を使用した経験はありません.afio はファイルを一つづつ 圧縮してから,圧縮済みファイルを一つに取りまとめるタイプのプログラムです.こ の方法を採用することによって,エラー発生点「以降」のファイルにもアクセスする ことが可能となっています.これに対し gzip を用いて圧縮した tar ファイルの場合 だと,エラー発生点以降のデータは失われてしまうのです!(これは「バックアップは 圧縮しない」という考え方に対する有力な論拠になると著者は考えています)
tar を用いてカーネルソースのバックアップを作成するためのコマンドは以下の通り
です.(ソースは /usr/src/linux
にあるものとする)
cd /usr/src
tar cf /dev/ftape linux
この例の場合,ファイルの圧縮は行っていません.しかし,そのおかげでテープはず
っとスムースに走行するようになっています.圧縮したい時には(tar 1.11.2が必要
です),-z
オプションを付け加えて, '
tar czf /dev/ftape linux
'としてください.
tar, dd, mt の詳しい使い方については,それぞれに同梱されているマニュアルペー ジ・texinfo ファイルを参照してください.
tar は最初の引数をオプションと判断します.従って '-' は必要ありません.
すなわち 'tar xzf /dev/ftape
' と'tar -xzf /dev/ftape
' は
同じものなのです.
上の節で作成したカーネルソースのアーカイブを復旧してみることにしましょう.復 旧は簡単です.以下のコマンドを実行するだけです.
tar xf /dev/ftape
圧縮していた場合には,次のようにしてください.
tar xzf /dev/ftape
圧縮していた場合,gzip は「trailing garbage after the very end of the archive 」というエラーメッセージを表示します(これはパイプが壊れたことに伴う メッセージです).このエラーメッセージは無視しても差し支えありません.
これ以外のユーティリティーについては,それぞれのマニュアルページを参照してく ださい.
tar には二つのアーカイブを比較するためのオプション -d
が設けられて
います.カーネルソースのバックアップをテストするためには,次のようにして
ください.
tar df /dev/ftape
tar のマニュアルページをお持ちでなくても,(まだ)あきらめることはありません.
tar はオプションリストを内蔵しています. '
tar --help 2 > &1 | more
' をためしてみてください.
複数の tar ファイルを1本のテープに収めるためには mt というユーティリティーが必 要です.Slackware, Debian といった主要配布には mt が含まれているので,恐らくす でにこれをお持ちのことだと思います.
tar はテープアーカイブを一つだけ作成します (tar の名前の由来は Tape ARchiev にあります).従って,複数のファイルのことやテープ上のどこにファイルが位置す るかについて tar は何も関知しません.tar はデバイスの読み書きをするだけの機能 しか備えていないのです.これに対し,mt はテープの前進・後進を完全にコントロ ールする機能を備えています.しかしながら,テープからの情報の読み書きに関する 機能はありません.御賢察の通り,tar と mt を組み合わせて利用するのがコツなの です.
nrft[0-3](nftape)デバイスを使用している場合には, mt を用いて
テープの正確な箇所を指定することができます.('
mt -f /dev/nftapte fsf 2
' とすれば,ファイルマーク=tar file を
二つ越えた場所でテープは停止します)こののち,tar を使って必要なデータの
読み書きを行います.
アーカイブを拡張する方法,つまりデータが書き込んであるテープにあとから何かを かき加える方法はありますか?
tar の説明書には 'tar -Ar
'を使うようにとありますが,これはうまく
機能しません.これは現行バージョンの ftape が抱える限界の一つであり,
アーカイブにファイルを付け加える方法は今のところ存在しません.
テープにはファイルシステムがないので,テープのマウント・アンマウントというも のはありません.バックアップを作成するためには,テープを挿入し tar コマンド (あるいはテープにアクセスできる他のコマンド)を実行するだけでいいのです.