- 目的
- solaris附属のインストールサーバ作成スクリプトはSolarisでしか使用できない.スクリプトが改編する設定とファイルを全て調べるのは困難.
- 既に別機器でDHCPサーバーが機能している場合に別のDHCPサーバーが起動しネットワークが混乱する危険がある.
- 既にpxelinux用tftpサーバーが起動しているので,さらにtftpサーバを作ったりDHCPサーバの設定の項目を増やしたくない.
- DHCPサーバーの設定
filename "pxelinux.0";
next-server TFTPサーバ名;
- NFSサーバーの設定
- TFTPサーバーの設定
- /tftpbootをルートディレクトリにするよう-sオプションを追加.
- /tftpboot以下にsyslinuxパッケージからcore/pxelinux.0をコピーする.
- OpenSolarisのDVDファイルをループバックマウントしbootディレクトリをそのまま/tftpboot以下にコピーする.
- /tftpboot/boot/grub/pxegrubを/tftpboot/pxegrub.0にコピー
- ".0"という拡張子がついていないとブート時にカーネルイメージが壊れているとエラーになる.(doc/syslinux.txt)
Chain loading requires the boot sector of the foreign operating system
to be stored in a file in the root directory of the filesystem.
Because neither Linux kernels, boot sector images, nor COMBOOT files
have reliable magic numbers, SYSLINUX will look at the file extension.
The following extensions are recognized (case insensitive):
none or other Linux kernel image
.0 PXE bootstrap program (NBP) [PXELINUX only]
.bin "CD boot sector" [ISOLINUX only]
.bs Boot sector [SYSLINUX only]
.bss Boot sector, DOS superblock will be patched in [SYSLINUX only]
.c32 COM32 image (32-bit COMBOOT)
.cbt COMBOOT image (not runnable from DOS)
.com COMBOOT image (runnable from DOS)
.img Disk image [ISOLINUX only]
For filenames given on the command line, SYSLINUX will search for the
file by adding extensions in the order listed above if the plain
filename is not found. Filenames in KERNEL statements must be fully
qualified.
-
- ディレクトリ/tftpboot/pxelinux.cfgを作成./tftpboot/pxelinux.cfg/defaultにpxegrubを呼び出すように設定(もしくは追加)する.
DEFAULT grub
LABEL grub
kernel pxegrub.0
PROMPT 1
TIMEOUT 100
-
- /tftpboot/boot/grub/menu.lstの編集.デフォルトエントリ(default=0)に以下を追加
title OpenSolaris Network
kernel /boot/platform/i86pc/kernel/unix -v -m verbose -B install_media=(NFSサーバーのIPアドレス):(exportされたOpenSolarisのディレクトリ)
module /boot/x86.miniroot
title OpenSolaris Network 64bit
kernel /boot/platform/i86pc/kernel/amd64/unix -v -m verbose -B install_media=(NFSサーバーのIPアドレス):(exportされたOpenSolarisのディレクトリ)
module /boot/amd64/x86.miniroot