tctl コマンド
目的
サブコマンドをストリーミング・テープ・デバイスへ与えます。
構文
tctl [ -f Device ] [ eof | weof | fsf | bsf | fsr | bsr | rewind | offline | rewoffl | erase | retension | reset | status ] [ Count ]
tctl [ -b BlockSize ] [ -f Device ] [ -p BufferSize ] [ -v ] [ -n ] [ -B ] { read | write }
説明
tctl コマンドは、サブコマンドをストリーミング・テープ・デバイスに提供します。Device 変数に -f フラグを指定しないと、TAPE 環境変数が使用されます。環境変数が存在しない場合には、tctl コマンドは /dev/rmt0.1 デバイスを使用します。(tctl コマンドが status サブコマンドを提供する場合には、デフォルト・デバイスは /dev/rmt0 です。) Device 変数には、ロー (ブロックではない) テープ・デバイスを指定しなければなりません。Count パラメーターには、EOF マーカー数、ファイル・マーク数、またはレコード数を指定します。Count パラメーターを指定しないと、デフォルト数は 1 です。
サブコマンド
| 項目 | 説明 |
|---|---|
| eof または weof | Count パラメーターで指定した EOF マーカーの数をテープ上の現在位置に書き込みます。8 ミリのテープ・ドライブ上では、EOF マーカーを以下の 3 個所に書き込むことができます。
9 トラック・テープ・ドライブでは、EOT マークはテープの任意の位置に書き込むことができます。ただし、このサブコマンドは単一データ・ブロックの上書きはサポートしていません。 |
| fsf | Count パラメーターで指定されたファイル・マークの数だけ順方向にテープを移動し、ファイル・マークの EOT (テープの終わり) 側に位置付けます。 |
| bsf | Count パラメーターで指定したファイル・マークの数だけ逆方向にテープを移動し、ファイル・マークの BOT (テープの先頭) 側に位置付けます。 |
| bsf サブコマンドがテープを先頭を過ぎて移動させると、テープは巻き戻され、tctl コマンドが EIO を戻します。 | |
| fsr | Count パラメーターで指定したレコード数だけテープを順方向に移動します。 |
| bsr | Count パラメーターで指定したレコード数だけテープを逆方向に移動します。 |
| rewind | テープを巻き戻します。Count パラメーターは無視されます。 |
| offline または rewoffl | テープを巻き戻してテープ・ドライブをオフラインにします。必要に応じて、テープを取り出します。デバイスが再び使用される前に、テープは再挿入しなければなりません。 |
| erase | テープの内容をすべて消去して巻き戻します。 |
| read | 内部バッファーがいっぱいになるまで、指定されたテープ・デバイスから (指定されたブロック・サイズを使用して) 読み取り、そのデータを標準出力に書き出します。そして EOF (ファイルの終わり) に達するまで、同様に読み取りと書き込みを続けます。 |
| reset | バス・デバイス・リセット (BDR) をテープ・デバイスに送信します。BDR は、デバイスをオープンできず、ビジーでない場合にのみ送信されます。 |
| retension | テープを先頭に移動し、それから最後に移動し、また先頭に戻します。復元中に過度の読み取りエラーがある場合は、retension サブコマンドを実行しなければなりません。 テープが環境極値にさらされた場合、テープに書き込む前に retension サブコマンドを実行しなければなりません。 8 mm のテープ・ドライブは、このコマンドに応答しません。 |
| status | 指定したテープ・デバイスに関する状況情報を表示します。 |
| write | テープ・デバイスをオープンし、標準入力から読み取ったデータをテープ・デバイスに書き込みます。 |
- -b、-n、-p、および -v フラグは、read および write サブコマンドを使用する場合にのみ適用されます。
- -B フラグは、read サブコマンドを使用する場合にのみ適用されます。
フラグ
| 項目 | 説明 |
|---|---|
| -b BlockSize | テープ・デバイスの読み取りと書き込みに使用されるバッファーのサイズをバイト単位で指定します。また、-n フラグがない場合には、テープ・ブロック・サイズも指定します。ブロック・サイズが 0 の場合は、可変長ブロックが使用され、テープ・バッファーのサイズは 32,768 になります。-b フラグを指定しないと、デフォルトのブロック・サイズとテープ・バッファーのサイズは 512 バイトになります。 |
| -B | テープが読み取られるたびに、バッファーの内容が書き込まれます。通常の固定長ではない、可変長レコードを読み取る場合には、このフラグを設定してください。 |
| -f Device | テープ・デバイスを指定します。 |
| -p BufferSize | 標準入力と標準出力で使用されるバッファーのサイズを指定します。デフォルトのバッファー・サイズは 32,768 バイトです。BufferSize の値は、テープ・ブロック・サイズの倍数でなければなりません。 |
| -v | 詳細。各読み取りと書き込みのサイズを標準エラーに表示します。 |
| -n | read サブコマンドまたは write サブコマンドでテープからの読み取り、またはテープへの書き込みを行うときに、可変長レコードを指定します。 |
終了状況
このコマンドは、以下の終了値を戻します。
| 項目 | 説明 |
|---|---|
| 0 | 正常終了。 |
| >0 | エラーが発生しました。 |
例
- rmt1 テープ・デバイスを巻き戻すには、以下のように入力します。
- デフォルトのテープ・デバイス上で 2 つのファイル・マークを順方向に移動するには、以下のように入力します。tctl fsf 2
- /dev/rmt0.6 内のテープに 2 つの EOF マーカーを書き込むには、以下のように入力します。
- 80 バイトのブロックでフォーマットされたテープ・デバイスを読み取り、 結果をファイルに書き込むには、以下のように入力します。
- 80 バイトのブロックでフォーマットされたテープ・デバイスから可変長レコードを読み取り、結果をファイルに書き込むには、以下のように入力します。
- 1024 バイトのバッファー・サイズで、可変長レコードをテープ・デバイスに書き込むには、以下のように入力します。
- 512 バイトのブロックでテープ・デバイスに書き込み、標準入力に 5120 バイトのバッファーを使用するには、以下のように入力します。
注: 4 分の 1 インチ (QIC) のテープ・ドライブに有効なブロック・サイズは、0 と 512 だけです。
- 8 ミリ・テープ上の複数のバックアップの 1 つを上書きするには、テープをバックアップ・ファイルの先頭に置き、以下のコマンドを発行します。
最初のコマンドは、テープをファイル・マークのテープの先頭側に移動させます。 2 番目のコマンドによりファイル・マークが書き直されますが、これは書き込みが拡張ファイル・マークより手前で許可されているためです。ドライブの消去ヘッドは、書き込みヘッドが到達する前にデータを消去するため、write サブルーチンは既にテープ中にあるデータをオーバーライドすることができます。ただし、後続のすべての旧データは、そのファイル・マーカーが意味を持たなくなっているため失われます。
注: write サブルーチンは、短ファイル・マークの後にブランク・テープが続いている場合を除いては、短ファイル・マークをオーバーライドできません。既存のデータをオーバーライドするには、この例の場合と同様に、(SMIT インターフェースにより指定されているとおり) テープを拡張ファイル・マークとともに書き込まなければなりません。
ファイル
| 項目 | 説明 |
|---|---|
| /dev/rmtn | ロー・ストリーミング・テープ・インターフェースを指定します。 |
| /usr/bin/tctl | tctl コマンドが入っています。 |