ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11.1 Information Library (日本語) |
- オペレーティングシステムクラッシュダンプの構成
/usr/sbin/dumpadm [-nuy] [-c content-type] [-d dump-device] [-m mink | minm | min%] [-s savecore-dir] [-r root-dir] [-z on | off]
dumpadm プログラムは、オペレーティングシステムクラッシュダンプ機能の構成を管理する管理コマンドです。クラッシュダンプは、重大なシステムエラー時のコンピュータの物理メモリーのディスクコピーです。重大なオペレーティングシステムエラーが発生すると、エラーを説明するメッセージがコンソールに出力されます。するとオペレーティングシステムは、物理メモリーの内容を定義済みダンプデバイス (通常はローカルディスクパーティション) に書き込むことで、クラッシュダンプを生成します。ダンプデバイスは dumpadm で構成できます。クラッシュダンプがダンプデバイスに書き込まれると、システムがリブートします。
重大なオペレーティングシステムエラーは、オペレーティングシステム、関連付けられたデバイスドライバ、および読み込み可能モジュールのバグや、ハードウェアの故障によって発生する可能性があります。原因がどのようなものでも、クラッシュダンプ自体が、問題を診断するのに役立つ重要な情報をサポートエンジニアに提供します。このため、クラッシュダンプを収集してサポートプロバイダに提供することはとても重要です。オペレーティングシステムがクラッシュすると、ブート時に savecore(1M) ユーティリティーが自動的に実行されて、ダンプデバイスからクラッシュダンプが取り出され、vmdump.X (X はダンプを識別する整数) というファイル名で、ファイルシステムに圧縮形式で書き込まれます。あとで、同じシステムまたは別のシステムで savecore(1M) を呼び出すことで、圧縮されたクラッシュダンプを unix.X および vmcore.X という名前のファイルペアに展開できます。リブート時にクラッシュダンプを保存するディレクトリは、dumpadm を使用して構成できます。
UFS ルートファイルシステムを備えたシステムでは、デフォルトダンプデバイスが適切なスワップパーティションに構成されます。スワップパーティションとは、オペレーティングシステムの仮想メモリーバッキングストアとして予約されたディスクパーティションのことです。したがって、スワップ内には、ダンプによって上書きされる永続的情報は存在しません。swap(1M) を参照してください。ZFS ルートファイルシステムを備えたシステムでは、スワップおよびダンプ領域に専用の ZFS ボリュームが使用されます。ZFS でダンプ領域を設定する方法の詳細については、『ZFS 管理ガイド』を参照してください。現在のダンプ構成を表示するには、引数なしの dumpadm コマンドを使用します。
example# dumpadm Dump content: kernel pages Dump device: /dev/dsk/c0t0d0s1 (swap) Savecore directory: /var/crash Savecore enabled: yes Save compressed: yes
オプションが指定されない場合、dumpadm は現在のクラッシュダンプ構成を表示します。上の例では一連のデフォルト値が表示されています。ダンプ内容はカーネルメモリーページのみに設定され、ダンプデバイスはスワップディスクパーティションで、savecore ファイルのディレクトリは /var/crash/ に設定されています。savecore がリブート時に自動的に実行され、圧縮形式でクラッシュダンプを保存するように設定されています。
1 つ以上のオプションが指定された場合、dumpadm は変更が有効であることを検証し、有効な場合はクラッシュダンプパラメータを再構成して結果の構成を表示します。ダンプパラメータを表示または変更するには、root である必要があります。
システムインストール時に dumpadm は、カーネルメモリーなどの内部情報に基づいて、ダンプファイルを格納するのに十分なサイズのダンプデバイスを確立します。その後、小さすぎてダンプファイルを格納できないダンプデバイスを作成しようとすると、dumpadm からエラーメッセージが発行されて処理が失敗します。
サポートしているオプションは、次のとおりです。
クラッシュダンプが指定されたダンプ内容で構成されるように、ダンプ構成を変更します。内容は次のいずれかにすべきです。
カーネルメモリーページのみ。
すべてのメモリーページ。
カーネルメモリーページと、クラッシュダンプが起動された CPU 上でその時点で実行されていたスレッドを持つプロセスのメモリーページ。その CPU 上で実行中のスレッドが、どのユーザープロセスにも関連付けられていないカーネルスレッドである場合、カーネルページのみがダンプされます。
指定されたダンプデバイスを使用するようにダンプ構成を変更します。ダンプデバイスは次のいずれかを指定できます。
システムが UFS ルートファイルシステムを実行している場合は、/dev/dsk/cNtNdNsN のような絶対パス名として指定された特定のダンプデバイス。または、システムが ZFS ルートファイルシステムを実行している場合は、/dev/zvol/dsk/rpool/dump のような ZFS ボリュームを指定します。
ダンプデバイスとして特殊トークン swap を指定した場合、dumpadm はアクティブスワップエントリを調べ、ダンプデバイスとして構成するのにもっとも適したエントリを選択します。swap(1M) を参照してください。適切なスワップエントリの選択に使用されるアルゴリズムの詳細については、後述の「注意事項」を参照してください。システムが UFS ルートファイルシステムとして最初にインストールされるとき、dumpadm は swap の値を使ってダンプデバイス初期設定を決定します。特定の ZFS ボリュームをスワップ領域かつダンプデバイスとして構成することはできません。
minfree ファイル (savecore ディレクトリがあるファイルシステム内で指定された量以上の空き領域を savecore が維持すべきであることを示す) を現在の savecore ディレクトリ内に作成します。min 引数は次のいずれかを指定できます。
K バイトを表す単位 k が末尾に付いた正の整数。
M バイトを表す単位 m が末尾に付いた正の整数。
minfree 値を、savecore ディレクトリを含むファイルシステムの現在の合計サイズの指定されたパーセント値として計算すべきであることを示す、% 記号。
savecore コマンドは、minfree ファイルがある場合、ダンプファイルに書き込む前に参照します。これらのファイルのサイズによって空きディスク容量が minfree しきい値より下回る場合、ダンプファイルは書き込まれず、エラーメッセージが記録されます。管理者は十分な空き容量を確保するためにすぐに savecore ディレクトリをクリーンアップし、savecore コマンドを手動で再度実行すべきです。管理者は、savecore コマンド行で代替ディレクトリを指定することもできます。
リブート時に savecore が自動的に実行されないようにダンプ構成を変更します。これは推奨されるシステム構成ではありません。ダンプデバイスがスワップパーティションの場合、システムがスワップを開始するとダンプデータが上書きされます。ブート直後に savecore が実行されない場合は、クラッシュダンプを収集できない場合があります。
dumpadm がファイルを作成する際の起点となる代替ルートディレクトリを指定します。-r 引数を指定しない場合は、デフォルトルートディレクトリ / が使用されます。
savecore によって書き込まれるファイルを保存するために、指定したディレクトリを使用するようにダンプ構成を変更します。このディレクトリは絶対パスで、システム上に存在しているべきです。リブート時にディレクトリが存在しない場合は、savecore 実行前に作成されます。savecore ディレクトリへのアクセスに関連するセキュリティ問題については、後述の「注意事項」セクションを参照してください。デフォルト savecore ディレクトリは、/var/crash/ です。
カーネルダンプ構成を /etc/dumpadm.conf の内容に基づいて強制的に更新します。このオプションは通常、リブート時に svc:/system/dumpadm:default を起動するときに、以前のブートからの dumpadm 設定を復元する必要があるときにのみ使用されます。ダンプ構成はこの目的のために構成ファイルに保存されます。構成ファイルがないかいずれかのダンププロパティーに無効な値を含んでいる場合は、デフォルト値で置き換えられます。更新後、構成ファイルはカーネルダンプ構成と再同期されます。
リブート時に savecore を自動的に実行するように、ダンプ構成を変更します。これはこのダンプ設定のデフォルトです。「注意事項」 を参照してください。
リブート時の savecore の処理を制御するためにダンプ構成を変更します。オプションは、コアファイルを圧縮形式で保存することを有効にする on と、クラッシュダンプファイルを自動的に圧縮解除する off です。デフォルトは on で、理由はクラッシュダンプファイルは非常に大きくなる可能性があり、圧縮形式で保存すれば必要なファイルシステム容量が少なくなるためです。
例 1 ダンプデバイスを専用ダンプデバイスに再構成する
次のコマンドは、ダンプデバイスを専用ダンプデバイスに再構成します。
example# dumpadm –d /dev/dsk/c0t2d0s2 Dump content: kernel pages Dump device: /dev/dsk/c0t2d0s2 (dedicated) Savecore directory: /var/crash Savecore enabled: yes Save compressed: yes
次の終了ステータスが返されます。
ダンプ構成が有効で、指定された変更 (ある場合) が正常に行われた。
ダンプ構成を取得または変更するときに致命的エラーが発生した。
無効なコマンド行オプションが指定された。
ダンプデバイス。
dumpadm の構成パラメータを含みます。そのコマンドでのみ変更できます。
savecore-directory の最小空き容量を含みます。savecore(1M) を参照してください。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
|
svcs(1), uname(1), savecore(1M), svcadm(1M), swap(1M), attributes(5), smf(5)
システムクラッシュダンプサービスは、サービス管理機構 smf(5) によって、次のサービス識別子の下で管理されます。
svc:/system/dumpadm:default
有効化、無効化、または再起動要求など、このサービスに関する管理操作は、svcadm(1M) を使用して実行できます。サービスステータスを照会するには、svcs(1) コマンドを使用します。
dumpadm -d の引数として特殊な swap トークンが指定されると、ユーティリティーはもっとも適したスワップデバイスをダンプデバイスとして構成しようとします。dumpadm はもっとも大きなスワップブロックデバイスをダンプデバイスとして構成します。スワップに使用できるブロックデバイスがない場合は、もっとも大きなスワップエントリがダンプデバイスとして構成されます。スワップエントリが存在しないか、ダンプデバイスとして構成できるものがない場合は、警告メッセージが表示されます。ローカルおよびリモートスワップファイルをダンプデバイスとして構成できますが、これは推奨されていません。
ダンプデバイスがスワップデバイスでもある場合に、スワップデバイスが管理者によって swap -d コマンドを使って削除されると、swap コマンドは別の適切なスワップデバイスをダンプデバイスとして構成しようとして dumpadm -d swap を自動的に呼び出します。スワップデバイスが残っていないかダンプデバイスとして構成できるものがない場合には、クラッシュダンプが無効になり、警告メッセージが表示されます。同様に、クラッシュダンプが無効なときに管理者が swap -a コマンドを使って新しいスワップデバイスを追加すると、新しいスワップデバイスを使ってクラッシュダンプを再度有効にするために dumpadm -d swap が呼び出されます。
dumpadm -d swap が発行されると、それ以降のリブートのために新しいダンプデバイスが構成ファイル内に格納されます。管理者によってより大きなまたはより適したスワップデバイスが追加されても、ダンプデバイスは変更されません。管理者は、dumpadm -d swap を再実行して最適なデバイスをスワップデバイスの新しいリストから再選択する必要があります。
dumpadm -m オプションを使って savecore ディレクトリを含むファイルシステムの合計サイズのパーセント値に基づいて minfree ファイルが作成された場合、その後ファイルシステムのサイズが変更されても、この値は自動的に再計算されません。この場合、管理者が dumpadm -m を再実行して minfree 値を再計算する必要があります。savecore ディレクトリ内にそのようなファイルが存在しない場合、savecore はデフォルトで空き容量しきい値として 1M バイトを使用します。空き容量しきい値が不要な場合は、サイズ 0 を含む minfree ファイルを作成できます。
リブート時に、指定された savecore ディレクトリが存在しない場合、savecore を実行する前に、アクセス権 0700 (所有者のみによる読み取り、書き込み、実行)、所有者 root で作成されます。オペレーティングシステムクラッシュダンプファイル自体にセキュア情報が含まれている可能性があるため、同様のアクセス権で代替 savecore ディレクトリを作成することもお勧めします。
システムインストールソフトウェアが専用ダンプデバイス (ディスクスライスや ZFS ボリュームなど) を予約する場合があります。そのような場合、dumpadm のデフォルトを、システムリブート時に savecore が自動的に実行されないことを意味する -n に設定してもかまいません。クラッシュイメージはダンプデバイス上に保持されます。クラッシュイメージを収集して /var/crash の下のファイルにコピーするために、/usr/sbin/savecore を root として手動で実行してください。クラッシュイメージは、後続のもので上書きされるまでダンプデバイス上に残ります。