Here are the steps I used to upgrade the BIOS of my Lenovo Thinkpad X1 Carbon Gen 2.
You have to download the bootable ISO file from Lenovo support site, convert it and copy it to a usb flash drive.
You will need a USB key you can erase.
First Get the bootable ISO file from Lenovo support website. To get your product number:
sudo dmidecode -t system | grep Product
To check your BIOS version:
sudo dmidecode -t bios
Get the geteltorito program from your packages or download it:
chmod +x geteltorito
Extract the img from the ISO:
./geteltorito -o bios.img gruj09us.iso
Copy the img to the USB key (make sure sdb is you USB key!!):
sudo fdisk -l /dev/sdb #at least check that device size is right
sudo dd if=bios.img of=/dev/sdb
That’s it. Boot on USB stick and follow the instructions to update your BIOS.
I’ve spent days looking for a good live Multiboot USB solution. I mean a way to include many downloaded ISO files in a single USB stick. I was looking for a system allowing to drop the ISOs in a folder on the key, just showing a menu with the ISO files to boot. Easy2Boot does exactly that!
Booting an ISO file is complex because lots of live operating systems expect to be at the root of a DOS partition. After some research I found several posts saying that generic ISO chainloading is very hard (p1 p2).
I found solutions like YUMI (Your Universal Multiboot Installer (windows) or MultiSystem. At this time, the problem of those programs is that they use specific “tricks” for each distribution to build a menu that will load directly the Linux kernel. It’s not as simple as dropping your ISOs in a folder: you have to use the software to build the multiboot usb key. Another drawback is that you will loose the SYSLINUX boot menus of the distros, because it loads directly the Linux kernels.
You also have hardware usb disk drives emulating a cdrom device. It’s probably the most reliable solution, but it’s not cheap, and bigger that a small USB key.
Easy2Boot, with grub4dos scripting, uses a nice trick (described here): when the iso file is chosen from the boot menu, a DOS partition (number 4) is created starting and ending at the position of the .iso file on the FAT filesystem. This method is more “ISO generic” and can boot many ISO files (99% of Live Linuxes). The drawbacks is that you have a partition overlapping the other (this is not a problem, at least under Linux), and you have to make sure that the FAT filesystem will not fragment your ISO files when you copy them on the key.
Under Windows, you can use the RMPrepUSB software (freeware/not opensource) to prepare your USB key.
Under Linux/Ubuntu, this is simple too:
- Format your USB key with a single FAT partition (I recommend gparted).
- Download Easy2Boot (v1 Beta06 works fine) and put all the files at the root of the partition.
- Download grub4dos (take the last Featured version) and extract the archive on your PC (not on the usb stick)
- From the grub4dos folder, run
sudo ./bootlace.com --time-out=0 /dev/sdX to install grub4dos MBR (make sure you use the right device!).
- Put some ISOs directly in the
- Here you go. Reboot and enjoy!
Thanks to RMPrepUSB and to the reboot.pro forum guys!