Linuxサーバーをシリアルコンソールから管理する



SCSコンソールソールサーバ よくある質問と回答集
LINUXのシリアルコンソールFAQ
BIOS設定について
  • HP/COMPAQ BIOS シリアルコンソールについて
    HPのサイトを参照ください.

  • HP/COMPAQ NIC-MGMT/BIOSシリアルコンソール(IPMI v1.5用)について
    HPのサイトを参照ください.

  • HP/COMPAQ BIOS シリアルコンソールでファンクションキーが使えない
    HPのサイトのエスケープシーケンスの項を参照ください.

  • 富士通/PRIMERGY BIOS シリアルコンソールについて
    PRIMERGYのマニュアルにBIOSの入出力をシリアルコンソールに切り替えるための記述がありますのでそちらを参照ください.通信パラメータをLinuxのコンソール設定と合わせておくことを忘れないで下さい.また,使用する端末エミュレーションに合わせてターミナルのモードを指定してください(VT100など).
    PRIMERGYの機種によっては,IPMIとコンソールがCOM1を共有している場合があります.その場合は,BIOSの設定で,Share(キーシーケンスによる切り替え)かSystem(シリアルコンソール専用)を選択します.BIOSのコンソールリダイレクションはEnhancedにしない(OSが起動したらCOMポートは開放する)に設定します.Enhancedにすると grub メニューを表示することができず,grubが停止する(Linuxがブートしない)ことがあります.

  • 富士通/PRIMERGY BIOS シリアルコンソールでファンクションキーが使えない
    HPと同様に,ESCキーと数字キーの組み合わせをファンクションキーに置き換えて使えます.例えばF2キーはESCを押して2秒以内に数字の2のキーを押す.

ブートローダとgettyの設定について
  • RedHat 8, 9, AS, ES, WS のカーネルメッセージのシリアルへの出力とシリアルログイン
    シリアルコンソールを115,200bps, 8データビット,1ストップビット,RTS/CTSフロー制御に設定する例を示します. SCS側も115,200bps, 8データビット,1ストップビット,RTS/CTSフロー制御に設定してください.115,200bpsを使用する場合はシリアルケーブル長を3m以下にすべきです. 長いシリアルケーブルを必要とする場合は通信速度を遅くしてください.

    grubを使用している場合

    /etc/grub.conf は /boot/grub/grub.conf へのシンボリックリンクです./boot/grub/grub.conf を編集します.

    /boot/grub/grub.conf の 'splashimage=(hd0,0)/boot/grub/splash.xpm.gz' をコメントアウトし,grub が text モードで起動するようにします.

    /boot/grub/grub.conf にGrubのブートメニューが使うシリアルパラメータの行を書き加えます.
    serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1

    /boot/grub/grub.conf にGrubのブートメニューをどのデバイスに出力するか書き加えます.
    例:シリアルコンソールとキーボードモニタのいずれかを使う場合("Press any key to continue"をシリアルポートとモニタの両方に表示し,何もしないと10秒でタイムアウトしてgrub.confのデフォールトOSが起動する)
    terminal --timeout=10 serial console
    例:シリアルコンソールのみを使う場合
    terminal serial

    /boot/grub/grub.conf の各 kernel行の末尾に,カーネルに渡すコンソールパラメータを書き加えます.
    例:シリアルコンソールとキーボードモニタのいずれかを使う場合
    console=tty0 console=ttyS0,115200
    例:シリアルコンソールのみを使う場合
    console=ttyS0,115200

    また,シングルユーザーモードのkernel行を追加しておくと後ほど便利です.シングルユーザーモードの kernel 行には末尾に s をつけます.
    grub.conf の例はこちらをクリック


    /etc/inittabの最後に 'co:2345:respawn:/sbin/agetty -h 115200 ttyS0 vt100' を追加し,init q (telinit q) を実行します.ランレベル1(シングルユーザーモード)ではgettyがなくてもログインできますから,1は不要です.
    inittab の例はこちらをクリック


    /etc/sysconfig/kudzu を編集して 'SAFE=yes' に変更し、初期化中のシリアルポート, PS2マウス, DDC(モニタ)へのプローブが行われないようにします.kudzu のコメント行は ## で始めてください.
    kudzu の例はこちらをクリック


    /etc/securetty に 'ttyS0' を追加し、root が ttyS0 にログインできるようにします.
    securetty の例はこちらをクリック

    /etc/sysconfig/initを編集し,カラーのターミナルシーケンスを止めます.
    BOOTUP=serial

    boot の途中で kudzu が起動し,PS/2 mouse が接続されていないとのメッセージが表示されたら [Keep Configuration] を選択してください. また ttyS0 が新規に見つかったとのメッセージが表示されたら [Ignore] を選択してください.


    参照:http://www.linux.or.jp/JF/JFdocs/Remote-Serial-Console-HOWTO/configure-boot-loader-grub.html


    liloを使用している場合
    /etc/lilo.conf の 'message=/boot/message'をコメントアウトし、liloが textモードで起動するようにします。
    /etc/lilo.conf の 'append="console=tty0 console=ttyS0,115200"'を kernel optionとして追加します。
    #lilo -vを実行します。
    /etc/inittabの最後に '7:12345:respawn:/sbin/agetty -h 115200 ttyS0 vt100'を追加します。
    /etc/sysconfig/kudzuで 'SAFE=yes'に変更し、初期化中のシリアルポートへのプローブが行われないようにします。
    /etc/securettyに 'ttyS0'を追加し、rootが ttyS0にログインできるようにします。
    システムを再起動します。
    途中 kudzuが起動し、PS/2 mouseが接続されていないとのメッセージが表示されます。[Keep Configuration]を選択してください。 途中 kudzuが起動し、ttyS0が新規に見つかったとのメッセージが表示されます。[Ignore]を選択してください。

    参照:http://www.linux.or.jp/JF/JFdocs/Remote-Serial-Console-HOWTO/configure-boot-loader-lilo.html

Linuxのシリアルコンソールについては次を参照ください.
参照:http://www.linux.or.jp/JF/JFdocs/Remote-Serial-Console-HOWTO/index.html

    更新:2008年9月26日
    株式会社 昌新 技術部