Cobbler を使用して SLES 11 SP3 をインストールしようとしていますが、NBP ファイルをダウンロードした後に失敗しました。画面には「TFTP イメージを取得できません」というエラーが表示されます。
SLES 11 SP2 にも同様のセットアップがあり、問題なく動作しています。このセットアップの違いは、IBM x3500 M5 サーバーに SLES 11 SP3 をインストールしていることです。このサーバーでは、OS 自体をインストールする前に、ブート可能なドライバー キット (BDK) をインストールする必要があります。
私の設定は次のとおりです。
/var/lib/tftpboot> tree uefisp3
uefisp3
├── biostest
├── bootx64.efi
├── elilo.conf
├── initrd
├── linux
├── memtest
├── message
└── pxelinux.0
initrd と Linux は SLES DVD からではなく、BDK イメージからのものです。
引用元https://drivers.suse.com/doc/Usage/Driver_Kits.html: ドライバー キットの ISO イメージからカーネルと initrd イメージを TFTP ブート サーバーの適切な場所にコピーします。initrd とカーネル イメージは、/boot/x86_64/loader ディレクトリにあります。
ファイル名を uefisp3/bootx64.efi、pxelinux.0、uefisp3/pxelinux.0 に設定して /etc/cobbler/dhcp.template を変更してみましたが、どれも機能しません。
私のcobblerディストリビューションレポート:
Name : sles11sp3
Architecture : x86_64
Breed : suse
Comment :
Initrd : /driverkit/boot/x86_64/loader/initrd
Kernel : /driverkit/boot/x86_64/loader/linux
Kernel Options : {'install': 'http://192.168.0.10/sles/sles11sp3', 'addon': 'http://192.168.0.10/sles/driverkit'}
Kernel Options (Post Install) : {}
Kickstart Metadata : {}
Management Classes : []
OS Version : sles10
Owners : ['admin']
Red Hat Management Key : <<inherit>>
Red Hat Management Server : <<inherit>>
Template Files : {}
私の elilo.conf (正直に言うと、このファイルが必要かどうかさえわかりませんが、これは SLES 11 SP2 で私が行った方法です):
/var/lib/tftpboot> cat uefisp3/elilo.conf
prompt
timeout=100
default=linux
image=linux
label=linux
description = "Installation"
initrd=initrd
append="/images/sles11sp3/initrd textmode=1 install=http://192.168.0.10/sles/sles11sp3 autoyast=http://192.168.0.10/cblr/svc/op/ks/profile/raid1drbd_sp3i addon=http://192.168.0.10/sles/driverkit"
pxelinux.cfg/default ファイルからの抜粋:
LABEL raid1drbd_sp3
kernel /images/sles11sp3/linux
MENU LABEL raid1drbd_sp3
append initrd=/images/sles11sp3/initrd textmode=1 install=http://192.168.0.10/sles/sles11sp3 addon=http://192.168.0.10/sles/driverkit autoyast=http://192.168.0.10/cblr/svc/op/ks/profile/raid1drbd_sp3
ipappend 2
TFTP サーバーは動作しています。TFTP サーバーから手動でいくつかのファイルを取得しようとしました。/var/log/messages に「tftp: client does not accept options」というエラーがありますが、私が読んだところによると、これは現在直面している問題とはおそらく関係ありません。
ドライバー キットを使用して SLES 11 SP3 のインストールに成功した人はいますか?
アップデート:
PXE ブート試行中に次のものがキャプチャされました:
SLES 11 SP3 での PXE ブート
2015-05-21 16:30:52.830169 IP 192.168.0.50.fj-hdnet > spacewalk.tftp: 49 RRQ "uefisp3/bootx64.efi" octet tsize 0 blksize 1468
2015-05-21 16:30:52.839093 IP 192.168.0.50.h323gatedisc > spacewalk.tftp: 41 RRQ "uefisp3/bootx64.efi" octet blksize 1468
2015-05-21 16:30:53.360209 IP 192.168.0.50.h323gatestat > spacewalk.tftp: 41 RRQ "uefisp3/bootx64.efi" octet blksize 1468
2015-05-21 16:30:53.872046 IP 192.168.0.50.h323hostcall > spacewalk.tftp: 30 RRQ "/grub.efi" octet blksize 512
2015-05-21 16:30:53.875762 IP 192.168.0.50.caicci > spacewalk.tftp: 30 RRQ "/grub.efi" octet blksize 512
時間がないので、明日さらにテストします。アイデアをありがとう。素晴らしい!
2回目の更新:
現在、PXE は自動インストールと同様に動作します。ただし、elilo.conf のエラーのため、サーバーを起動できません。インストール中に私はそこにいなかったので、何が問題だったのかはわかりません。もう一度インストールを実行する機会がありませんでした。
ありがとう。
答え1
返事が遅くなって申し訳ありません。これが私が動作させた方法です。
1 - SLES 11 SP3 を /sles11sp3 にマウントします。
2 - 起動可能なドライバキットを/bdkにマウントする
3 - grub.efi ファイルを /var/lib/tftpboot/ ディレクトリにコピーします。
# cp /bdk/EFI/BOOT/grub.efi /var/lib/tftpboot/
4 - bootx64.efi、カーネルとinitrd、grub.cfgを/var/lib/tftpboot/uefisp3/ディレクトリにコピーします。
# cp /bdk/EFI/BOOT/bootx6.efi /var/lib/tftpboot/uefisp3/
# cp /bdk/boot/x86_64/loader/linux /var/lib/tftpboot/uefisp3/
# cp /bdk/boot/x86_64/loader/initrd /var/lib/tftpboot/uefisp3/
# cp /sles11sp3/EFI/BOOT/grub.cfg /var/lib/tftpboot/uefisp3/
initrd ファイルを除くすべてのファイルは、SLES DVD またはドライバー キットからコピーできます。initrd ファイルはドライバー キットからコピーする必要があります。
5 - grub.cfg ファイルを変更します。私にとって重要なメニュー エントリはインストールだけなので、残りのメニュー エントリは削除しました。
menuentry 'Auto Installation' {
set gfxpayload=keep
echo 'Loading kernel ...'
linuxefi /images/sles11sp3/linux splash=silent textmode=1 showopts install=http://192.168.0.10/sles/sles11sp3 autoyast=http://192.168.0.10/sles/autoyast/sles11sp3towerbdk.ks
echo 'Loading initial ramdisk ...'
initrdefi /images/sles11sp3/initrd
}
6 - autoyast ファイル内に次の内容を追加します。
<add-on>
<add_on_products config:type="list">
<listentry>
<media_url><![CDATA[http://192.168.0.10:80/sles/bdk]]></media_url>
<product>driver-kit</product>
<product_dir>/</product_dir>
</listentry>
</add_on_products>
</add-on>
7 - dhcpd.conf ファイルに uefisp3 グループを追加します。
group {
filename "uefisp3/bootx64.efi";
next-server 192.168.0.10;
host test { hardware ethernet 40:F2:H9:A6:49:C7; fixed-address 192.168.0.50; option host-name test; }
}
8 - DHCP および TFTP サービスを再起動します。
@Pat いくつかの発見につながった tcpdump のアイデアに感謝します。