How do I update the BIOS on a Thinkpad X200 running Linux? Seems updates require Windows.

  • If you're interested, coreboot appears to support that model coreboot.org/Board:lenovo/x200
    – mttpgn
    Commented Feb 20, 2019 at 18:34
  • @mttpgn, yes, I'm waiting for my SOIC clip to arrive. But I read somewhere that it's a good idea to run Lenovo's BIOS update first, which includes an EC-firmware update.
    – Toothrot
    Commented Feb 20, 2019 at 19:12

1 Answer 1


Since you may find it difficult to boot from a CD on an X200, it might be more useful to write the update to a USB stick:

  • download the appropriate CD image

    wget https://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/6duj48us.iso
  • download the El Torito extraction tool:

    wget https://userpages.uni-koblenz.de/~krienke/ftp/noarch/geteltorito/geteltorito/geteltorito
    chmod 755 geteltorito
  • use it to extract the bootable image:

    ./geteltorito -o bios.img 6duj48us.iso
  • insert a USB stick, and write the image to the stick (use the appropriate device below, and note that this will overwrite the data on your USB stick):

    cat bios.img > /dev/sdh

    (replacing sdh with the appropriate device)

  • reboot, and boot from the USB stick to update your BIOS.

Later Thinkpads can be updated automatically using fwupd.

  • Thanks for the detailed instructions. When I do this, my Thankpad says 'Missing operating system'.
    – Toothrot
    Commented Feb 20, 2019 at 19:33
  • Weird... I updated a T450s yesterday using this technique. What does cmp bios.img /dev/sdh output? Commented Feb 21, 2019 at 17:04
  • mounted: # cmp bios.img /dev/sdb bios.img /dev/sdb differ: byte 16422, line 5 not mounted: # cmp bios.img /dev/sdb cmp: EOF on bios.img after byte 38797312, in line 64739
    – Toothrot
    Commented Mar 3, 2019 at 15:17
  • You ran cmp twice and it gave different results? Commented Mar 3, 2019 at 16:19
  • yes before and after unmounting
    – Toothrot
    Commented Mar 3, 2019 at 16:39

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .