mtコマンドでテープの操作
〜テープの早送り&巻き戻し〜
0.改定履歴
- 1998.01.20 初版
- 1998.02.03 内容追加
1.はじめに
このドキュメントは,Solaris2.5.1で,テープを扱うときのコマンド,mtの説明である.
2.mtのコマンドリファレンス
mt [-f テープ装置] コマンド [回数] |
コマンド | 意味 |
---|---|
fsf | 指定した回数だけファイルの読み取り位置を進める. |
bsf | 指定した回数だけファイルの読み取り位置を戻す. |
rewind | テープを巻き戻す. |
|
指定した番号のボリュームまで移動する. |
|
テープのたるみをなくす. |
|
テープの内容を消去する. |
この他のコマンドもあるが,ここでは説明しない. Solaris2.5.1では,mtコマンドは(manで)日本語化されているので,より知りたい場合にはそれを参照する.
3.テープを先頭まで巻き戻したいときは?
デバイス/dev/rmt/0のテープを先頭まで巻き戻す場合は,次のコマンドを入力する.
|
4.マルチボリュームのテープ
マルチボリュームとは,1つのテープに幾つかの書き込みがある場合をさす. テープに入っているファイルが複数ある事を指しているわけではない.
たとえば,ufsdumpコマンドにて,次の様なコマンドを実行した場合.
root@duo: ufsdump 0ufc /dev/rmt/0n /dev/rdsk/c0t0d0s3 root@duo: ufsdump 0ufc /dev/rmt/0 /dev/rdsk/c0t0d0s6 |
この場合,1つ目のコマンドでNo rewindオプションを指定しているので,次のような動きになる.
- 1つ目をテープに吸い上げる
- テープは撒き戻さない
- 2つめをテープに吸い上げる
- テープを撒き戻す
- No Rewindオプションを指定しない場合は,基本的にテープを撒き戻すようである.
この場合,テープには次のように書き込まれる.


テープを入れた状態では,普通,ヘッドはテープの先頭を指している.

テープへの書き込みが終り,No Rewindを指定してあるのでEOFが書き込まれた後の位置にヘッドが置かれている.

2つめのコマンドでは,No Rewindが指定されていないので,テープが先頭まで戻る.
4.1.EOFの1つ先・1つ前に移動したい場合
たとえば,次のようにヘッドが1つ目と2つ目の間にいる場合に,3つ目まで移動させたい場合.

テープデバイスが/dev/rmt/0だとすると,次のようなコマンドになる.
|
逆に1つ戻したい場合は次のようなコマンドになる.
|
この例の場合,1つ戻るとテープの先頭まで戻るのでbsfを使う以外にrewindを使っても良い.
4.2.テープの指定したボリュームに移動したい場合
テープのヘッドがどこにあろうが,指定したボリュームに移動させたい場合は,次の2つの方法がある.
たとえば,次の図のように3つ目の先頭まで持ってきたい場合.

mt -f /dev/rmt/0 rewind mt -f /dev/rmt/0 fsf 2 |
テープの位置がどこにあろうが,一旦巻き戻して移動する. その場合,ボリュームの前まで移動するので,3つ目であれば,EOF2つ目までとなる.
mt -f /dev/rmt/0 fsf 3 |
テープの位置がどこにあろうが,テープ全体からみた絶対位置を指定するだけである.
詳しくは知らないが,fsfなどで移動したとして,テープの何番目のボリュームの位置にヘッドがいるかを管理しているならば,絶対位置からの呼出しはrewindを用いて先頭から行なうよりも処理が高速化されるかと思われる.
5.テープのメンテナンス
テープを使っていくと,ゆるみがでてくる. そこで定期的にテープの緩みを解除するいつ用がある. それを行なうオプションがmtコマンドには用意されている.
|
このコマンドを実行すると,次のような動きになる.
- テープを先頭まで巻き戻す.
- テープをリールの終わりまで進める.
- テープを先頭まで巻き戻す.
6.データの機密化
データの機密漏洩を防ぐために,使い古したテープのデータを消去する必要がある.(とおもう)
eraseオプションを使えばテープのデータを消去できる.
このコマンドでは,テープのデータ全てを消すことになるので注意する.
|