strchg コマンド

目的

ストリーム構成を変更します。

構文

モジュールをストリームにプッシュする

strchg -h Module1 [ , Module2 ... ]

モジュールをストリームからポップする

strchg -p [ -a | -u Module ]

モジュールをプッシュおよびポップして構成ファイルを適合させる

strchg -f File

説明

strchg コマンドは、ユーザーの標準入力に関連するストリームの構成を変更するために使用されます。 strchg コマンドは、ストリームにモジュールをプッシュしたり、 ストリームからモジュールをポップしたり、またはその両方を行います。 そのストリームの構成を変更できるのは、root ユーザーまたは STREAMS デバイスのオーナーだけです。 それ以外のユーザーがその構成を変更しようとしても、strchg コマンドは成功しません。

注: モジュールが間違った順序でプッシュされると、ストリームは期待どおりに機能しません。

フラグ

項目 説明
-a 一番上のドライバーより上にあるすべてのモジュールをストリームからポップします。 -p フラグは、-a フラグの前に指定しなければなりません。
-f File 指定したファイルで与えられた構成にストリームを準拠させるために、必要なモジュールをプッシュしたり、ポップしたりします。

-h-p-f フラグは、同時に使用できません。

-h Module1 ストリームにモジュールをプッシュします。 プッシュされる順序でコマンド・ラインにモジュールをリストします。
-p ストリームからモジュールをポップします。 このフラグだけを使用すると、-p フラグはストリームの一番上にあるモジュールをポップします。
-u Module 指定されたモジュールより上にあるすべてのモジュールをストリームからポップします。 -p フラグは、-u フラグの前に指定しなければなりません。

-a および -u フラグは同時には指定できません。

パラメーター

項目 説明
Module1 ストリームにプッシュするモジュールを指定します (-h フラグによって使用されます)。
Module ストリーム上に残る一番上のモジュールを指定します。 このモジュールより上にあるモジュールすべてをストリームからポップします (-u フラグによって使用されます)。
File ストリームの希望する構成を示すモジュールのリストが入っています。 各モジュール名は、別々の行に記述しなければなりません。 この場合、最初の名前が一番上のモジュールを表し、最後の名前がドライバーに一番近いモジュールを表します。

戻り値

strchg コマンドは、正常に終了すると、0 の値を戻します。 それ以外の場合、ゼロ以外の値を戻し、使用方法が正しくない、モジュール名が正しくない、モジュールの数が多過ぎてプッシュできない、ストリーム上の ioctl 操作の失敗、または File パラメーターで指定したファイルのオープンが失敗したことを表すエラー・メッセージを表示します。

  1. ldterm モジュールをストリームにプッシュするには、以下のように入力します。
    strchg -h ldterm
  2. /dev/term/24 デバイスに関連するストリームから一番上のモジュールをポップするには、以下のように入力します。
    strchg -p < /dev/term/24
    この場合、ユーザーはこのデバイスのオーナーか、root ユーザーでなければなりません。
  3. fileconf ファイルが以下の内容を含んでいるとします。
    compat
    ldterm
    ptem
    以下のコマンドにより、ptem モジュールがドライバーの上にプッシュされ、 その後に ldterm モジュールがプッシュされ、 そして compat モジュールがストリーム・ヘッドの一番近くにプッシュされるように、 ストリームに構成されます。
    strchg -f fileconf