1.5. netconsoleの設定
ディスクへのログの記録に失敗した場合や、シリアルコンソールを使用できない場合は、カーネルデバッグの使用が必要になる場合があります。
netconsole
カーネルモジュールを使用すると、ネットワークを介して別のコンピューターにカーネルメッセージをログに記録できます。
netconsole
を使用できるようにするには、ネットワークに適切に設定された rsyslog
サーバーが必要です。
手順1.1 netconsole 用 rsyslog サーバーの設定
/etc/rsyslog.conf
ファイルのMODULES
セクションで次の行のコメントを解除して、514/udp ポートをリッスンし、ネットワークからメッセージを受信するようにrsyslogd
デーモンを設定します。$ModLoad imudp $UDPServerRun 514
rsyslogd
サービスを再起動して、変更を適用します。]# systemctl restart rsyslog
rsyslogd
が 514/udp ポートでリッスンしていることを確認します。]# netstat -l | grep syslog udp 0 0 0.0.0.0:syslog 0.0.0.0:* udp6 0 0 [::]:syslog [::]:*
netstat -l 出力の0.0.0.0:syslog
および[::]:syslog
値は、rsyslogd
が/etc/services
ファイルで定義されたデフォルトのnetconsole
ポートでリッスンしていることを意味します。]$ cat /etc/services | grep syslog syslog 514/udp syslog-conn 601/tcp # Reliable Syslog Service syslog-conn 601/udp # Reliable Syslog Service syslog-tls 6514/tcp # Syslog over TLS syslog-tls 6514/udp # Syslog over TLS syslog-tls 6514/dccp # Syslog over TLS
Netconsole
は、initscripts パッケージの一部である /etc/sysconfig/netconsole
ファイルを使用して設定されます。このパッケージはデフォルトでインストールされ、netconsole
サービスも提供します。
送信元マシンを設定する場合は、次の手順に従ってください。
手順1.2 送信元マシンの設定
/etc/sysconfig/netconsole
ファイルのSYSLOGADDR
変数の値を、syslogd
サーバーの IP アドレスに一致するように設定します。以下に例を示します。SYSLOGADDR=192.168.0.1
- 変更を有効にするために
netconsole
サービスを再起動します。]# systemctl restart netconsole.service
- システムを再起動した後に
netconsole.service
を実行できるようにします。]# systemctl enable netconsole.service
- クライアントからの
netconsole
メッセージを/var/log/messages
ファイル(デフォルト)またはrsyslog.conf
で指定されたファイルで表示します。]# cat /var/log/messages
注記
デフォルトでは、
rsyslogd
および netconsole.service
はポート 514 を使用します。別のポートを使用するには、/etc/rsyslog.conf
の以下の行を、必要なポート番号に変更します。
$UDPServerRun <PORT>
送信マシンで、
/etc/sysconfig/netconsole
ファイルで以下の行のコメントを解除して編集します。
SYSLOGPORT=514
netconsole
設定およびトラブルシューティングのヒントに関する詳細は、Netconsole Kernel Documentation を参照してください。