主要メッセージの手引き

パイプが切断されました。

原因

多くの場合、(head プログラムに多数の行をパイプした場合などのように) この状態は正常であり、メッセージは単なる情報にすぎません。パイプ上の書き込みが読み取りプロセスを発見できない場合は、この状態が発生します。その場合は、通常、実行中のプログラムに対する信号が生成されますが、プログラムが信号を無視すると、このメッセージが表示されます。

対処方法

パイプの最後でプロセスを調べ、終了した理由を判断します。

テクニカルノート

このエラーのシンボルの名前は、EPIPE、errno=32 です。

バスエラー

原因

制限されているかまたは存在しないデバイスに入出力しようとしたことを示す信号をプロセスが受け取りました。読み取り専用ファイルシステムを除き、通常、このメッセージはコアダンプを伴います。

対処方法

デバッガを使用してコアファイルを調べ、バスエラーを引き起こしたプログラム障害またはシステム障害を判断します。できれば、バスエラーの前にデータ損傷が発生していないかどうか、プログラムの出力ファイルを調べてください。

テクニカルノート

バスエラーは、プログラミングエラー、またはシステム上のデバイス損傷によって発生することがあります。バスエラーの原因として多いのは、ファイル記述子が無効、入出力要求が不当、メモリー割り当てが不良、データ構造が不整合、コンパイラにバグがある、ブートブロックが損傷しているなどです。

パスワードがシステムのシークレットキーを暗号化していません。

原因

このメッセージは、ログイン時に、ユーザのパスワードがそのユーザの keylogin ネットワークパスワードと一致しなかった場合に表示されます。システムで NIS+ が実行されている場合、ログインプログラムは、secure RPC 認証のために、まず UNIX 認証を行なってから keylogin(1) を実行しようとします。

対処方法

secure RPC の資格を得るには、ユーザは (ログイン後に) keylogin を実行し、自分の秘密鍵を入力します。ログイン時にこのメッセージを表示しないようにするには、chkey -p コマンドを実行して、NIS+ パスワードと同じになるようにネットワークパスワードを設定します。ユーザがネットワークパスワードを忘れた場合、システム管理者は、ユーザの資格テーブルのエントリを削除して作り直し、ユーザが chkey を使用して新しいネットワークパスワードを設定できるようにしてください。

パッケージがインストールされていません。

原因

このエラーは、ユーザーがインストールされていないパッケージからシステムコールを使用すると発生します。

テクニカルノート

このエラーのシンボルの名前は、ENOPKGerrno=65 です。

バッファー領域がありません。

原因

システムのバッファー空間が不足しているか、または待ち行列がいっぱいになっているため、トランスポートエンドポイントまたはパイプでの操作が実行されません。ターゲットシステムがメモリーまたはスワップ空間を使い果たしている可能性があります。この状態のときに書き込まれたデータは、失われる恐れがあります。

対処方法

スワップ空間を増やすには、ターゲットシステムに対して swap -a コマンドを使用します。または、スワップ空間が増えるようにターゲットシステムを再構成します。通常、スワップ空間は物理メモリーの 2 倍から 3 倍の大きさにしてください。

テクニカルノート

このエラーのシンボルの名前は、ENOBUFS、errno=132 です。

パニック

原因

プログラムがでオペレーティングシステムのバグを引き起こすと、システムはパニックになりクラッシュします。クラッシュはユーザには不親切であるように感じられるかもしれませんが、突然の停止は実際には、システムとそのデータがそれ以上損傷するのを防止します。

オペレーティングシステムが停止するのに伴い、パニックルーチンは、使用中のメモリーの内容をダンプデバイスにコピーすることによって、パニックルーチンの呼び出し元である CPU の現在の状態に関する重要情報を記録します。

通常は一次スワップデバイスがデフォルトのダンプデバイスであるため、一次スワップデバイスは、メモリー全体のイメージを収容できるだけの大きさがなければなりません。メモリーイメージが保存されると、システムはリブートしようとします。

システムが正常にリブートしない場合は、次の可能性を検討してください。

対処方法

システムクラッシュが発生した理由を特定するために、次のいずれかの操作を実行できます。

上記の方法の中では、savecore プログラムを使用すると最も多くの情報を得られます。savecore コマンドは、パニックルーチンによって生成されたシステムクラッシュのダンプイメージを、ダンプデバイスからファイルシステムに転送します。このイメージを adb(1) などのデバッガを使用して分析できます。

関連項目

savecore を正しく設定し結果を解釈するのは、場合によっては難しい作業です。システムパニックのデバッグについて詳細は、Chris Drake と Kimberley Brown 著『Panic! UNIX Sytem Crash Dump Analysis』(ISBN: 0-13-149386-8) を参照してください。

パブリックメッセージデバイスを作成できません。

原因

このメッセージは lp 印刷スケジューラに起因するものであり、極度のビジー状態かまたはハング状態にあることを示します。

対処方法

印刷ジョブが該当するプリンタからのものである場合は、現在の印刷が終了するまで待ち、それからこの印刷ジョブを再度提出します。このメッセージが再び表示された場合は、lp システムがハングしている可能性が高いです。

待ち行列をクリアする手順については、「lp hang」メッセージを参照してください。

テクニカルノート

プリンタメッセージ用のデバイスの作成に lp を使用できない場合は、メッセージ FIFO がすでに使用中か、または別の印刷ジョブによってロックされています。

関連項目

印刷スケジューラの詳細については、『Solaris のシステム管理 (第 2 巻)』のプリンタの管理に関する節を参照してください。