CentOS 7 をインストール(シリアルコンソールの設定編)
もう CentOS 8 がリリースされたというのに、OS が CentOS 6 のままな自宅サーバーをようやく CentOS 7 に移行することにしました。ちなみに自宅サーバーのハードウェアは2013年頃に購入した NEC Express5800 GT110e です。この機種、オンボードの RAID コントローラー (LSI embedded Megaraid) を搭載していますが、残念ながら Broadcom の Web サイトには SAS のドライバーしか置いておらず、NEC の Web サイトにも Windows 用のドライバーしかないので、CentOS では使えません。最近買ったものなら Express Builder の中に入ってるのかな?
OS のインストール
詳細は割愛。CentOS 7 (Minimum) の ISO イメージをダウンロードして適当な USB リムーバブルストレージに dd コマンドで書き込み、インストールメディアを作成→自宅サーバーの BIOS の設定を変更して USB リムーバブルストレージから起動するようにすればグラフィカルなインストーラーが起動するので、特に迷うことなくインストールできると思います。タイムゾーンやキーボードレイアウト、ホスト名、ディスクパーティションあたりはインストーラーで設定するのが楽かと思います。
シリアルコンソールの設定
NEC Express5800 GT110e はちゃんと BMC が搭載されているため、SSH からシリアルコンソールにアクセスできるので、BMC の管理用ネットワークインターフェースに正しく IP アドレスを振りさえすれば以降の作業はディスプレイもキーボードも接続せずにすることができます。
これを使うためには CentOS 7 でシリアルコンソールを使えるように設定する必要があります。具体的には、GRUB2 の設定を変更し、OS 起動時にシリアルコンソール用仮想端末が上がるようにします。
# sed -i 'GRUB_TERMINAL_OUTPUT="console"/GRUB_TERMINAL_OUTPUT="serial console"/' /etc/default/grub # sed -i '/^GRUB_CMDLINE_LINUX=/s/$/ console=tty0 console=ttyS0,9600 console=ttyS1,9600"/' /etc/default/grub # echo 'GRUB_TERMINAL="console serial"' >> /ect/default/grub # echo 'GRUB_SERIAL_COMMAND="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1"' >> /etc/default/grub # grub2-mkconfig -o /boot/grub2/grub.cfg
serial 端末を OS 起動時に起動できるようにし、再起動すればシリアルコンソールの設定完了。
# cp /lib/systemd/system/serial-getty\@.service /etc/systemd/system/serial-getty@ttyS1.service # ln -s /etc/systemd/system/serial-getty\@ttyS1.service /etc/systemd/system/getty.target.wants/ # systemctl daemon-reload # systemctl start serial-getty@ttyS1.service # systemctl enable serial-getty@ttyS1.service # shutdown -r now
設定は次の Web ページを参考にしました。