ytooyamaのブログ

サーバ構築とか、仕事で発見したこととか、趣味のこととかを書いています。

続・UbuntuのPXEブートオプションについて調べました

これの続きです。

ytooyama.hatenadiary.jp

今日は次のように設定して、CentOS 7もPXEブートできるようにしました。 個人的にLinuxで何か動かす時はFedoraとかCentOS 7をよく使うのでより一層便利になりました。

UbuntuDebianのPXEブートでは基本ネットワークインストールになるのに対し、 CentOS 7のPXEブートによるインストールではインストールソースをmethod=で渡すことができます。ISOをマウントしてローカルのWebサーバーで公開したものを設定するとか、公開HTTPサーバー上のパスを渡すことでネットワークインストールが可能です。kernelとinitrdはサーバーからダウンロードしたファイルを指定したパスに配置するだけです。ここら辺の指定方法はUbuntuの書き方の例と一緒です。ちなみにFedora 23のイメージはこっち

# vi /var/lib/tftpboot/pxelinux.cfg/default
... (以下を追記)
label 8
menu label ^8) Install CentOS 7 x64
kernel cent7/vmlinuz
append linux text net.ifnames=0 initrd=cent7/initrd.img ip=dhcp method=http://mirror.centos.org/centos/7/os/x86_64

設定追加後にブートしたらこんな感じで表示されました。

f:id:ytooyama:20160429005444p:plain

Oh...7のラベルミスってる(^^;

appendで「linux text」を渡しているのでテキストインストーラーが起動します。GUIインストーラーが良ければこの記述を取り除けばいいです。「net.ifnames=0」はNICのデバイス名を従来の「eth0」のようにする設定です。不要であれば同様に取り除きます。

なお、methodに指定するURLは日本のミラーサーバーを指定したほうが当然インストールは速くなります。自分が好きなところのミラーを指定するといいと思います。

ex. methodで指定するソースの代表例(大文字小文字に注意)