Red Hat Enterprise Linux 4.6 以降における sosreport の役割と取得方法
Environment
- Red Hat Enterprise Linux 4.6 以降
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
- Red Hat Enterprise Linux 7
- Red Hat Enterprise MRG
Issue
sosreportとは何ですか?- システムのログファイル、設定の詳細、およびシステム情報を Red Hat Enterprise Linux システムから取得し、Red Hat テクニカルサポートに提供して解析を依頼するにはどうすれば良いですか?
- Red Hat テクニカルサポートチームへのサービスリクエストを作成しています。初期解析のためにどのようなデータを提供する必要がありますか?
sosreportを取得する方法は?- システムが起動していないか、sosreport を生成するのに十分な時間起動していない場合は、代替方法について以下のページを参照してください。
- ファイルが大きくてアップロードできない場合は、大規模なファイルを扱う方法について以下のページを参照してください。
- sosreport を含むパッケージをインストールする方法は?
- sosreport がハングしたときの対処方法は?
- sosreport の副次的影響は?
Resolution
Azure 仮想ゲストの場合
- How to Create a Microsoft Azure Virtual Machine sosreport and Submit the Report to Red Hat を参照してください。
sosreport とは何ですか?
sosreport コマンドは、設定の詳細、システム情報、および診断情報を Red Hat Enterprise Linux システムから取得するツールです。 たとえば、実行しているカーネルのバージョン、ロードしたモジュール、そしてシステムおよびサービスの設定ファイルを取得します。 さらに、外部プログラムを実行してより詳細な情報を取得し、結果アーカイブにこの出力結果を保存します。
sosreport の出力は、Red Hat Enterprise Linux システムのサービス要求を解析するのに、Red Hat サポートエンジニアが通常最初に行うものです。
sosreport を実行する
sos パッケージをインストールしたら、以下のコマンドを実行して sosreport を実行します。
注意: sosreport を実行するには root 権限が必要です。
# sosreport
Red Hat Enterprise Linux 6 では、このコマンドが終了するには数分かかります。古いバージョンだともう少しかかる場合があります。ローカル設定と指定したオプションによっては、コマンドが終了するのに時間がかかる場合があります。sosreport コマンドの実行時間を気にされる場合は、Red Hat サポートチームにご連絡ください。
sosreport コマンドが完了すると、/tmp (RHEL6 以前) または /var/tmp (RHEL7 以降) の下に圧縮ファイルが生成されます。バージョンが異なると使用する圧縮スキームが異なります (gz、bz2、または xz)。作成されたファイルを (通常はサポートケースに添付して) サポートチームに提供してください。
システム設定と、有効な sosreport のオプション機能によって、アーカイブのサイズは異なります。たとえば、システムログファイルをすべて取得する "all_logs" オプションを一般的なモジュールに指定すると、アーカイブのサイズが著しく増加する場合があります。
sosreport などのファイルを既存のサポートケースに追加するには、 redhat-support-tool コマンドラインオプション、Red Hat ポータル UI、または FTP を使用したさまざまな方法が利用できます。
取得した sosreport ファイルが大きすぎてケースにアップロードできない場合は、Red Hat ftp サイト (dropbox.redhat.com) にアップデートすることができます。
ユーザーおよびアカウント情報をインタラクティブに入力しないで済むように、--batch オプションを指定してバッチモードで実行することができます。この場合、ユーザー情報はシステムの RHN 設定ファイルから取得されます。
# sosreport --batch
sosreport コマンドはモジュール構造のため、コマンドラインからモジュールを有効や無効にしたり、モジュールオプションを指定したりできます。利用可能なモジュール (プラグイン) の一覧を表示するには、以下のコマンドを使用します。
# sosreport -l
モジュールを一時的にオフにするには、以下を実行します。
-n/--skip-plugins オプションに渡すコンマ区切りのモジュールリストにそのモジュールを含める必要があります。
たとえば、kvm および amd モジュールを (壊れている場合に) ともに一時的に無効にするには、以下のコマンドを実行します。
# sosreport -n kvm,amd
個々のモジュールは、-k オプションで指定できる追加オプションを提供している場合もあります。たとえば、Red Hat Enterprise Linux 4 および 5 の sos rpm モジュールは、デフォルトで "rpm -Va" 出力結果を取得します。これには時間がかかる場合があるので、以下のコマンドを実行して無効にすることもできます。
# sosreport -k rpm.rpmva=off
RHN Proxy Server で sosreport を実行する
RHN Proxy Server で詳細情報を取得するには、以下のコマンドを実行します。
# sosreport -o rhn
注意:
-
Red Hat Enterprise Linux 4.5 以前には、診断用アーカイブファイルを作成する
sysreportコマンドが同梱されています。可能な場合は、後継リリースに含まれるsosパッケージにシステムをアップデートしてください。ただし、必要に応じて sysreport も Red Hat に提出することができます。詳細については、What is a sysreport and how to run it in Red Hat Enterprise Linux? を参照してください。 -
Red Hat Enterprise Linux 4 および 5 の
sosパッケージにはsysreportコマンドも同梱されています。これは、以前のバージョンへの互換性として提供されているシンボリックリンクです。# ls -l /usr/sbin/sysreport lrwxrwxrwx 1 root root 19 Nov 3 2008 /usr/sbin/sysreport -> /usr/sbin/sosreport
これらのインストールでオリジナル (レガシー) バージョンの sysreport スクリプトを使用するには、以下のように sysreport.legacy コマンドを実行します。
# sysreport.legacy
This utility will go through and collect some detailed information
about the hardware and setup of your Red Hat Linux system.
This information will be used to diagnose problems with your system
and will be considered confidential information. Red Hat will use
this information for diagnostic purposes ONLY.
sosreport をインストールする
sosreport を実行するには、sos パッケージがインストールされている必要があります。 パッケージはデフォルトグループに含まれており、大概のシステムには自動的にインストールされます。
パッケージがインストールされていない場合は、以下の手順に従って手動で追加することができます。
Red Hat Enterprise Linux 5 以降
システムが RHN に登録済みの場合は、yum コマンドを使用することができます。
# yum install sos
システムが RHN に登録されていない場合、sos パッケージは RHN web サイトからダウンロードするか、インストール CD か DVD から取得することができます。rpm コマンドを使用して、そのパッケージを Red Hat Enterprise Linux のすべてのバージョンにインストールすることができます。
# rpm -Uvh sos-<version>.noarch.rpm
Red Hat Enterprise Linux 4 Update 6 以降の場合
システムが Red Hat Network (RHN) に登録済みの場合は、up2date コマンドで sos パッケージをインストールすることができます。
# up2date sos
sosreport がハングしたときの対処方法
-
RHEL5 で実行している場合は、sosreport プロセスの PID で kill する前にプロセスを背景で実行します (ctrl-z)。この操作を行わないと、sosreport hangs the system when multiple SIGINTs received に記載される問題が発生する場合があります。
-
デバイスに空き領域がないため sosreport に失敗した場合
/tmpを含むファイルシステムに十分な領域があることを確認します。
# df -h /tmp Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_ren-lv_root 50G 49G 1M 99% /- 追加の空き領域を確保するか、以下の引数を使用して、異なるディレクトリを指定することができます。
# sosreport --tmp-dir /path/to/another/volume -
sosreport が、特定のプラグインが原因でハングアップした可能性ある場合
どのプラグインがハングアップしているかを特定するには、以下を実施します。
- sosreport の詳細度を増やす。sosreport -vvvv
- strace を実行します。
どのプラグインがハングアップしているかを特定できたら、そのプラグインを除外します。
以下のコマンドを入力してすべてのプラグインを表示します。
sosreport -l
たとえば、filesys プラグインを除外するには、以下のコマンドを実行します。
sosreport -n filesys
-
その他の場合は、sosreport の代わりに、以下のスクリプトを実行してレポートを手動で作成することができます。 これは、標準の sosreport で収集されるものの一部です。
#!/bin/bash host="$(hostname)" sos_dir="/tmp/${host}_hungsos" mkdir $sos_dir cd $sos_dir chkconfig --list > chkconfig date > date df > df dmesg > dmesg dmidecode > dmidecode fdisk -l > fdisk free > free hostname --fqdn > hostname ifconfig > ifconfig lsmod > lsmod lspci > lspci cat /proc/mounts > mount netstat -tlpn > netstat ps auxww > ps rpm -qa > rpm-qa rpm -Va > rpm-Va #this command may take a while to run ulimit -a > ulimit uname -a > uname uptime > uptime cat /proc/meminfo > meminfo cat /proc/cpuinfo > cpuinfo mkdir etc cd etc cp /etc/fstab . cp /etc/cluster/cluster.conf . cp /etc/security/limits.conf . cp /etc/redhat-release . cp /etc/sysctl.conf . cp /etc/modprobe.conf . mkdir sysconfig/network-scripts -p cd sysconfig cp /etc/sysconfig/* .-R cd $sos_dir mkdir var/log -p cp /var/log/message* var/log -R cd /tmp tar -cvjf ${host}_hungsos.tar.bz2 $sos_dir
レスキューモードで sosreport を取得する
システムが起動しない場合は、トラブルシューティングのために、レスキューモードで sosreport を取得することができます。
詳細は、How to generate sosreport from the rescue environment? を参照してください。
別の場所に sosreport を生成する
/tmp のサイズに制限がある場合は、別の場所に sosreport を作成することができます。
詳細は、How do I make sosreport write to an alternative location? を参照してください。
sosreport を手動で取得する
何か問題が発生して sosreport を生成できない場合は、以下のナレッジを確認してファイルを手動で取得してください。
Sosreport fails. What data should I provide in its place?
sosreport の副次的効果
This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
