質問:「組込みLinuxが突然再起動した.
このとき確認すべきものを優先度が高い順に教えてください.」
以下はChatGPTの回答.
組込みLinuxシステムが突然再起動した場合、原因の特定は重要です。以下は、優先度順にチェックすべき項目です:
✅【優先度:最上】1. カーネルログ (dmesg, journalctl -k)
再起動直前にカーネルが出力したメッセージは最重要。
dmesg | tail -50
journalctl -k -b -1 # 前回起動時のカーネルログ
チェックする内容:
-
kernel panic,BUG,Oopsなどの致命的エラー -
watchdog,soft lockup,hard lockupのようなハング検出 -
Out of memory: Killed process ...→ OOMが原因の再起動 - ファイルシステム関連のエラー(例:
EXT4-fs error)
✅【優先度:高】2. systemd ログ(前回起動時)
systemd のログでシャットダウン/リブートの意図的な痕跡がないか確認します:
journalctl -b -1
チェックする内容:
systemd[1]: Rebooting.-
session-*.scope: A process has been killed by the OOM killer.(=OOMで落ちた) - 再起動直前にログがぷつっと切れてる → 電源断やカーネルクラッシュの可能性
✅【優先度:高】3. 電源関連の確認(ログ+物理)
ログに何も出ていない場合は、**電源断(瞬断含む)**の可能性大:
- UPSを使用していない場合、外部環境要因(ケーブル抜け・電源ノイズ)
- ハードウェアウォッチドッグによる強制リブート
- 電圧低下ログ:一部ボード(例:Raspberry Pi)は
/var/log/syslogにunder-voltage警告が出る
✅【優先度:中】4. /var/log/ 下のログファイル
一般的なログファイル群からヒントを得る:
less /var/log/syslog
less /var/log/messages
less /var/log/kern.log
検索ワード例:
-
panic,fatal,segfault,watchdog,reboot,oom - 再起動直前にエラーが集中してないか確認
✅【優先度:中】5. ハードウェア監視(watchdog, センサー)
以下を使って、ハードウェア監視機構が働いたかを確認:
lsmod | grep watchdog
dmesg | grep watchdog
journalctl -b -1 | grep watchdog
ボードによっては /dev/watchdog 経由で強制リブートが走る設定もある。
✅【優先度:低〜中】6. ソフトウェア起因(自動更新、バグ)
- cronやタイマーによる自動再起動
- アプリケーションのバグ(無限ループや無制限メモリ確保)→ OOM
- 組込み独自のシェルスクリプト等による
rebootコマンド
🚨番外:ログが全く残っていない場合
→ 電源断またはハードウェアリセットの可能性が高いです。
チェックする:
-
last -x reboot→ reboot時刻がログに記録されているか? -
journalctl --list-bootsでログが途中で途切れていないか?
必要なら、チェック用のシェルスクリプトも一緒に組みますよ。再起動の頻度や条件もわかれば、調査の方針をもっと絞れます。どうしますか?