SLESでのリモートシリアルコンソールの設定
このドキュメント (3456486J) の最後に記載の 免責条項 に基づき提供されています。
環境
Novell SUSE Linux Enterprise Server 10
Novell SUSE Linux Enterprise Server 9
Novell SUSE Linux Enterprise Server 8
Novell SUSE Linux Enterprise Desktop 10
Novell Linux Desktop
Novell SUSE Linux Openexchange Server 4.1
Novell SUSE Linux Standard Server 8
状況
シリアル接続を使ったシステムへのアクセスを設定します。 例、手動でカーネルクラッシュダンプを取得するため。
解決方法
前提条件
- 別の Linux システムを、例えばデータターミナルやMicrosoft Windowsシステムではなく、そのサーバのシリアルコンソールのように設定します。
- どちらのシステムも最初のシリアルポート(DOSの"COM1"ポート)にヌルモデムケーブルを接続します。
- サーバをGRUBを使ってブートします。
- 接続は、ボーレイト115200、8 データビット、1 ストップビット、奇数パリティ ("115200 8N1")を使います。
設定手順
- サーバとコンソール用のサーバ間をヌルモデムケーブルで接続します。 詳細およびピンマップは Wikipediaの記事 Null modem などを参照ください。
- サーバのBIOSがシリアルコンソールをサポートしていれば、BIOSを設定します。 手順の詳細は、BIOSベンダにより違います - 各ベンダのドキュメントを参照ください。
- 最初のシリアルポートを使用するサーバでGRUBを設定します。 /boot/grub/menu.lst ファイルで、 color および gfxmenu の行をコメントアウトし、以下の行を追加します:
serial --unit=0 --speed=115200
terminal --timeout=15 serial console - シリアルポートを使用するサーバでカーネル (およびハイパーバイザ)を設定します。 この設定はXenの設定とXenでない設定で異なります。
Xenでない設定
/boot/grub/menu.lst ファイルで、カーネルコマンドラインに以下のオプションを追加します:
console=tty0 console=ttyS0,115200
カーネルメッセージは tty0 および ttyS0 に書き込まれますが、OSメッセージは ttyS0 だけに書き込まれます。 OSメッセージはブートオプション行で定義された最後のコンソールに出力されます。
以下のサンプルの /boot/grub/menu.lst ファイルはこれらの変更例です:
#color white/blue black/light-gray
default 0
timeout 8
#gfxmenu (hd0,1)/boot/message
serial --unit=0 --speed=115200
terminal --timeout=15 serial console
title Linux ! SERIAL CONSOLE !
kernel (hd0,1)/boot/vmlinuz root=/dev/sda3 selinux=0 splash=0 resume=/dev/sda1 showopts elevator=cfq vga=791 console=tty0 console=ttyS0,115200
initrd (hd0,1)/boot/initrd
Xenの設定
Xen仮想化を使用している場合、Xen ハイパバイザおよび Dom0 カーネルの両方がシリアル接続を使用する必要があります:- console=vga,com1 com1=115200 をハイパバイザのパラメータに追加します。
- console=tty0 console=xvc0,115200 を Dom0 カーネルのパラメータに追加します。
以下のサンプルの /boot/grub/menu.lst ファイルはこれらの変更例です:
#color white/blue black/light-gray
default 0
timeout 8
#gfxmenu (hd1,0)/boot/message
serial --unit=0 --speed=115200
terminal --timeout=15 serial console
title Linux - Xen ! SERIAL CONSOLE !
kernel (hd0,1)/boot/xen.gz console=vga,com1 com1=115200
module (hd0,1)/boot/vmlinuz root=/dev/sda3 console=tty0 console=xvc0,115200
module (hd0,1)/boot/initrd
- シリアル接続経由でのログインを許可するよう設定します。 /etc/inittab ファイルに、以下の行を追加します。
S0:12345:respawn:/sbin/agetty -L 115200 console vt102
シリアル接続を使ってシングルユーザモードを許可するには、さらに以下の行を追加します
~~:S:respawn:/sbin/sulogin/etc/inittab に以下を追加します。
~~:S:respawn:/sbin/sulogin /dev/console
注意: シングルユーザモードはこのオプションでシリアルコンソールでのみ有効になります。 ローカルコンソールを使うには、変更を元に戻します。
- サーバでシリアルポートを安全なポートとして設定します。 そのため、最初に通常のユーザでログインする必要がなく、root でのログインが可能になります。
/etc/securetty ファイルに以下の行を追加します。
console
ttyS0
xvc0
- サーバに screen パッケージがインストールされていることを確認します。 これは後でコントロールシーケンスを送信するのに必要です。
シリアルコンソールを使ってカーネルクラッシュダンプを起動
サーバの "magic SysRq" コントロールを行うため、およびカーネルクラッシュダンプを起動するためにシリアルコンソール接続を使います。 システムのキーボードからの "magic SysRq" が使えないシステムハングの調査に特に有効です。
- カーネルクラッシュダンプ取得にためにサーバを設定します。 詳細は下記のTIDを参照ください:
- TID 3374462J、カーネル コア ダンプ取得の設定、SLE 10での Kdump の手順を説明します。
- TID 3044267J、カーネルコアダンプ取得のための lkcd 設定方法 (Configure lkcd to capture a kernel core dump)、主に SLES9 および関連製品で使われていた lkcdutils の方法を説明します。
- シリアルポート経由でサーバに接続するために、シリアルコンソールシステムで minicom のようなシリアルプログラムを使います。
シリアルコンソールのシステムにrootでログインして実行
screen -S console /dev/ttyS0 115200
これで最初のシリアルポートに接続したスクリーンセッションをセットアップします。 このセッションを使用するには以下の手順を行います:- ネットワークのいずれかのマシンからシリアルコンソールのシステムに root でログインします。
- 以下のコマンドを実行します:
screen -x -r console - SUSE ホストをリブートすると、GRUB が "Press any key to continue." のプロンプトが表示されます。 いずれかのキーを押すと、使用しているデバイスに GRUB メニューが表示されます。 何もキーを押さないと、/boot/grub/menu.lst ファイルに terminal オプションで定義したGRUB メニューが シリアルコンソールスクリーンに表示されます。
- screen コマンドで複数ユーザが同時にスクリーンに接続し制御することができます。 必要な場合は、複数の人たちがトラブルシューティングに参加することが可能です。
- カーネルクラッシュダンプ起動方法:
Xen でない設定
シリアルポートにブレークを送り、そして magic sysrq キーを送ります。 例: Ctrl-A、Ctrl-B、d。 コマンドの詳細は screen の man ページ参照ください。
Xen 設定
Xen ハイパバイザでの magic sysrq キーは Ctrl-O です。 Ctrl-O、d を送りクラッシュダンプを監視します。
追加情報
関連資料
- Glen Turner and Mark F. Komarinski, Remote Serial Console HOWTO
- Brian Jones, SysAdmin to SysAdmin: The beauty of screen
- Phil Hollenback, Using screen for remote interaction
TID 履歴
TID# 10098503
免責条項
このサポート ナレッジベースは、NetIQ/Novell/SUSE顧客、および弊社製品およびそのソリューションに関心のあるパーティへ、情報やアイデアの取得およびそれらの知識を得る為の有効なツールを提供します。 本文書の商品性、および特定目的への適合性について、いかなる黙示の保証も否認し、排除します。
- ドキュメント ID:3456486J
- 作成年月日:31-JAN-07
- 修正年月日:26-OCT-09
-
- SUSESUSE Linux Enterprise Desktop
SUSE Linux Enterprise Server
- SUSESUSE Linux Enterprise Desktop
このドキュメントはあなたの問題を解決しましたか? フィードバックを送る