このドキュメントで説明されているソフトウェアはサポートされなくなったか、または拡張サポートされています。
Oracleでは、現在サポートされているリリースにアップグレードすることをお薦めします。
iPXEは、次のような多くの点でPXEの機能を拡張しています。
iPXEクライアントは、HTTP、iSCSI、AoEおよびFCoEを使用してブートできます。
スクリプトを使用してブート・プロセスを制御できます。
DNSルックアップが使用可能です。
ワイド・エリア・ネットワークやインターネットにわたるブートが可能です。
gpxelinux.0
ブート・ローダーは、いくつかのiPXE機能(DNSルックアップやHTTPファイル転送など)を提供するもので、syslinux
パッケージ内にあります。 iPXEコマンドやスクリプトはサポートしていません。
レガシー・モードではgpxelinux.0
をBIOSベースのPXEクライアントおよびUEFIベースのクライアントと組み合せて使用できますが、UEFIモードではできません。
iPXEクライアントをサポートするようにDHCPサービスを構成するには、次の手順を実行します。
DHCPサーバー構成テンプレート・ファイル
/etc/cobbler/dhcp.template
を編集します:次の行を追加して、DHCPに対してiPXEオプションを定義します。
option space ipxe; option ipxe-encap-opts code 175 = encapsulate ipxe; option ipxe.priority code 1 = signed integer 8; option ipxe.keep-san code 8 = unsigned integer 8; option ipxe.skip-san-boot code 9 = unsigned integer 8; option ipxe.syslogs code 85 = string; option ipxe.cert code 91 = string; option ipxe.privkey code 92 = string; option ipxe.crosscert code 93 = string; option ipxe.no-pxedhcp code 176 = unsigned integer 8; option ipxe.bus-id code 177 = string; option ipxe.bios-drive code 189 = unsigned integer 8; option ipxe.username code 190 = string; option ipxe.password code 191 = string; option ipxe.reverse-username code 192 = string; option ipxe.reverse-password code 193 = string; option ipxe.version code 235 = string; option iscsi-initiator-iqn code 203 = string; option ipxe.pxeext code 16 = unsigned integer 8; option ipxe.iscsi code 17 = unsigned integer 8; option ipxe.aoe code 18 = unsigned integer 8; option ipxe.http code 19 = unsigned integer 8; option ipxe.https code 20 = unsigned integer 8; option ipxe.tftp code 21 = unsigned integer 8; option ipxe.ftp code 22 = unsigned integer 8; option ipxe.dns code 23 = unsigned integer 8; option ipxe.bzimage code 24 = unsigned integer 8; option ipxe.multiboot code 25 = unsigned integer 8; option ipxe.slam code 26 = unsigned integer 8; option ipxe.srp code 27 = unsigned integer 8; option ipxe.nbi code 32 = unsigned integer 8; option ipxe.pxe code 33 = unsigned integer 8; option ipxe.elf code 34 = unsigned integer 8; option ipxe.comboot code 35 = unsigned integer 8; option ipxe.efi code 36 = unsigned integer 8; option ipxe.fcoe code 37 = unsigned integer 8; option ipxe.vlan code 38 = unsigned integer 8; option ipxe.menu code 39 = unsigned integer 8; option ipxe.sdi code 40 = unsigned integer 8; option ipxe.nfs code 41 = unsigned integer 8;
プロキシDHCPサーバーを使用しない場合は、次の行を指定して、DHCPサーバーとのネゴシエーションを高速化します。
option ipxe.no-pxedhcp 1;
次の行を追加して、
user-class
オプションを定義します。option user-class code 77 = string;
次の例のように、DHCPサーバーを構成して、iPXEクライアントがドメイン名をIPアドレスに解決するために使用できるネーム・サーバーのIPアドレスを指定します。
option domain-name-servers 192.168.1.1, 192.168.1.4, 192.168.1.8;
次の例のように、DHCPを構成して、iPXE以外のクライアントには
gpxelinux.0
ブート・ローダー、iPXEクライアントにはブート・スクリプトのURIを指定します。if exists user-class and option user-class = "iPXE" { filename "http://web.mydom.com/pxeboot.ipxe"; } else { filename "gpxelinux.0"; }
この例では、純粋なiPXEクライアントは、HTTPで提供されるブート・スクリプト
pxeboot.ipxe
を実行します。iPXEクライアント用のブート・スクリプトの例を次に示します。
#!ipxe dhcp kernel http://swksvr.mydom.com/distro-trees/ol6u6-x86_64-server/images/pxeboot/vmlinuz initrd http://swksvr.mydom.com/distro-trees/ol6u6-x86_64-server/images/pxeboot/initrd.img boot vmlinuz initrd=initrd.img ksdevice=bootif lang=en_US kssendmac text \ ks=http://192.168.1.3/cblr/svc/op/ks/profile/ol6-x86_64-minimal:1:SpacewalkDefaultOrganization
dhcpは、クライアントのネットワーク・インタフェースを構成します。
kernelは、インストール・カーネルをダウンロードします。
initrdは、初期RAMディスク・イメージ・ファイルをダウンロードします。
bootは、ダウンロード済のインストール・カーネルをブートします。 最初のRAMディスク・ファイルの名前やキックスタート・ファイルのロケーションなどのブート・ライン・パラメータは、追加の引数として指定されます。
\
行継続文字を使用しないでください。 例の中のこの文字は、印刷用に長い行を改行するために使用されています。 bootコマンドおよびそのすべての引数は、同じ行に指定する必要があります。詳細は、http://ipxe.org/scriptingおよびhttp://ipxe.org/cmdを参照してください。
iPXE以外のクライアントは、
gpelinux.0
を使用してブートします。 4.5.3項「ブート・ローダー構成ファイルについて」で説明しているように、gpxelinux.0
の構成ファイルの名前はpxelinux.0
と同様の方法で付けられます。pxelinux.0
の場合とは異なり、HTTPを使用してインストール・カーネルと初期RAMディスク・イメージのファイルにアクセスできます。gpxelinux.0
の構成ファイルの例を次に示します。prompt 0 default ol6u6 timeout 0 label ol6u6 kernel http://swksvr.mydom.com/distro-trees/ol6u6-x86_64-server/images/pxeboot/vmlinuz append initrd=http://swksvr.mydom.com/distro-trees/ol6u6-x86_64-server/images/pxeboot/initrd.img \ ksdevice=bootif lang=en_US kssendmac text \ ks=http://192.168.1.3/cblr/svc/op/ks/profile/ol6-x86_64-minimal:1:SpacewalkDefaultOrganization ipappend 2
\
行継続文字を使用しないでください。 例の中のこの文字は、印刷用に長い行を改行するために使用されています。append
キーワードおよびそのすべての引数は、同じ行に指定する必要があります。
cobbler syncコマンドを実行します:
#
cobbler sync
task started:YYYY
-MM
-DD
_hhmmss
_sync task started (id=Sync, time=date
) ... rendering DHCP files generating /etc/dhcp/dhcpd.conf ... *** TASK COMPLETE ***Cobblerサービスは、
/etc/dhcp/dhcpd.conf
ファイルを再生成し、dhcpd
サービスをリロードします。/etc/cobbler/dhcp.template
をさらに変更する場合は、cobbler syncコマンドを実行します。 ブート・ローダー構成ファイルの内容を変更する場合は、このコマンドを実行する必要はありません。