26.9. シリアルコンソールでの GRUB 2
本セクションでは、ディスプレイやキーボードのないマシンでのシリアル通信に GRUB 2 を設定する方法を説明します。
シリアル接続で GRUB 2> 端末にアクセスするには、特定のカーネルがシリアル接続を監視するように、カーネル定義に追加オプションを追加する必要があります。
以下に例を示します。
console=ttyS0,9600n8
console=ttyS0 は使用するシリアルターミナルです。9600 はボーレート、n は非パリティー用、および 8 はビット単位の単語長さを示します。たとえば、115200 のように非常に高いボーレートは、ログファイルの後のタスクに適しています。
シリアルコンソール設定の詳細は、「インストールできる外部のドキュメント」 を参照してください。
26.9.1. シングルブート用に GRUB 2 の設定 リンクのコピーリンクがクリップボードにコピーされました!
単一ブートプロセス中にのみシステムがシリアルターミナルを使用するよう設定するには、GRUB 2 ブートメニューが表示されたときに、起動したいカーネルにカーソルを移動し、e キーを押してカーネルパラメーターを編集します。rhgb パラメーターと quiet パラメーターを削除し、以下のように linux16 行の最後にコンソールパラメーターを追加します。
linux16 /vmlinuz-3.10.0-0.rc4.59.el7.x86_64 root=/dev/mapper/rhel-root ro rd.md=0 rd.dm=0 rd.lvm.lv=rhel/swap crashkernel=auto rd.luks=0 vconsole.keymap=us rd.lvm.lv=rhel/root console=ttyS0,9600
この設定は永続的なものではなく、これから実行するブートにのみ適用されます。
26.9.2. 永続的な変更のための GRUB 2 の設定 リンクのコピーリンクがクリップボードにコピーされました!
システムでメニューエントリーの変更を永続的に行うには、grubby ツールを使用します。たとえば、デフォルトのカーネルのエントリーを更新するには、以下のようにコマンドを入力します。
~]# grubby --remove-args="rhgb quiet" --args=console=ttyS0,9600 --update-kernel=DEFAULT
--update-kernel パラメーターはキーワード ALL、またはカーネルインデックス番号のコンマ区切りのリストも受け入れます。grubby の詳細は 「GRUB 2 メニューエントリーに対する引数の追加および削除」 を参照してください。
26.9.3. 新しい GRUB 2 ファイルの設定 リンクのコピーリンクがクリップボードにコピーされました!
新しい GRUB 2 設定ファイルを構築する必要がある場合は、/etc/default/grub ファイルに次の 2 行を追加します。
GRUB_TERMINAL="serial"
GRUB_SERIAL_COMMAND="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1"
最初の行は、グラフィカルターミナルを無効にします。GRUB_TERMINAL キーを指定すると、GRUB_TERMINAL_INPUT および GRUB_TERMINAL_OUTPUT の値を上書きすることに注意してください。2 行目では、ボーレートやパリティーなどの値を使用中の環境とハードウェアに適合するように調整します。たとえば、115200 のように非常に高いボーレートは、ログファイルの後のタスクに適しています。/etc/default/grub ファイルを変更した場合は、GRUB 2 設定ファイルの更新が必要になります。
次のように grub2-mkconfig -o コマンドを実行して、grub.cfg ファイルを再構築します。
BIOS ベースのマシンでは、
rootで以下のコマンド実行します。~]# grub2-mkconfig -o /boot/grub2/grub.cfgUEFI ベースのマシンでは、
rootで以下のコマンド実行します。~]# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg
26.9.4. screen を使用したシリアルコンソールへの接続 リンクのコピーリンクがクリップボードにコピーされました!
screen ツールは、シリアルターミナルとして機能します。このツールをインストールするには、root で以下を実行します。
~]# yum install screen
シリアルコンソールを使用してマシンに接続するには、コマンドを以下のように使用します。
screen /dev/console_port baud_rate
デフォルトでは、オプションが指定されない場合、screen は標準の 9600 ボーレートを使用します。大きいボーレートを設定するには、以下のコマンドを入力します。
~]$ screen /dev/console_port 115200
ここで、console_port は ttyS0 や ttyUSB0 などです。
screen でセッションを終了するには、Ctrl+a を押して、:quit と入力し、Enter を押します。
追加オプションおよび詳細情報は、screen(1) man ページを参照してください。