Linux ブートおよびインストールサーバーには次のソフトウェアが含まれています。
Linux (RedHat Advanced Server 3.0 でテスト済み)
TFTP サーバー
ネットワークファイルシステム (NFS) サーバー
N1 SPS リモートエージェント (RA) (Linux 版)。詳細については、『Sun N1 Service Provisioning System 5.1 システム管理者ガイド』の「物理ホストを準備する」を参照してください。
Linux ファイルを含めるディレクトリを作成します。
同じサーバーから複数のディストリビューションにサービスを提供するため、各ディストリビューション用に独立したディレクトリを作成します。
最初の CD-ROM または ISO イメージファイルをマウントします。
次のいずれかの例のようなコマンドを使用します。
#mount /dev/cdrom デフォルトでは /mnt/cdrom にマウント、/etc/fstab を確認 #mount /path-to-first-iso /mnt/loop /mnt/loop が存在すると想定 |
CD-ROM または ISO イメージファイルの内容を、手順 1 で作成したディレクトリにコピーします。
次のいずれかの例のようなコマンドを使用します。
#/bin/cp -avf /mnt/cdrom/* /export/RHEL3.0 #bin/cp -avf /mnt/loop/* /export/RHEL3.0 |
ディストリビューションのすべての CD-ROM または ISO メディアに対して手順 2 と 3 を繰り返します。
ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、TFTP を介してアクセス可能である必要があります。
/etc/exports ファイルを編集し、次の例のような行を追加します。
/export 10.42.42.*(ro) |
NFS を有効にし、起動します。
RedHat AS 3.0 に適用される、次のようなコマンドを使用します。
#chkconfig nfs on #service nfs restart |
ディストリビューションは、このブートおよびインストールサーバーからサービスを受ける各サブネットに関して、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 |
N1 SPS のブラウザインタフェースまたはコマンド行インターフェースから Linux イメージサーバーを作成できます。コマンド行からサーバーを作成するには、次のようなコマンドを入力します。
# cr_cli -cmd cdb.vs.add -comp NM:/com/sun/n1osp/untyped/LinuxServer \ -name "linuxserver" -u admin -p admin -vars "boot_server_tftp_root_directory=/tftpboot" # cr_cli -cmd pe.p.run -u admin -p admin \ -PID NM:/com/sun/n1osp/untyped/LinuxServer-create \ -tar H:NM:bikickstart -comp + -vs linuxserver -pto 30 -nto 10 |
ブラウザインタフェースからサーバーを作成するには、次の手順に従います。
kickstart ファイルは、/export/kickstart など、ターゲットホストが位置を特定できるように、NFS エクスポートディレクトリの Linux ブートおよびインストールサーバーに配置する必要があります。
プロビジョニングソフトウェアのページの「Common Tasks」セクションで、「OS Provisioning」を選択します。
「OS Provisioning Common Tasks」ページの「Linux Image Servers」セクションで「Create」をクリックします。
「Plans Details」ページの「Run」をクリックします。
このプランに使用する変数を選択します。
既存の変数セットを使用するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから名前を選択します。
新しい変数セットを作成するには、「Plan Parameters」テーブルの「LinuxServer」コンポーネント行で「Select from List」をクリックします。
「Create Set」をクリックします。
変数セットの名前を入力します。
必要に応じて、boot_server_tftp_root_directory 変数を、Linux パッケージをインストールする位置に変更します。
デフォルトでは、パスは /tftpboot です。
必要に応じて、linuxHost 変数を、コマンド行インタフェースの位置に変更します。
デフォルトでは、仮想 Linux ホスト名は、-linux が追加されたターゲットホストのホスト名に設定されています。
installPath 変数は変更しないでください。
変数セットを保存します。
「Plan Parameters」テーブルの「LinuxServer」コンポーネント行にあるドロップダウンメニューから、直前に保存した変数セットを選択します。
Linux イメージサーバーを作成するホストを選択します。
「Run Plan (includes preflight)」をクリックします。
イメージサーバーが正常に作成されたことを確認するには、プロビジョニングサーバーのウィンドウの左側にある「Hosts」リンクをクリックします。
-linux が付加された仮想ホストの名前が表示されます。たとえば、ホスト bikickstart にインストールした場合、仮想ホストは bikickstart-linux です。