この章では、ソフトウェアの問題の解決についての概要を説明します。システムクラッシュの問題の解決とシステムメッセージの表示などが含まれます。
この章の内容は次のとおりです。
この節では、今回の リリースで新たに追加または変更された問題解決情報について説明します。
Oracle Solaris 10 リリースの問題解決の新機能と変更された機能については、以下を参照してください。
Oracle Solaris リリースの新機能と説明の完全な一覧については、『Oracle Solaris 10 9/10 の新機能』を参照してください。
Solaris 10 6/06: 共通エージェントコンテナは、Oracle Solaris OS に含まれているスタンドアロンの Java プログラムです。このプログラムは、Java 管理アプリケーション用のコンテナを実装します。共通エージェントコンテナは、JMX (Java Management Extensions) および Java DMK (Java Dynamic Management Kit) に基づく機能のために設計された管理インフラストラクチャーを提供します。このソフトウェアは、SUNWcacaort パッケージによって /usr/lib/cacao ディレクトリにインストールされます。
通常、このコンテナは表示されません。ただし、次の 2 つの場合は、コンテナデーモンとの対話が必要になることがあります。
共通エージェントコンテナ用に予約されているネットワークポートを別のアプリケーションが使用しようとする可能性がある。
証明書ストアが危殆化した場合に、共通エージェントコンテナ証明書鍵の再生成が必要になることがある。
これらの問題の解決方法については、「Oracle Solaris OS での共通エージェントコンテナの問題解決」を参照してください。
Solaris 10 1/06: GRUB ベースのブート環境でシステムクラッシュが発生した場合、システムのリブート時に SMF サービス (svc:/system/boot-archive:default) が失敗する場合があります。この問題が発生した場合は、システムをリブートし、GRUB ブートメニューで フェイルセーフアーカイブを選択します。プロンプトの指示に従い、ブートアーカイブを再構築します。アーカイブの再構築後、システムをリブートします。ブートプロセスを継続するには、svcadm コマンドを使用して svc:/system/boot-archive:default サービスをクリアします。GRUB ベースのブートの詳細については、『Solaris のシステム管理 (基本編)』の「GRUB を使用して x86 システムをブートする (作業マップ)」を参照してください。
Oracle Solaris 動的トレース (DTrace) 機能は、Solaris のカーネルプロセスやユーザープロセスの監視に新たな可能性を実現する、包括的な動的追跡機能です。DTrace では、OS のカーネルプロセスとユーザープロセスを動的に計測し、プローブと呼ばれる関心のある場所で指定のデータを記録して、システム理解に役立てることができます。それぞれのプローブは、新しい D プログラム言語で記述されたカスタムプログラムに関連付けられます。DTrace のすべての計測は完全に動的であり、実稼働システムで使用可能です。詳細は、dtrace(1M) のマニュアルページと『Solaris 動的トレースガイド』を参照してください。
kmdb が kadb に代わって、標準的な「既定の」Solaris カーネルデバッガとして使用されます。
kmdb は、mdb の機能と柔軟性を集約し、カーネルのライブデバッグを行います。kmdb は以下をサポートします。
デバッガコマンド (dcmds)
デバッガモジュール (dmods)
カーネルタイプのデータへのアクセス
カーネル実行制御
検査
修正
詳細は、kmdb(1) のマニュアルページを参照してください。kmdb を使用してシステムの問題を解決する手順については、『Solaris のシステム管理 (基本編)』の「カーネルデバッガ (kmdb) を使ってシステムをブートする方法」および『Solaris のシステム管理 (基本編)』の「GRUB ブート環境でカーネルデバッガ (kmdb) を使ってシステムをブートする方法」を参照してください。
問題解決の手順 |
詳細 |
---|---|
システムクラッシュ情報の管理 | |
コアファイルの管理 | |
リブート失敗、バックアップ問題などのソフトウェアの問題解決 | |
ファイルアクセスの問題解決 | |
印刷の問題解決 |
『Solaris のシステム管理 (印刷)』の第 13 章「Oracle Solaris OS での印刷に関する問題のトラブルシューティング (作業)」 |
UFS ファイルシステムの不整合の解決 | |
ソフトウェアパッケージの問題解決 |
Oracle Solaris OS が動作しているシステムがクラッシュした場合は、クラッシュダンプファイルを含む、可能なかぎりの情報を購入先に提供してください。
もっとも重要なことは、次のとおりです。
システムのコンソールメッセージを書き取ります。
システムがクラッシュした場合は、システムを再稼動させるのを最優先に考えがちです。しかし、システムをリブートする前に、コンソール画面のメッセージを確認してください。 これらのメッセージは、クラッシュした原因を解明するのに役立ちます。システムが自動的にリブートして、コンソールメッセージが画面から消えた場合でも、システムエラーログファイル /var/adm/messages を表示すれば、これらのメッセージをチェックできます。システムエラーログファイルを表示する方法については、「システムメッセージを表示する方法」を参照してください。
クラッシュが頻繁に発生し、その原因を特定できない場合は、システムコンソールまたは /var/adm/messages ファイルからできるだけ多くの情報を収集し、購入先に問い合わせます。購入先に問い合わせるために収集しておく問題解決情報の完全なリストについては、「システムクラッシュの問題の解決」を参照してください。
システムクラッシュ後に、リブートが失敗する場合は、第 18 章ソフトウェアで発生するさまざまな問題の解決 (手順)を参照してください。
次のように入力してディスクとの同期をとり、リブートします。
ok sync |
システムクラッシュ後に、リブートが失敗する場合は、第 18 章ソフトウェアで発生するさまざまな問題の解決 (手順)を参照してください。
また、システムクラッシュダンプがシステムのクラッシュ後に生成されたかどうかを確認してください。デフォルトでは、システムクラッシュダンプが保存されます。クラッシュダンプについては、第 17 章システムクラッシュ情報の管理 (手順)を参照してください。
システムの問題を特定するために、次の質問に答えてください。「システムクラッシュを解決するためのチェックリスト」を使用し、クラッシュしたシステムの問題解決データを収集します。
表 14–1 システムクラッシュに関するデータの収集
質問 |
説明 |
---|---|
問題を再現できるか |
この質問は、再現可能なテストケースは実際のハードウェア問題をデバッグするために重要であることが多いために重要である。購入先では、特殊な計測機構を使用してカーネルを構築して問題を再現し、バグを引き起こし、診断、および修正できる |
Sun 以外のドライバを使用しているか |
ドライバは、カーネルと同じアドレス空間で、カーネルと同じ特権で動作する。したがって、ドライバにバグがあると、システムクラッシュの原因となることがある |
クラッシュの直前にシステムは何を実行していたか |
システムが通常でないこと (新しい負荷テストの実行など) を行なったり、通常よりも高い負荷がシステムにかかったりした場合、クラッシュの原因となることがある |
クラッシュ直前に、異常なコンソールメッセージが表示されたか |
システムがクラッシュする前には、なんらかの兆候を示していることがある。この情報は重要 |
/etc/system ファイルに調整パラメータを追加したか |
調整パラメータは、システムクラッシュの原因となることがある。たとえば、共有メモリーセグメントを増やした結果、システムが限度以上の多くのメモリーを割り当てようとした |
問題は最近発生するようになったか |
そうであれば、問題の原因は、システムの変更 (たとえば、新しいドライバ、新しいソフトウェア、作業負荷の変化、CPU のアップグレード、メモリーのアップグレードなど) にある可能性がある |
クラッシュしたシステムの問題を解決するためのデータを収集するときは、次のチェックリストを使用します。
項目 |
ユーザーのデータ |
---|---|
システムクラッシュダンプがあるか |
|
オペレーティングシステムのリリースと適切なソフトウェアアプリケーションのリリースレベルを確認する |
|
システムのハードウェアを確認する |
|
sun4u システムの prtdiag 出力を含める他のシステムの Explorer 出力を含める |
|
パッチはインストールされているか。そうであれば、showrev -p 出力を含める |
|
問題を再現できるか |
|
Sun 以外のドライバをシステムで使用しているか |
|
クラッシュ直前のシステムの動作は |
|
クラッシュ直前に、異常なコンソールメッセージが表示されたか |
|
/etc/system ファイルにパラメータを追加したか |
|
問題は最近発生するようになったか |
|