ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、TFTP を介してアクセス可能である必要があります。
/etc/xinet.d/tftp ファイルで server_args パラメータを探します。
これが、TFTP サーバーにより使用されるルートディレクトリを定義します。ディレクトリが存在しない場合は、ディレクトリを作成します。
この作業では例として /tftpboot を使用します。
TFTP を有効にし、xinetd デーモンを再起動します。
RedHat AS 3.0 で動作する、次の例のようなコマンドを使用します。
#chkconfig tftp on #service xinetd restart |
TFTP ルートディレクトリの下に、次のディレクトリをコピーまたは作成します。
/tftpboot/pxelinux.0 – Linux PXE ブートストラップファイルは http://syslinux.zytor.com/pxe.php からダウンロードできます。
/tftpboot/pxelinux.cfg/ – このディレクトリには PXE 構成ファイルが含まれています。これらのファイルには、各ハードウェアプラットフォームおよび Linux ディストリビューションに固有のパラメータが含まれています。
/tftpboot/pxelinux.cfg/v20z-config – V20z プラットフォームに固有のディレクトリ。
/tftpboot/vmlinuz – ディストリビューションの /images/pxeboot にある、インストールカーネル。
/tftpboot/initrd.img – ディストリビューションの /images/pxeboot にある、インストール RAM ディスク。
次の例に、SunFire V20z システムの PXE 構成ファイルを示します。
default el30 ks serial 0 9600 label el30 kernel vmlinuz append linksleep=30 ksdevice=eth0 console=tty0 console=ttyS1,9600 load_ramdisk=1 initrd=initrd.img network
各行の意味は次のとおりです。
最初の行 (default) はラベル el30 を使用し、Kickstart インストール (カーネルに ks を渡す) を行うことを指定します。
第 3 行 (label) は、ラベル el30 を定義します。
第 4 行 (kernel) は、読み込むカーネルを特定します。パスは pxelinux.0 に対して相対的です。
第 5 行 (append) には、一連のネットワーク構成パラメータが含まれています。append パラメータはすべて同じ行に存在する必要があります。ここに示す固有のパラメータは次のとおりです。
linksleep=30 は、システムが動作していないと判断する前にカーネルに待機するよう通知します。ネットワークインタフェースの中には、アップ状態になるまで長い時間を要するものもあります。
ksdevice=eth0 は、eth0 インタフェースを介してインストールを実行するよう指定します。このパラメータが省略されている場合、eth0 (の値) が使用されます。
console=tty0 console=ttyS1,9600 は、コンソールにインストール出力を表示するようコンソールパラメータを指定します。パラメータは、ターゲットハードウェアのプラットフォームに応じて異なります。
load_ramdisk は、RAM ディスクに initrd.img を使用することを示しています。RAM ディスクのパスは pxelinux.0 に対して相対的です。
initrd はネットワークインストールを実行することを示しています。
vmlinuz および initrd ファイルは、特定のディストリビューションの特定のバージョンのみで動作します。サーバーを使用して複数のディストリビューションまたはディストリビューションの複数のバージョンを提供する場合、各 vmlinuz と initrd のペアは一意に識別可能である必要があります。次の例に示すように、別のディレクトリを使用するかファイル名を変更することで、一意の識別子を作成できます。
/tftpboot/pxelinux.0 /tftpboot/RHEL2.1/vmlinuz /tftpboot/RHEL2.1/initrd /tftpboot/RHEL3.0/vmlinuz /tftpboot/RHEL3.0/initrd または /tftpboot/pxelinux.0 /tftpboot/rhel2.1-vmlinuz /tftpboot/rhel2.1-initrd /tftpboot/rhel3.0-vmlinuz /tftpboot/rhel3.0-initrd |