May 262011

Hi All,

Recently I decided to update my Lenovo laptop’s BIOS, but I didn’t have any blank CDs to burn the update iso onto.
Now that I have my PXE server running though, I can boot the ISO over PXE !

So first step was to grab the ISO file from the Lenovo website.
Once you have the ISO file, you will need to copy it to your /tftpboot/ directory, and depending on your style, a subdirectory. I have my ISO file in a subdirectory called lenovo, so the full path would be /tftpboot/lenovo.

Next up is to modify the pxelinux.cfg/default file to add the lines you will need for the ISO file.
Now you will need the memdisk kernel before you add these lines.
If you haven’t already found it, it can be found in the /usr/lib/syslinux/ directory.
I have put memdisk into the boot subdirectory for this exercise, and then added the following block to my default file.

label LenovoBios
menu label Lenovo BIOS 66ET60WW
kernel boot/memdisk
append initrd=lenovo/66et60ww.iso iso

You’ll have to replace the ISO file name with the file that you downloaded, but you should be able to boot off that and update the BIOS that way as I’ve managed to do it with my Lenovo 3000 N200 laptop.


  2 Responses to “How To : Update your Lenovo BIOS with PXE”

  1. I did this and booted into everything fine, saw the initial menus of the lenovo bios update environment, could read the warning verbiage fine, but then the system hangs when I select “Y” to proceed into the flashing stage. My TFTP server threw an error closing the .iso file transfer that may be just an artifact, as it seems to have completed transferring fine. Any idea what’s going wrong?

    • If the ISO didn’t transfer properly then it may cause issues. Other than that, I’m not too sure. You could alternatively attempt to update it with a WinPE Boot CD that’s booted over PXE.

 Leave a Reply

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>