スポンサーリンク

RMT(8) FreeBSD システム管理者マニュアル RMT(8)

名称

rmt − リモートプログラムから磁気テープの操作を行なうためのプロトコルモ ジュール

書式

rmt

解説

rmt ユーティリティは、リモートダンプおよびリストアを行なうプログラムか ら、プロセス間通信を用いて磁気テープドライブを操作するために用いられま す。通常は rexec(3) もしくは rcmd(3) からの呼び出しに応じて起動されます。

rmt ユーティリティは、磁気テープの操作要求を受け付け、コマンドを実行しま す。その後、状態を返却します。全ての応答は、 ASCII 文字列および以下の 2 つの形式を組み合わせて行なわれます。コマンド実行が成功した場合は、以下の 応答があります。

Anumber\n

number は、10 進の ASCII 表現です。コマンド実行が失敗した場合には、以下の 応答があります。

             Eerror-number\nerror-message\n

error-number は、 intro(2) に記述のあるエラー番号であり、 error-message は、 perror(3) によって出力されるエラー文字列です。プロトコルは、以下のコ マンドを含み、コマンドと引数の間、もしくは引数間ではスペースは挿入されま せん。 ‘\n’ の表示は、その部分で改行が要求されています:

         Odevice\nmode\n

指定された devicemode で指定された属性でオープンします。 device はフルパスで指定され、 modeopen(2) で用いられる 10 進 の ASCII 表現です。すでにデバイスがオープンされていた場合、そのデ バイスは一旦クローズされ、再びオープンされます。

Cdevice\n
現在オープンされているデバイスをクローズします。 device 指定は無 視されます。

Lwhence\noffset\n
指定された引数を用いて、 lseek(2) を実行します。返却値の意味は、 lseek(2) システムコールのそれと同じです。

Wcount\n
オープンされているデバイスに対し、データを書き込みます。 rmt ユー ティリティは、要求元から count バイトのデータを読み込みます。予期 しない EOF を読み込んだ場合、異常終了します。本コマンドの返却値 は、 write(2) システムコールと同じです。

Rcount\n
オープンされてるデバイスから count バイトだけのデータを読み込みま す。 count がデータバッファのサイズ (10kバイト) を超える場合、 データバッファサイズに切り詰められます。 rmt ユーティリティは read(2) システムコールを実行し、読み込みが成功すると Acount-read\n と返答します。そうでなければ、標準的な形式でエラー が返却されます。読み込みが成功すると、読み込まれたデータは要求元 に送信されます。

Ioperation\ncount\n
指定された引数を用いて ioctl(2) の MTIOCOP リクエストを実行しま す。引数は、10 進の ASCII 表現に置き換えられ、 ioctl(2) で使用す る構造体のメンバ mt_op および mt_count にそれぞれ格納されます。操 作が成功した場合の返却値は、引数 count の値です。

S
ioctl(2) システムコールの MTIOCGET リクエストを用い、オープンされ ているデバイスの状態を返却します。操作が成功すると、ステータス バッファのサイズとともに ‘‘ack’’ が送信されます。それからステータ スバッファが (バイナリ形式で) 送信されます。

上記以外のコマンドを rmt が受信した場合、 rmt は終了します。

診断

全ての返答は、上記の通りです。

関連項目

rcmd(3), rexec(3), mtio(4), rdump(8), rrestore(8)

バグ

本コマンドをリモートファイルアクセスプロトコルとして使用しないで下さい。

歴史

rmt ユーティリティは 4.2BSD から登場しました。

FreeBSD 10.0 June 1, 1994 FreeBSD 10.0

スポンサーリンク