Linuxシステムで発生するさまざまな障害に対処する際、最初に観測されるのは症状であり、根本原因の特定が復旧の鍵となる。ログ管理の理解と代表的なトラブルシューティング手法を習得することで、管理者は迅速に問題箇所を特定し、適切な対処が可能になる。
ログの種類と分析
Linuxでは、システム動作に関する情報を記録するログファイルが重要な診断手段となる。主に以下の3種類に分類される。
- カーネル・システムログ:syslogサービス(例:rsyslog)により一元管理され、設定ファイル
/etc/rsyslog.conf に基づきメッセージが記録先に振り分けられる。多くのシステムメッセージは /var/log/messages に出力される。
- ユーザーログ:ユーザーのログイン・ログアウト履歴を記録。バイナリ形式のため、
who、w、last、ac などの専用コマンドで参照する必要がある。
- アプリケーションログ:特定のソフトウェアが独自に管理するログ(例:Apacheのaccess.log)。形式はアプリケーションごとに異なる。
ログレベル(重要度順)
- 0: EMERG(緊急)— システム使用不能
- 1: ALERT(警戒)— 即時対応が必要
- 2: CRIT(重大)— 深刻な問題
- 3: ERR(エラー)— 実行エラー
- 4: WARNING(警告)— 注意が必要な事象
- 5: NOTICE(通知)— 正常だが注目すべきイベント
- 6: INFO(情報)— 一般的な情報
- 7: DEBUG(デバッグ)— 開発・診断用詳細情報
起動関連の障害対応
MBR破損
物理ディスクの先頭512バイトに存在するMBRが破損すると、システム起動が不可能になる。復旧手順:
dd if=/dev/sda of=/backup/mbr.img bs=512 count=1 でバックアップ取得
- 障害発生時はレスキューモード(例:RHELインストールメディアで
linux rescue 起動)から復元:
dd if=/mnt/backup/mbr.img of=/dev/sda bs=512 count=1
GRUBの不具合
レスキューモードでchroot環境に入り、GRUBを再インストール:
chroot /mnt/sysimage
grub-install /dev/sda
また、
/boot/grub/grub.conf(または
/boot/grub2/grub.cfg)が欠損している場合は、手動で再作成する。
重要な設定ファイルの喪失
rootパスワードの紛失
シングルユーザーモードまたはレスキューモードでchrootし、
passwd root を実行して再設定。
ソフトウェア関連の問題
- RPMデータベース破損:
rpm --rebuilddb で再構築。
- 共有ライブラリ(.so)不足:
find / -name "libxxx.so*" 2>/dev/null で存在確認
- 存在しない場合は依存パッケージをインストール
- 存在するが見つからない場合は
/etc/ld.so.conf にパス追加後、ldconfig 実行
ファイルシステム・ディスク障害
システムパフォーマンス監視
- CPU負荷:
uptime または cat /proc/loadavg
- メモリ使用状況:
free -m
vmstat 1 3
- ディスクI/O:
iostat -d 1(sysstatパッケージ要)
- CPU使用率詳細:
mpstat 1 3