Hi!
Newer Red Hat kickstart installations need a config like this:
kernel vmlinuz
ipappend 2
append initrd=initrd.img ks=http://server-ip/kickstart.file.ks network ksdevice=boofit
Is there anyway to make this work in iPXE?
I have tried to just insert ipappend 2 in imgargs, but that just wont work. I can skip it, and use ksdevice=eth0, but what about our users that have multiple nics in their machines?
Any ideas?
Torgeir
(2012-09-18 10:55)Torgeir Wrote: [ -> ]Newer Red Hat kickstart installations need a config like this:
kernel vmlinuz
ipappend 2
append initrd=initrd.img ks=http://server-ip/kickstart.file.ks network ksdevice=boofit
Is there anyway to make this work in iPXE?
I have tried to just insert ipappend 2 in imgargs, but that just wont work. I can skip it, and use ksdevice=eth0, but what about our users that have multiple nics in their machines?
According to
http://www.syslinux.org/wiki/index.php/SYSLINUX, the "IPAPPEND 2" will cause PXELINUX to add the text "BOOTIF=<hardware-address-of-boot-interface>" to the kernel command line. You can replicate this behaviour in iPXE by expanding the ${netX/mac} variable. For example:
Code:
#!ipxe
kernel vmlinuz ks=http://server-ip/kickstart.file.ks network ksdevice=bootif BOOTIF=${netX/mac}
initrd initrd.img
boot
Michael
(2012-09-18 11:06)mcb30 Wrote: [ -> ] (2012-09-18 10:55)Torgeir Wrote: [ -> ]Newer Red Hat kickstart installations need a config like this:
kernel vmlinuz
ipappend 2
append initrd=initrd.img ks=http://server-ip/kickstart.file.ks network ksdevice=bootif
Is there anyway to make this work in iPXE?
I have tried to just insert ipappend 2 in imgargs, but that just wont work. I can skip it, and use ksdevice=eth0, but what about our users that have multiple nics in their machines?
According to http://www.syslinux.org/wiki/index.php/SYSLINUX, the "IPAPPEND 2" will cause PXELINUX to add the text "BOOTIF=<hardware-address-of-boot-interface>" to the kernel command line. You can replicate this behaviour in iPXE by expanding the ${netX/mac} variable. For example:
Code:
#!ipxe
kernel vmlinuz ks=http://server-ip/kickstart.file.ks network ksdevice=bootif BOOTIF=${netX/mac}
initrd initrd.img
boot
Michael
If I use pxelinux with a label like this (it works as intended):
Code:
label linux
kernel vmlinuz
ipappend 2
append initrd=initrd.img ks=http://server-ip/kickstart.file.ks network ksdevice=boofit
However inside iPXE using imgargs I can't get it past networkmanager (waiting for input eth0/wlan0, testing on a laptop).
Only way with imgargs is if I set ksdevice=eth0. Is it possible inside iPXE to determine if net0 is eth0/eth1, or do I have to get ksdevice=booif bootif=MAC working?
Is net0 the booting NIC?
Torgeir
Got it working when I used 01-MACADDRESS. Checked cat /proc/cmdline on the one from pxelinux.
Code:
#!ipxe
kernel vmlinuz ks=http://server-ip/kickstart.file.ks network ksdevice=bootif BOOTIF=01-${netX/mac}
initrd initrd.img
boot
Torgeir
(2012-09-18 11:47)Torgeir Wrote: [ -> ]Got it working when I used 01-MACADDRESS. Checked cat /proc/cmdline on the one from pxelinux.
Code:
#!ipxe
kernel vmlinuz ks=http://server-ip/kickstart.file.ks network ksdevice=bootif BOOTIF=01-${netX/mac}
initrd initrd.img
boot
Great; thanks for letting us know what worked!
Michael