主要メッセージの手引き

"C"

Cannot access a needed shared library

原因

静的共用ライブラリを必要とする a.outexec(2) により実行しようとしたときに、静的共用ライブラリが存在しないか、あるいはユーザーにそのライブラリへのアクセス権がありません。

テクニカルノート

このエラーの記号名は、ELIBACCerrno=83 です。

Cannot allocate colormap entry for "string"

原因

このメッセージは libXt (X イントリンシクスライブラリ) から発生していて、引用符によって指定されたカラー名が要求される前に、システムのカラーマップがいっぱいになったことを示します。アプリケーションによっては、このメッセージが表示されても続行できます。ワークスペースプロパティカラーなど、その他のアプリケーションは、カラーマップがいっぱいになると表示できません。

対処方法

カラーマップの使用率が高いプログラムを終了してから、失敗したアプリケーションを再起動してもう一度行なってください。

Cannot assign requested address

原因

現在のマシンにないアドレスにトランスポートのエンドポイントを作成しようとしました。

テクニカルノート

このエラーの記号名は、EADDRNOTAVAILerrno=126 です。

Cannot bind to domain domainname: can't communicate with ypbind

原因

NIS マスターサーバーのセットアップ用の ypinit -m スクリプトを実行中に、このエラーメッセージが表示されます。

対処方法

/etc/nsswitch.conf 用の nsswitch テンプレートが正しくない可能性があります。セットアップでは、/etc/nsswitch.files を名前サービススイッチテンプレートとして使用する必要があります。セットアップが終了すれば、/etc/nsswitch.nis を使用できます。nsswitch.files が使用されているか、次のように確認してください。


# head /etc/nsswitch.conf 	
#   -->	
# /etc/nsswitch.files:
/etc/nsswitch.files を使用していない場合、次のようにコピーしてください。

# cp /etc/nsswitch.files /etc/nsswitch.conf
ypinit -m スクリプトを再度実行します。

Cannot boot after install, error that points to an .rc file

原因

Solaris 2.6 IA ソフトウェアのインストールを終了し、再起動時に、.rc ファイル (例、11045.rc) を参照するエラーが表示されます。このファイルはおそらく削除済みか、別のディレクトリにあるものと思われます。起動シーケンスで Solaris ソフトウェアがこのファイルを探して見つからないと起動プロセスが完了しないので、システムがハングします。

対処方法

インストールプロセスでは、構成アシスタント選択結果をファイルに保存するオプションがあります。このエラーは、その保存した構成ファイルを指しています。ユーザーには、これらの選択結果をファイルに保存するオプションを持つことは意識されません。ユーザーが選択を行った後、セットアップが終了します。ファイルに保存された選択結果を削除または移動すると、起動プロセスでシステムがハングします。これを解決するには、シングルユーザーモードで起動します。# プロンプトから次のように操作します。

  1. cd /platform/i86pc/boot/solaris/machines

  2. このディレクトリのすべてのファイルを削除します。

  3. システムを再起動します。

これで問題が修復され、Solaris ソフトウェアのロードができるようになります。

cannot change passwd, not correct passwd

原因

yppasswd(1) を実行中にユーザーのパスワードを変更しようとすると、システムは「cannot change passwd, not correct passwd」というメッセージを表示します。

また、サーバーコンソールで「yppasswd user string does not exist」が表示されましたが ypcat passwd | grep user を実行するとユーザー名が返されました。これにより yppasswdd(1M) が実行中であることがわかりました。

対処方法

pwck(1M)passwd(4) ファイルをチェックし、yppasswdd(1M) が正しいサーバーで実行されていることを確認します。次に、passwd(4) ファイルの場所を確認し、変更されている場合は、yppasswdd(1M) がその場所を指定して起動されていることを確認します。/etc/yp にあるパスワードは、/usr/lib/yp/rpc.yppasswdd -D /etc/yp になっているはずです。-D オプションを passwd ファイルのディレクトリ位置とともに指定すると、パスワードの変更および変更の検証を行う場所が yppasswdd(1M) に通知されます。

cannot establish nfs service over /dev/tcp: transport setup problem

原因

SunOS 2.5.2 システムの起動ストラップで、nfsd(1M) によって次のように表示されます。


netdir_getbyname (transport tcp, host/serv ¥
1/nfs), No such file or directory
Cannot establish NFS service over /dev/tcp: transport setup problem.
問題: 古いシステムから NIS マップが生成され、サービスマップの nfs/tcp エントリが見つかりません (この例では NIS+ を実行中ですが、この問題は NIS でも発生します)。

対処方法

/etc/nsswitch.conf ファイルの services 行の nisnisplus の前に files エントリを置きます。できれば、サービスファイルに対する変更結果をサービスマップにマージしてください。

新しい OS をインストールするときは、/etc/services/etc/inet/protocols/etc/rpc に対する新しいエントリで、それぞれのマップにマージするとよいでしょう。

Cannot exec a shared library directly

原因

システムが共用ライブラリを直接 exec(2) により実行しようとしています。

テクニカルノート

このエラーの記号名は、ELIBEXECerrno=87 です。

Cannot find SERVER hostname in network database

原因

異なるサブネットにいるユーザーが、ライセンスサーバーにアクセスしています。


ultra1(50)% cc -o hello hello.c
License Error : Cannot find the license server (fry)
in the network database for product(Sun WorkShop Compiler C)
Cannot find SERVER hostname in network database (-14,7)
cc: acomp failed for hello.c
ultra1(51)%

対処方法

次の内容を確認してください。

  1. サーバーが起動していて実行中になっていますか。

  2. サーバーがクライアントシステムの /etc/hosts ファイルにあるか、ping servername と入力して確認してください。

  3. サーバー上のライセンスデーモンが実行中になっていますか。

  4. クライアントの基本ライセンスファイルがありますか。


    cd /etc/opt/licenses
    more sunpro.loc

  5. sunpro,loc ディレクトリにあるのは sunpro.lic.1 などのように、テキストライセンスファイルだけになっていますか。

  6. クライアントについては、次のように確認してください。


    % cd /etc
    % more nsswitch.conf | grep hosts
    hosts:      nis [NOTFOUND=return] files

    これは、NIS サーバーを使用して IP アドレスを検索していることを示します。最初に NIS 用に設定されており、/etc/hosts ファイルに名前を登録されたサーバーがある場合は、次のように行を変更します。


    hosts:      files nis

    次に、検索できるかどうかを調べます。検索できない場合は、原因を調べるために、 trusssnoop を実行します。

cannot install bootblock

原因

この例では、Solaris IA ソフトウェアが Intel プラットフォームにインストールされており、インストールに問題はないように思えます。インストール後にシステムを再起動すると、起動時に上記のエラーメッセージが表示されます。この時点ではシステムにアクセスできません。

対処方法

このエラーは、Solaris オペレーティング環境で fdisk ユーティリティを使用し、newfs を実行し、次に restore を実行して、起動ブロックに対するインストールを実行し忘れると発生します。newfsrestore と実行したら、OS のインストール前に installboot を実行する必要があります。これを忘れると上記のエラーになります。CD-ROM からシングルユーザーモードで起動した後で、installboot プロシージャが正しく実行されるかどうかの保証はありません。

UFS 起動ブロックをインストールし、コマンドが実行されるプラットフォームのコントローラ 1 のターゲット 0 のスライス 2 にブートプログラムを区分化するには、次のように操作します。


# installboot /usr/platform/uname -i/lib/fs/ufs/pboot ¥
/usr/platform/uname -i/lib/fs/ufs/bootblk /dev/rdsk/c1t0d0s2

Cannot open FCC file

原因

このメッセージは、NetscapeTM を使用したメールの送信で表示されます。このエラーは、発信メッセージの保存用にユーザーが指定したファイルが存在しない場合に発生します。

対処方法

この問題を解決するには、「設定」を選択し、次に「Composer」 を選択します。テンプレートが表示されます。このテンプレートには、発信メールとニュースファイルを保存する場所を指定するセクションがあります。これらのファイルが存在することを確認してください。Netscape が送信したメッセージのログを保存しない場合は、これらのファイルをテンプレートから削除します。

Cannot send after transport endpoint shutdown

原因

トランスポートのエンドポイントがすでに停止されているため、データ送信要求が拒否されました。

テクニカルノート

このエラーの記号名は、ESHUTDOWNerrno=143 です。

can't communicate with ypbind

原因

ypcat passwd からこのエラーメッセージが戻りましたが、ypbind は実行中です。


ls -l /var/yp/binding/ypbind.pid   
-r--------   1 root     root           3 Dec  1 07:40 ypbind.pid  
ルートの umask は 077 に設定されています。

対処方法

ルートの umask を 022 に戻します。/var/yp/binding/ypbind.pid は、すべてのグループから読み取り可能である必要があります。

次の例を参照してください。


ls -l /var/yp/binding/ypbind.pid   
-r--r--r--   1 root     root           3 Dec  1 07:40 ypbind.pid

Can't create public message device (Device busy)

原因

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

対処方法

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

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

テクニカルノート

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

関連項目

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

Can't invoke /etc/init, error int

原因

このメッセージはシステムのブート中に表示され、init(1M) プログラムが失われているかまたは損傷していることを示します。なお、/etc/init/sbin/init へのシンボリックリンクです。

対処方法

次の操作を行います。

  1. ミニルートを起動して、init(1M) を置き換えられるようにします。

  2. Stop-A と入力するか、またはリセットボタンを押して、マシンを停止します。

  3. CD-ROM、ネット、またはフロッピーディスクからシングルユーザーとしてリブートします。たとえば CD-ROM からブートする場合は、ok プロンプトで boot cdrom -s と入力します。

  4. システムが起動して # プロンプトが表示されたら、元の root (/) パーティションの場所に応じて下記のように mount(1M) コマンドを使用し、デバイスをマウントします。


    # mount /dev/dsk/c0t3d0s0 /mnt
    # cp /sbin/init /mnt/sbin/init
    # reboot

  5. 次に、ミニルートから元の root (/) パーティションに init(1M) プログラムをコピーします。

  6. システムをリブートします。

これでうまくいかない場合は、他のファイルが損傷している可能性があります。その場合は、システム全体をインストールし直さなければなりません。

テクニカルノート

/sbin/init がない場合のエラー番号は 2 であり、/sbin/init に不正な実行可能形式がある場合は 8 です。通常はこのメッセージの後に panic: icode メッセージが続きます。システムは自分自身をリブートしようとしますが、init(1M) なしではリブートできないため、ループに入ります。

関連項目

システムのブートについて詳細は、『Solaris のシステム管理 (第 1 巻)』のシステムの停止とブートに関する節を参照してください。

can't open /dev/rdsk/string: (null): UNEXPECTED INCONSISTENCY

原因

SunOSTM 4.1.x リリースで、このメッセージは /dev ファイルシステムが組み込まれたデバイスが切断されていることを示していました。

Solaris オペレーティング環境の特定の応答が未定義でした。

can't synchronize with hayes

原因

システムが「Hayes」タイプと見なしたモデムを使用していると、このメッセージが表示されることがあります。現在製造されているモデムの大部分は「Hayes」タイプです。スイッチの設定が正しくない、ケーブル接続が悪い、またはモデムの電源が入っていない場合は、このメッセージが表示される可能性があります。

対処方法

モデムの電源が入っていて、モデムとシステム間のケーブルが確実に接続されていることを確認します。次に、内部と外部のモデムスイッチの設定を調べます。必要に応じて、モデムの電源を切ってから入れ直します。

cd: Too many arguments

原因

C シェルの cd(1) コマンドは引数を 1 つしか取りません。複数のディレクトリが指定されているか、または空白を含むディレクトリ名が指定されています。ファイルマネージャを使用していると、空白を含むディレクトリ名を作成してしまうことがあります。

対処方法

ディレクトリ名を 1 つのみにします。名前に空白を含むディレクトリに変更するには、ディレクトリ名を二重引用符 (") または引用符 (`) で囲むか、あるいはファイルマネージャを使用します。

Channel number out of range

原因

システムがストリームデバイスを使い果たしました。このエラーは、存在しないかまたは現在使用中のマイナーデバイスをストリームヘッドが開こうとすると発生します。

対処方法

該当するストリームデバイスが存在し、適切な番号のマイナーデバイスによって作成されていることを確認します。また、ハードウェアがこの構成に一致しているかどうかも調べます。ストリームデバイスの構成が正しい場合は、より多くのシステムリソースを使用できるときに再度実行してください。

テクニカルノート

このエラーの記号名は、ECHRNGerrno=37 です。

chmod: ERROR: invalid mode

原因

このメッセージは chmod(1) コマンドから発生し、オプションではない最初の引数に問題があることを示します。

対処方法

数値ファイルモードを指定している場合は、任意のけた数を提供できますが (ただし、最後の 1〜4 けたのみ使用します)、すべてのけた数は 0〜7 でなければなりません。シンボリックファイルモードを指定している場合は、chmod(1) 使用法メッセージに表示された構文を使用すると次の「invalid mode」エラーメッセージを避けられます。


Usage: chmod [ugoa][+-=][rwxlstugo] file ...
なお、シンボリックキー文字の組み合わせによっては、エラーメッセージは表示されませんが効果はありません。最初のグループ [ugoa] は省略可能です。2 番目のグループ [+-=] は、chmod(1) が機能するためには必須です。3 番目のグループ [rwxlstugo] も必須であり、重複しない限り組み合わせて使用できます。

Command not found

原因

C シェルが、コマンドとして与えられたプログラムを見つけられません。

対処方法

コマンド行の書式とスペルを調べます。正しければ、echo $path を実行して、ユーザーの検索パスが正しいかどうかを確認します。通信が不正確な場合は、組み込みシェルコマンドだけが使用可能になるように検索パスの設定を解除できます。基本的な検索パスを再設定するコマンドを次に示します。


 % set path = (/usr/bin /usr/ccs/bin /usr/openwin/bin .)
検索パスが正しければ、検索パスに沿ってディレクトリの内容を調べ、プログラムが失われていないか、またはディレクトリのマウントが解除されていないかどうかを確認します。

関連項目

C シェルの詳細については、csh(1) のマニュアルページを参照してください。

Communication error on send

原因

このエラーは、現在のプロセスがリモートマシンからのメッセージを待っているとき、そのマシンに接続するリンクが破壊されている場合に発生します。

テクニカルノート

このエラーの記号名は、ECOMMerrno=70 です。

config error: mail loops back to myself.

原因

メールを送信すると次のメッセージが表示されます。


# dle@g3... Connecting to g3.xyz.edu. (ether)... 
220 xyz.edu Sendmail SMI-8.6/SMI-SVR4 ready at Wed, 7 Jan 1998 14:28:20 -0600 
>>> HELO xyz.edu 
250 xyz.edu Hello g1.xyz.edu [129.106.16.1], pleased to meet you 
xyz.edu config error: mail loops back to myself 
>>> QUIT 
221 g1.xyz.edu closing connection 
dle@g3... Local configuration error 
Saving message in /dead.letter 
/dead.letter... Sent
送信システム (220 行目) と受信システム (HELO 行) のいずれもが "xyz.edu" に指定されています。

対処方法

sendmail.cf ファイルを次のように編集します。

  1. 正式なホスト名を入力します。

  2. ドメインの場合、ゲートウェイマシンに自身をドメインとして認識させたい場合は Dj$m を使用します。ゲートウェイマシンをドメイン内部のマシンにする場合は Dj$m.$m を使用します。sendmail.mx を使用している場合 (または完全指定のホスト名がある場合)、Dj$w を使用します。

  3. Dj$w.$m のコメント行の設定を解除し、Dj$m をコメント行にします。これでシステムごとに一意の名前が割り当てられます。$w はシステムホスト名になり、$m はドメインになります。

connect from hostIP to callit(ypserv): request from non-local host

「connect from hostIP to callit(ypserv): request from unauthorized host」を参照してください。

connect from hostIP to callit(ypserv): request from unauthorized host

原因

SunOS からのメッセージ例を示します。


Jan  5 14:45:37 host1 portmap[86]: connect from 158.175.36.135 to 
callit(ypserv): request from unauthorized host
エラーメッセージの末尾の部分には、この他、次のようなものがあります。

Solaris オペレーティング環境では、次のようなエラーメッセージになります。


Jan  5 14:45:37 host1 rpcbind[86]: refused connect from 158.175.36.135
to callit(ypserv)

いずれの場合も、メッセージの ypserv 部分は、mountnfs または status などの RPC サービスです。

対処方法

ユーザーは代替の portmap または rpcbind を使用しています。バージョンの拡張によりアクセス制御が追加され、このエラーメッセージはアクセス侵害を告げています。代替の portmap または rpcbind は Sun 社製以外のものであり、Sun ではサポートしていません。アクセス制御構成ファイルにアクセスし、必要なアクセス制御に変更する必要があります。

connect from hostIP to callit(ypserv): request from unprivileged port

「connect from hostIP to callit(ypserv): request from unauthorized host」を参照してください。

connect from hostIP to callit(ypserv): request not forwarded

「connect from hostIP to callit(ypserv): request from unauthorized host」を参照してください。

Connection closed.

原因

rlogin(1) を使用するとき、次の場合にこのメッセージが表示されます。

ファイルを修正して、接続を切断する前に保存しなかった場合は、データが失われる恐れがあります。

対処方法

もう一度実行します。相手のシステムが停止している場合は、リブートされるまで待ちます。

Connection closed by foreign host.

原因

telnet(1) を別のシステムに適用すると、次の場合にこのメッセージが表示されます。

ファイルを修正して、接続を切断する前に保存しなかった場合は、データが失われる恐れがあります。

対処方法

もう一度実行します。相手のシステムが停止している場合は、リブートされるまで待ちます。

[Connection closed. Exiting]

原因

talk(1) コマンドを使用して別のユーザーと交信した後、そのユーザーが割り込み (通常は Control-C) を入力すると、こちらのユーザーの画面にこのメッセージが表示されます。

対処方法

割り込みを送信するのは、talk(1) プログラムを終了する際の通常の方法です。talk(1) セッションが終了すると、作業に戻ることができます。

Connection refused

原因

対象のマシンが拒否したため、接続できません。アクティブでないサービスに接続しようとした場合、または要求したアドレスにサービスプロセスが存在しなかった場合に起こります。

対処方法

対象のマシン上のサービスをアクティブにするか、またはサービスがなくなっていた場合は再度起動します。セキュリティ上の理由からこのサービスを提供したくない場合は、ユーザーグループにそのことを伝え、できれば代替サービスを提供します。

テクニカルノート

このエラーの記号名は、ECONNREFUSEDerrno=146 です。

Connection reset by peer

原因

ピアにより接続が強制的にクローズされました。通常は、タイムアウトや再起動によるリモートホスト接続の切断が原因です。

テクニカルノート

このエラーの記号名は、ECONNRESETerrno=131 です。

Connection timed out

原因

このエラーは宛先ホストがダウンしている場合、またはネットワーク上の障害のために伝送に失敗した場合に起こります。

対処方法

次の操作を行います。

  1. たとえば ping(1M)ftp(1) などを使用して、まずホストシステムの動作を調べます。

  2. 必要があれば修理または再起動を行います。

  3. これで解決できない場合は、ネットワークのケーブルと接続を調べます。

テクニカルノート

指定された時間内に接続が確立されませんでした。適切な時間内に宛先ホストが正しく応答しなかったため、接続要求または送信要求は失敗しました (タイムアウトの時間は通信プロトコルによって異なります)。

このエラーの記号名は、ETIMEDOUTerrno=145 です。

console login: ^J^M^Q^K^K^P

原因

このエラーは、通常、OpenWindows が異常終了したために、システムのキーボードが誤ったモードのままになっているために発生します。この場合、ログインしようとしたときに表示される文字は、入力した内容の無意味な文字変換になってしまいます。

対処方法

SPARCTM システムの場合、次のように操作します。

  1. 別のマシンからこのシステムにリモートログインします。

  2. 次のコマンドを実行します。


    $ /usr/openwin/bin/kbd_mode -a

これで、コンソールが ASCII モードに戻ります。


注 -

kbd_mode は Windows プログラムではありません。コンソールモードに固定します。


IA システムの場合、次のように操作します。

  1. リモートログインし、start を実行します。

  2. X サーバーを終了する (kill) か、システムを再起動します。

テクニカルノート

この問題が生じる一般的な原因は、/tmp ディレクトリを一定間隔ごとにクリアする cron(1M) から実行した、自動化されたスクリプトにあります。このようなスクリプトが、/tmp/.X11-pipe または /tmp/.X11-unix の各ディレクトリとその中のファイルを削除しないことを確認してください。

core dumped

原因

core(4) ファイルには、ソフトウェア障害の発生時点でのメモリーのイメージが収められており、障害の原因を調べる際にプログラマが使用します。

対処方法

core(4) ファイルを生成したプログラムを特定するには、file(1) コマンドまたは adb(1) コマンドを実行します。dtmail からのコアファイルに対して fileadb の各コマンドを実行した場合の出力内容を、次の例に示します。


$ file core
core: ELF 32-bit MSB core file SPARC Version 1, from `dtmail'

$ adb core
core file = core -- program `dtmail'
SIGSEGV  11: segmentation violation
^D      (use Control-d to quit the program)
プログラムのベンダまたは作成者に、デバッグ済みのバージョンを要求してください。

テクニカルノート

SIGQUIT、SIGBUS、SIGSEGV など、一部のシグナルはコアファイルを生成します。該当するシグナルの完全なリストについては、signal(5) のマニュアルページを参照してください。

プログラムのソースコードがある場合は、cc -g によってコンパイルし、dbx または同様のデバッガを使用して自分でデバッグできます。dbxwhere 命令を実行するとスタックトレースが得られます。

混在ネットワークでは、あるタイプのシステムで adb(1) を実行しても、別のタイプのシステムで生成されたコアダンプを読み取ることは通常できないため、特定の core(4) ファイルを生成したマシンアーキテクチャーを特定するのは困難です。このため、unrecognized file メッセージが作成されます。正しいアーキテクチャが判明するまで、各種のマシンアーキテクチャで adb(1) を実行してください。

「コア」という用語は古くからあります。放射線に対する抵抗力のため、宇宙船では現在もコアメモリーを使用していますが、フェライトコアメモリーがシリコン RAM にその座を譲ったのは 1970 年代です。

関連項目

クラッシュ情報の保存と表示については、『Solaris のシステム管理 (第 2 巻)』を参照してください。AnswerBook のオンラインマニュアルを使用している場合は、「system crash」と入力して検索文字列として使用します。

corrupt label - wrong magic number または corrupt label - label checksum failed

原因

電源を入れてマシンを起動すると、次のどちらかのメッセージが表示されます。

format(1M) では次のように表示されます。


  0 unassigned    wm       0               0         (0/0/0)          0
  1 unassigned    wm       0               0         (0/0/0)          0
  2     backup    wm       0 - 5460        4.2G    (5460/0/0)   4154160
  3 unassigned    wm       0               0         (0/0/0)          0
  4 unassigned    wm       0               0         (0/0/0)          0
  5 unassigned    wm       0               0         (0/0/0)          0
  6 unassigned    wm       0 - 2730       2.1G       (0/0/0)          0
  7 unassigned 	  wm       2730-5460      2.1G       (0/0/0)          0

ディスクは、ブロック 0 (シリンダ 0) で開始する raw パーティションを使用していました。ディスクラベル (VTOC) はシリンダ 0 のブロック 0 に保持されます。raw パーティションがシリンダ 0 で開始する場合は、raw パーティションを使用するデータベースプログラムがラベルを上書きすることになります (UNIX ファイルシステムでは、パーティションのこの領域は使われません)。

対処方法

これを回避するには、次のように操作します。

  1. format(1M) を実行し、backup コマンドを使用してバックアップラベルを取得します。

  2. このバックアップラベルを使用してディスクのラベルを変更します。これで、ディスクにアクセスできるようになります。

  3. このディスクのデータをバックアップします。

  4. ディスクに戻ってラベルを変更し、raw パーティションをシリンダ 1 で開始します (これで 1 つのシリンダが消費されますが、VTOC の破壊を防止できます)。

  5. ラベルを付け直します。

  6. バックアップからデータを復元します。

could not grant slave pty

原因

telnet(1)rlogin(1)rsh(1) などのシェルが必要なセッションを実行しようとしたとき、あるいは X 端末を起動しようとしたときに、エラーメッセージ「could not grant slave pty」が表示されます。

対処方法

/usr/lib/pt_chmod でのファイルのアクセス権の設定が正しくありません。次のように設定されていたとします。


# ls -la /usr/lib/pt_chmod
---s--x--x   1 bin     bin         3120 May  3  1996
アクセス権は次のようにします。

# ls -la /usr/lib/pt_chmod
---s--x--x   1 root     bin         3120 May  3  1996


注 -

所有者として bin を設定していましたが、root にする必要があります。setuid ビットも設定する必要があります。


chown root pt_chomd で問題を解決できます。

Could not initialize tooltalk (tt_open): TT_ERR_NOMP

原因

ttsession(1) プロセスが使用できない場合、さまざまなデスクトップツールでこのメッセージが表示または出力されます。通常、ToolTalkTM サービスは、ttsession(1) が実行されていないと再起動しようとします。したがって、このエラーは、ToolTalk サービスがインストールされていないか、または正しくインストールされていないことを示します。

対処方法

ttsession(1) コマンドが /usr/openwin/bin または /usr/dt/bin に存在することを確認します。このコマンドが存在しない場合は、ToolTalk が正しくインストールされていません。ToolTalk を構成するパッケージは、実行時の SUNWtltk、開発者支援の SUNWtltkd、およびマニュアルページの SUNWtltkm です。

テクニカルノート

完全な TT_ERR_NOMP メッセージ文字列は次のような意味になります。「ttsession(1) が実行されていません。tt_open(3) がまだ呼び出されていない可能性があります。このメッセージ文字列が tt_open(3) から返された場合は、ttsession(1) を開始できなかったことを示します。これは、通常、ToolTalk がシステムにインストールされていないことを意味します。」

Could not open ToolTalk Channel

原因

workshop をリモートで実行しようとすると、このエラーメッセージが表示されます。

対処方法

次の操作をします。

  1. workshop が実行されていないことを確認します。

  2. telnet/rlogin セッションウィンドウで /bin/ps -ef | grep ttsession と入力します。telnet ユーザーに属しているものがシステムにある場合は、kill pid_of_ttsession と入力します。

  3. telnet rlogin セッションで、/usr/dt/bin/ttsession -s -d machine_telnetting_from:0.0 と入力します。

  4. workshop を起動します。

Could not start new viewer

原因

このメッセージは AnswerBook ナビゲータウィンドウに表示され、コンソールには XViewTM エラーメッセージが表示されます。

対処方法

詳細は、「answerbook: XView error: NULL pointer passed to xv_set」を参照してください。

Could not start NFS service for any protocol. Exiting

原因

起動時に次のエラーが表示されます。


/usr/lib/nfs/nfsd[478]: t_bind to wrong address
/usr/lib/nfs/nfsd[478]: t_bind to wrong address
/usr/lib/nfs/nfsd[478]: Cannot establish NFS service over /dev/udp: transport setup problem.
/usr/lib/nfs/nfsd[478]: Cannot establish NFS service over /dev/udp: transport setup problem.
/usr/lib/nfs/nfsd[478]: t_bind to wrong address
/usr/lib/nfs/nfsd[478]: t_bind to wrong address
/usr/lib/nfs/nfsd[478]: Cannot establish NFS service over /dev/tcp: transport setup problem.
/usr/lib/nfs/nfsd[478]: Cannot establish NFS service over /dev/tcp: transport setup problem.
/usr/lib/nfs/nfsd[478]: Could not start NFS service for any protocol. Exiting.
/usr/lib/nfs/nfsd[478]: Could not start NFS service for any protocol. Exiting.

この場合、/etc/rc3.dS15nfs.server スクリプトのバックアップコピーを作成しましたが、バックアップコピーの名前を S15nfs.server.BAK にしました。バックアップコピーの名前は大文字の "S" で始まるため、起動時に実行され、2 番目の NFSD を実行しようとしてエラーになりました。

対処方法

起動スクリプトのバックアップコピーを作成するとき、起動時に実行されないよう、名前を小文字の "s" に変更します。

cpio: Bad magic number/header.

原因

cpio(1) アーカイブが損傷したか、または互換性のないバージョンの cpio(1) によって書き出されました。

対処方法

cpio(1)-k オプションを付けて、入出力エラーと損傷したファイルヘッダをスキップします。これにより、cpio(1) アーカイブから他のファイルを抽出できる場合があります。損傷したヘッダ付きのファイルを抽出するには、emacs(1) などのバイナリエディタでアーカイブを編集します。cpio(1) ファイルヘッダにはそれぞれ、ファイル名が文字列として含まれています。

関連項目

マジックナンバーの詳細については、magic(4) のマニュアルページを参照してください。

cpio : can't read input : end of file encountered prior to expected end of archive.

原因

次のコマンドを使用して、bar コマンドによって保存されたマルチボリュームフロッピーを読み取ろうとすると、処理は失敗し、メッセージが表示されます。


  # cpio -id -H bar -I /dev/diskette0

対処方法

/etc/init.d/volmgt stop を実行して /usr/sbin/vold を終了 (kill) し、デバイス名 /dev/rfd0 を使用します。

Cross-device link

原因

別のファイルシステムなど、別のデバイス上のファイルに対してハードリンクしようとしました。

対処方法

ln -s を使用してシンボリックリンクを確立します。シンボリックリンクは、ファイルシステムの境界を越えることができます。

テクニカルノート

このエラーの記号名は、EXDEVerrno=18 です。