Solaris のシステム管理 (上級編)

第 14 章 ソフトウェアの問題解決 (概要)

この章では、ソフトウェアの問題の解決についての概要を説明します。システムクラッシュの問題の解決とシステムメッセージの表示などが含まれます。

この章の内容は次のとおりです。

問題解決の新機能

この節では、今回の リリースで新たに追加または変更された問題解決情報について説明します。

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 での共通エージェントコンテナの問題解決」を参照してください。

x86: システムリブート時に SMF ブートアーカイブサービスが失敗する場合がある

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 動的トレースガイド』を参照してください。

kadb に代わる標準 Solaris カーネルデバッガ kmdb

kmdbkadb に代わって、標準的な「既定の」Solaris カーネルデバッガとして使用されます。

kmdb は、mdb の機能と柔軟性を集約し、カーネルのライブデバッグを行います。kmdb は以下をサポートします。

詳細は、kmdb(1) のマニュアルページを参照してください。kmdb を使用してシステムの問題を解決する手順については、『Solaris のシステム管理 (基本編)』「カーネルデバッガ (kmdb) を使ってシステムをブートする方法」および『Solaris のシステム管理 (基本編)』「GRUB ブート環境でカーネルデバッガ (kmdb) を使ってシステムをブートする方法」を参照してください。

ソフトウェアの問題の解決方法の参照先

問題解決の手順 

詳細 

システムクラッシュ情報の管理 

第 17 章システムクラッシュ情報の管理 (手順)

コアファイルの管理 

第 16 章コアファイルの管理 (手順)

リブート失敗、バックアップ問題などのソフトウェアの問題解決 

第 18 章ソフトウェアで発生するさまざまな問題の解決 (手順)

ファイルアクセスの問題解決 

第 19 章ファイルアクセスでの問題の解決 (手順)

印刷の問題解決 

『Solaris のシステム管理 (印刷)』の第 13 章「Oracle Solaris OS での印刷に関する問題のトラブルシューティング (作業)」

UFS ファイルシステムの不整合の解決 

第 20 章UFS ファイルシステムの不整合解決 (手順)

ソフトウェアパッケージの問題解決 

第 21 章ソフトウェアパッケージで発生する問題の解決 (手順)

システムクラッシュの問題の解決

Oracle Solaris OS が動作しているシステムがクラッシュした場合は、クラッシュダンプファイルを含む、可能なかぎりの情報を購入先に提供してください。

システムがクラッシュした場合の対処方法

もっとも重要なことは、次のとおりです。

  1. システムのコンソールメッセージを書き取ります。

    システムがクラッシュした場合は、システムを再稼動させるのを最優先に考えがちです。しかし、システムをリブートする前に、コンソール画面のメッセージを確認してください。 これらのメッセージは、クラッシュした原因を解明するのに役立ちます。システムが自動的にリブートして、コンソールメッセージが画面から消えた場合でも、システムエラーログファイル /var/adm/messages を表示すれば、これらのメッセージをチェックできます。システムエラーログファイルを表示する方法については、「システムメッセージを表示する方法」を参照してください。

    クラッシュが頻繁に発生し、その原因を特定できない場合は、システムコンソールまたは /var/adm/messages ファイルからできるだけ多くの情報を収集し、購入先に問い合わせます。購入先に問い合わせるために収集しておく問題解決情報の完全なリストについては、「システムクラッシュの問題の解決」を参照してください。

    システムクラッシュ後に、リブートが失敗する場合は、第 18 章ソフトウェアで発生するさまざまな問題の解決 (手順)を参照してください。

  2. 次のように入力してディスクとの同期をとり、リブートします。


    ok sync
    

    システムクラッシュ後に、リブートが失敗する場合は、第 18 章ソフトウェアで発生するさまざまな問題の解決 (手順)を参照してください。

また、システムクラッシュダンプがシステムのクラッシュ後に生成されたかどうかを確認してください。デフォルトでは、システムクラッシュダンプが保存されます。クラッシュダンプについては、第 17 章システムクラッシュ情報の管理 (手順)を参照してください。

問題の解決に使用するデータの収集

システムの問題を特定するために、次の質問に答えてください。「システムクラッシュを解決するためのチェックリスト」を使用し、クラッシュしたシステムの問題解決データを収集します。

表 14–1 システムクラッシュに関するデータの収集

質問 

説明 

問題を再現できるか

この質問は、再現可能なテストケースは実際のハードウェア問題をデバッグするために重要であることが多いために重要である。購入先では、特殊な計測機構を使用してカーネルを構築して問題を再現し、バグを引き起こし、診断、および修正できる 

Sun 以外のドライバを使用しているか

ドライバは、カーネルと同じアドレス空間で、カーネルと同じ特権で動作する。したがって、ドライバにバグがあると、システムクラッシュの原因となることがある 

クラッシュの直前にシステムは何を実行していたか

システムが通常でないこと (新しい負荷テストの実行など) を行なったり、通常よりも高い負荷がシステムにかかったりした場合、クラッシュの原因となることがある 

クラッシュ直前に、異常なコンソールメッセージが表示されたか

システムがクラッシュする前には、なんらかの兆候を示していることがある。この情報は重要 

/etc/system ファイルに調整パラメータを追加したか

調整パラメータは、システムクラッシュの原因となることがある。たとえば、共有メモリーセグメントを増やした結果、システムが限度以上の多くのメモリーを割り当てようとした 

問題は最近発生するようになったか

そうであれば、問題の原因は、システムの変更 (たとえば、新しいドライバ、新しいソフトウェア、作業負荷の変化、CPU のアップグレード、メモリーのアップグレードなど) にある可能性がある 

システムクラッシュを解決するためのチェックリスト

クラッシュしたシステムの問題を解決するためのデータを収集するときは、次のチェックリストを使用します。

項目 

ユーザーのデータ 

システムクラッシュダンプがあるか 

 

オペレーティングシステムのリリースと適切なソフトウェアアプリケーションのリリースレベルを確認する 

 

システムのハードウェアを確認する 

 

sun4u システムの prtdiag 出力を含める他のシステムの Explorer 出力を含める

 

パッチはインストールされているか。そうであれば、showrev -p 出力を含める

 

問題を再現できるか 

 

Sun 以外のドライバをシステムで使用しているか 

 

クラッシュ直前のシステムの動作は 

 

クラッシュ直前に、異常なコンソールメッセージが表示されたか 

 

/etc/system ファイルにパラメータを追加したか

 

問題は最近発生するようになったか