RIGHT:[[Linux 関係覚え書き]]
RHEL や CentOS の ISO イメージを使ったネットワークインストールの
方法をかいつまんで説明
*ブートサーバ側の設定 [#le8474af]
(1) DHCP サーバの設定
インストール対象の機器が PXE ブートするように DHCP サーバの設定をする.
/etc/dhcpd.conf に記述する主な行
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.20;
}
host linuxinst {
hardware ethernet XX:XX:XX:XX:XX:XX;
fixed-address 192.168.1.10;
option host-name "linuxinst";
option vendor-class-identifier "PXEClient";
option vendor-encapsulated-options 01:04:00:00:00:00;
filename "/linux-install/pxelinux.0";
option root-path "/tftpboot";
}
(2) TFTP サーバの設定
xinetd の設定(/etc/xinetd.d/tftp はデフォルトのままで大丈夫なはず)
ネットワークブート時に読み込まれるファイルを所定の場所に置く.
# mkdir /tftpboot/linux-install
# cd /tftpboot/linux-install
# cp /usr/lib/syslinux/pxelinux.0 .
Linux のカーネル,RAM ディスクをインストール DVD の ISO ファイルから
取出し,所定の場所に置く.
# mount -o loop,ro rhel-server-5.6-x86_64-dvd.iso /mnt
# mkdir /tftpboot/linux-install/rhel5
# cd /mnt/images/pxeboot
# cp initrd.img vmlinuz /tftpboot/linux-install/rhel5
(ここでコピーする vmlinuz, initrd.img が読み込める ISO イメージは
上で利用した ISO イメージだけなので,インストールする OS の ISO イメージを
使うこと.
つまり,他のバージョンでの使い回しが効かない.
そのため,複数のバージョンを使い分けるのであれば,
2行めのディレクトリ作成(mkdir /tftpboot/linux-install/rhel5)の部分を
バージョンごとに分けてやればいいだろう)
ブートメニューを作成する.
# cd /tftpboot/linux-install
# mkdir pxelinux.cfg
# cd pxelinux.cfg
# vi default
default RHEL5.6
prompt 1
timeout 10
label RHEL5.6
menu label ^RHEL5.6
kernel /rhel5/vmlinuz
append method=nfs:192.168.0.2:/export/rhel56 initrd=/rhel5/initrd.img
ここでは default という名前でインストール対象のサーバ共通の
設定としたが,MAC アドレスで設定を分けることもできる.
その場合には 01-XX-XX-XX-XX-XX-XX-XX-XX という風に
対象の機器の MAC アドレスに "01-" をつけた名前でファイルを
作成してやればよい.
ファイルの内容は default のものと同じ形式でよい.
*NFS サーバ側の設定 [#p472d354]
先の設定で指定した NFS サーバ method=nfs:192.168.0.2:/export/rhel56 に
ISO ファイルを置いてやる.
先にも記述したが,ネットワークブートで利用する vmlinuz, initrd.img と
ISO イメージは対になっていないといけないことに注意する.
NFS エクスポートの設定は割愛する.
*インストールする機器での操作 [#ke5b4a43]
-前提条件として,PXE によるネットワークブートができる機器でないとだめ.
BIOS のメニューなどから PXE によるネットワークブートを選択すれば,
インストーラが起動する.
途中,キャラクタベースで言語とキーボード設定を聞かれる.
言語設定では JP を選んでも US になってしまうが支障はない.
あとは通常通りのインストールとなる.