ProLiant Deployment and Provisioning
1829115 Members
13399 Online
109986 Solutions
New Discussion

PXE Boot Image from an ISO

 
ovikp
Occasional Visitor

Re: PXE Boot Image from an ISO

Well yes and no. I mean that you should only need to modify the initrd.img file if you plan to use other network interfaces than eth0 to connect to your nfs server via a dhcp supplied address, otherwise you don't need to make changes to that file. You will have to change the pxe config file so that media=network instead of the one you are using (ie cdrom) and rsync the dvd contents to the nfs exported folder you want to use.

 

HTH

shocko
Honored Contributor

Re: PXE Boot Image from an ISO

Hi ovikp,

Thanks for the reply. I have change the line media=cdrom  to media=network but the same problem persists. I get a DHCP address on eth0 and it just bombs out then and returns to the command line.

If my post was helpful please award me Kudos! or Points :)
AndreyKozichev
New Member

Re: PXE Boot Image from an ISO

Had the same issues until found the correct doc (the one on link few posts above)

ftp://ftp.hp.com/pub/softlib2/software1/doc/p1572577490/v68421/FWUsersGuide9.30.pdf

now it is OK.

 

My config at the end in cobbler:

 

LABEL hp_firmware_update_v10
kernel /images/hp_firmware_update_v10.0/vmlinuz
MENU LABEL hp_firmware_update_v10
append initrd=/images/hp_firmware_update_v10.0/initrd.img ksdevice=bootif text showopts iso1=nfs://my_ip/var/iso-images/fw10/fw10.iso root=/dev/ram0 pnpbios=off lang= rw iso1mnt=/mnt/bootdev
ice loglevel=3 media=cdrom vga=791 init=/bin/init splash=silent ramdisk_size=257144 ide=nodma ide=noraid TYPE=AUTOMATIC ks=http://my_ip/cblr/svc/op/ks/profile/hp_firmware_update_v10
ipappend 2

 

 

thanks you guys for this thread

shocko
Honored Contributor

Re: PXE Boot Image from an ISO

Thanks for the reply Andrey,

 

That config looks unusual though. It's referencing a kick start file. Why would it need this? I can find no reference to that in the linked guide. Also, are you PXE booting the FW DVD or the SPP DVD?

If my post was helpful please award me Kudos! or Points :)
PavelS
Occasional Advisor

Re: PXE Boot Image from an ISO

Is there any way to use ksdevice/netdevice=bootif functionality? The only way is to use ethX or auto which is not an option to me. Some of my servers have several NICs and only one of them has access to the PXE where the ISO is shared too. But after initial PXE boot the server tries to load the ISO through another NIC.

 

Thanks in advance,

Pavel 

PavelS
Occasional Advisor

Re: PXE Boot Image from an ISO

So here goes a workaround for the bootif option. If you need to boot from a definite eth and the dhcp this NIC have access to provides definite ip address you can use this code:

 

 

Both Smart Start and Firmware initrds: 

in file: fs/root/compaq/netconfig.sh

Instead of:

 

                dhcpcd -t 45 $1

                TEMP=$?

                echo return from dhcpcd $TEMP

                if [ $TEMP != 0 ]; then

                RETVAL=2

                fi

 

Use:

                dhcpcd -L -t 30 eth2

                TEMP=$?

                echo return from dhcpcd $TEMP

                if [ $(ifconfig |grep -c 10.100.101) -lt 1 ]; then

                        ifconfig eth2 down

                        dhcpcd -L -t 30 eth4

                        TEMP=$?

                        if [ $(ifconfig |grep -c 10.100.101) -lt 1 ]; then

                                ifconfig eth4 down

                                dhcpcd -L -t 30 eth0

                                TEMP=$?

                                if [ $(ifconfig |grep -c 10.100.101) -lt 1 ]; then

                                        ifconfig eth0 down

                                        dhcpcd -L -t 30 eth1

                                        TEMP=$?

                                fi

                        fi

                fi

 

                if [ $TEMP != 0 ]; then

                RETVAL=2

                fi

 

 

 

This can be with a loop too but in my case the eth order was bit different and in order to save time it was done with if. 

 

 

Also I found a bug in SPP 2012 02. The hpasmcli used for setting the boot order is not working. Fix: Inside /system/rootfs.tar.lzma there is a symbolic link /etc/init.d/boot.d/S60boot.health -> /root/compaq/init.d/hp-health . This must be changed to /etc/init.d/boot.d/S60boot.health -> /root/compaq/init.d/boot.health

 

Cheers, 

Pavel Siderov

 

dogo-koiroo
Occasional Visitor

Re: PXE Boot Image from an ISO

Hello all,

there are new problems with firmware DVD 10.10 (from ftp://ftp.hp.com/pub/softlib2/software1/cd/p1040529012/v71197/ ):

- does not load bnx2 module: PXE won't work with common NetXtreme II adapters
- poor/missing documentation: changed media= behaviour (afaik)

In order for me to successfully PXE boot the firmware DVD and run HPSUM, I did following:

- download dvd, loopmount
- extract initrd.img, patch sbin/netconfig.sh and etc/initrd.functions, repack


For example:

- my tftpboot is /data/kickstart/tftpboot and my image is temporarily loopmounted somewhere under /data/kickstart/images
- during and for PXE boot, extracting or loopmounting the is NOT required

mkdir /tmp/initrd.fix
cd /tmp/initrd.fix
gunzip -c /data/kickstart/images/hpfw-1010/system/initrd.img | cpio -i
sed -i 's/NET_MODULES=.*$/NET_MODULES="e100 e1000 igb qlcnic tg3 bnx2 bnx2x"/' etc/initrd.functions
sed -i 's/dhcpcd -t 45/dhcpcd -L -t 30/' sbin/netconfig.sh
find . | cpio  --create --'format=newc'  | gzip > /data/kickstart/tftpboot/hpfw-1010-initrd.img

My /data/kickstart/tftpboot/pxelinux.cfg/default configuration reads:

label hpfw-1010
  MENU LABEL HP Proliant firmware update + service packs
  kernel hpfw-1010
  append initrd=hpfw-1010-initrd.img media=net rw root=/dev/ram0 d3bug ramdisk_size=782392 init=/bin/init loglevel=3 ide=nodma ide=noraid nopat pnpbios=off vga=791 splash=silent hp_fibre showopts noexec32=off numa=off nox2apic TYPE=AUTOMATIC iso1=nfs://10.42.42.42/data/kickstart/images/FW1010.2012_0530.49.iso iso1mnt=/mnt/bootdevice pci=bfsort

Note the 'media=net' (you can use anything matching net* or NET*). 'd3bug' just sets -xv for the shell. Even the manuals say to copy everything from under system-directory, I only copy vmlinuz+initrd.img and rename them to suit my needs.

 

 

Thank you for all previous posters, kudos to them who first documented the -L and shortening timeout to  dhcpcd.

 

--

Mikko Rantanen

QuimaxW
Occasional Advisor

Re: PXE Boot Image from an ISO


@shocko wrote:

I am getting the same issue when trying to PXE boot the SPP. Here is my .cfg file

 

label SPP2012.01.0/
 MENU LABEL ^ - HP Service Support Pack 2012.01.0 - Manual Installation
 MENU INDENT 1
 kernel /HP/SSP/2012.01.0/vmlinuz
 append initrd=HP/SSP/2012.01.0/initrd.img media=network rw root=/dev/ram0 ramdisk_size=485956 init=/bin/init loglevel=3 ide=nodma ide=noraid nopat pnpbios=off vga=791 splash=silent hp_fibre showopts noexec32=off numa=off nox2apic TYPE=MANUAL iso1=nfs://10.112.64.190/PXEROOT/NFSROOT/hpservicepack/SPP2012010.2012_0119.47.iso isolmnt=/mnt/bootdevice/
 say "Loading the HP Service Support Pack "

 

 



Just a note than in your append line you have "isolmnt=" (iso "L" mnt) not "iso1mnt" with a number 1 in there.

 

With Ver 10.00, mine worked fine just like you have the rest of your append line.

dcolpitts
Frequent Advisor

Re: PXE Boot Image from an ISO

I followed dogo-koiroo instructions for patching netconfig.sh and initrd.functions, and now when I PXE boot my DL380G6s servers, it mounts my ISO, prompts me for my language (English), I accept the license agreement terms, select Launch HP SUM, and it tells me it is loading HP Sum, then goes a screen that says "Click to Reboot".  Obviously clicking it reboots the server.

 

Anyone have any thoughts?

 

My pxelinux.cfg is as follows:

label HP SmartStart Firmware Update (Interactive)
menu label HP SmartStart ^Firmware Update (Interactive)
kernel hpssfw/vmlinuz
append initrd=hpssfw/initrd_fixed.img media=network rw root=/dev/ram0 ramdisk_size=2097152 init=/bin/init loglevel=5 ide=nodma ide=noraid nopat pnpbios=off vga=791 hp_fibre showopts noexec32=off numa=off nox2apic TYPE=MANUAL iso1mnt=/mnt/bootdevice iso1=smb://user:password@192.168.11.4/tftpboot/hpssfw/SPP2012060B.2012_0525.1.iso

 

 

dcolpitts
Frequent Advisor

Re: PXE Boot Image from an ISO

BTW - just discovered if I break out to the Linux console on the "Click to Reboot" screen via Ctrl+Alt+d+b+x (which doesn't appear to work via ILO - I had to go to the physical console), and change dir to /mount/boot/hp/swpackages/ and run ./hpsum, then HPSUM launches and I am able to successfully upgrade my firmwares.

Weird...
dcolpitts
Frequent Advisor

Re: PXE Boot Image from an ISO

I found the answer it my "Click to Reboot" issue here in message 13 & 15 of this this thread:

 

http://h30499.www3.hp.com/t5/HP-BladeSystem-Management/Support-Pack-for-Proliant-Firmware-Update-over-PXE/m-p/5699115

 

I also discovered that smb & cifs don't appear to function correctly.  The username password to the smb servers gets a colon added as a suffix.  I ended up downloading a tiny NFS server for Windows and exporting the folder that has the SPP iso in it.  Once I did that, things started working again like the older SPP and FW isos.

 

dcc

shocko
Honored Contributor

Re: PXE Boot Image from an ISO

Thanks to Gerardo_Arceri at this thread:

 

http://h30499.www3.hp.com/t5/HP-BladeSystem-Management/Support-Pack-for-Proliant-Firmware-Update-over-PXE/m-p/5377413/highlight/false

 

I was able to get things working.

If my post was helpful please award me Kudos! or Points :)
Joffrey
Occasional Visitor

Re: PXE Boot Image from an ISO

Does someone know how to make a dhcp request with a tagged vlan with netconfig.sh ??

The PXE starts with a dhcp request with a tagged vlan, but when it starts the "firmware dv", it says : "err, eth0: timeout".

I think because It doesn't tag th request.

 

How can I do that ??

 

Thanks you

Joffrey
Occasional Visitor

Re: PXE Boot Image from an ISO

it works now :

 

Extract the initrd.img (search on this topic how do that)

find the kernel-default-2.6.32.12-0.7.1.x86_64.rpm 

extract it and copy the 8021q.ko, llc.ko, garp.ko, stp.ko to the extracted initrd.img /lib/modules/.... in the same location (you must do some mkdir)

 

add in  /sbin/netconfig.sh :

modprobe 8021q

vconfig add eth0.myvlan

ifconfig eth0 up

 

update dhcp request:

dhcpcd -t 30 eth0.myvlan

 

rebuild initrd.img, done !