Supermicro bios update linux

Update Supermicro BIOS firmware from Linux

The Linux Vendor Firmware Service (LVFS) and fwupd turned the troublesome and time consuming activities of updating all kinds of firmware for laptops, desktops, and servers into something much easier. Check your list of updated firmware, update it, and submit feedback for the vendors when something doesn’t work. You can even get notifications right inside GUI applications, such as GNOME Software, that notify you about updates and allow you to install them with one click.

However, not all vendors participate in LVFS and some vendors only participate in LVFS for some devices. I’ve had a small Supermicro server at home that’s been offline for quite some time. I decided to get it back online for some new projects and I discovered that the BIOS and BMC firmware were both extremely old.

This device isn’t included in LVFS, so we’re stuck with older methods.

Update the BMC #

The baseband management controller, or BMC, is an always-running component that provides out-of-band access to my server. I can control the server’s power, view a virtrual console, or control certain BIOS configurations from a web browser or IPMI client.

Luckily, Supermicro makes it easy to update the BMC directly from the web interface. Our first step is to identify which board is inside the machine:

Asking dmidecode for type 2 DMI data should give you the motherboard model in the Product Name field. In this case, mine is X10SDV-TLN4F . I ran over to Supermicro’s BMC List, typed in the motherboard model number, and downloaded the zip file. After unpacking the zip, I had a bunch of items:

$ unzip -q REDFISH_X10_388_20200221_unsigned.zip $ ls *.bin REDFISH_X10_388_20200221_unsigned.bin 

This REDFISH_X10_388_20200221_unsigned.bin contains the firmware update for the BMC. Now access your IPMI interface via a web browser and authenticate. Follow these steps:

  • Click the Maintenance menu and select Firmware Update
  • Click Enter Update Mode
  • Select your .bin file and update the BMC

The upload process took around a minute and the BMC update took four or five minutes. The BMC will respond to pings early after the update but it will take a while for the web interface to respond. Be patient!

Update the BIOS #

If you have the appropriate license for your BMC, you can update the BIOS right from the BMC interface. I don’t have that license. Let’s find another way!

Читайте также:  Citrix workspace linux debian

Start by downloading Supermicro’s SUM utility. The software is available after the registration step (which is free). In my case, I needed the second download (not the UEFI one) since my server is a little older.

Now we need to download the BIOS firmware itself. One of the easiest methods I’ve seen for this is to throw supermicro X10SDV-TLN4F (replace with your motherboard model) into Google and click the result. Then look for a Update your BIOS link under Links & Resources on the right side. That takes you directly to a zip file to download.

Create a directory (perhaps bios ) and move the SUM zip as well as your firmware zip file in that directory. Some of these zip files have no directory prefix included and they will clobber your working directory. 🤦🏻‍♂️

Unpack both zip files and find the sum executable:

 Great! Now we need to find the BIOS firmware file. In most cases, they start with a few characters from your motherboard and end in a numerical extension:
  The BIOS firmware is inside X10SDVF1.604 in my case. But first:

💣 UPGRADING BIOS FIRMWARE IS SERIOUS BUSINESS. 😱 If an upgrade goes wrong, it may be challenging to get the system running properly again. I’ve recovered from some pretty awful BIOS update failures in the past on most x86 systems, but it was rarely an enjoyable process. Be sure you have stable power for the device, you are running the update inside tmux (especially if connected via ssh), and you have time to complete the operation.

You have been warned! 👀

🚨 Start with a tmux or screen session, always. Seriously. Don’t skip this step.

Inside the tmux or screen session (which I’m sure you started because you were paying attention), let’s update the firmware:

Awesome! My preference here is to power down, wait a few seconds, and power it back up. I’ve had issues in the past with soft restarts after BIOS upgrades on non-laptop systems and I’m ultra cautious.

Once it’s fully powered down, power it back up using the BMC/IPMI or via the button on the device. If all goes well, you should see a new firmware version after boot:

Perfect! 🎉 I downloaded version 2.3 from Supermicro’s site and it’s now running on my server!

Extra credit #

You may want to do some additional (optional) steps depending on your configuration.

I rebooted into the BIOS and chose to load the optimized defaults in case something important was changed in the latest BIOS firmware. This may revert a few of your settings if you had some customizations, so be sure to roll through the BIOS menu and look for any of those issues.

Источник

Category: BIOS

Any IT here? Help Me!

Update supermicro X10SLH-F firmware BIOS under Linux with the SUM cli

As you can see our product is:

The same string is in our KVM IPMI: “Product Name: X10SLH-F/X10SLM+-F” and in the BIOS, but if you go the supermicro site you will find that

and because we use the video in the CPU we know our motherboard is X10SLH-F and we downloaded the BIOS firmware for it. You also could check your chipset with lshw command.

STEP 1) Download and unpack the SUM (Supermicro Update Manager) and the BIOS zip file

Unpack the SUM (Supermicro Update Manager), here you can find a detail information about SUM – Update supermicro server’s firmware BIOS under linux with the SUM cli

[root@srv1 ~]# tar xzvf sum_2.0.0_Linux_x86_64_20171108.tar.gz sum_2.0.0_Linux_x86_64/ sum_2.0.0_Linux_x86_64/ReleaseNote.txt sum_2.0.0_Linux_x86_64/sum sum_2.0.0_Linux_x86_64/ExternalData/ sum_2.0.0_Linux_x86_64/ExternalData/VENID.txt sum_2.0.0_Linux_x86_64/ExternalData/SMCIPID.txt sum_2.0.0_Linux_x86_64/driver/ sum_2.0.0_Linux_x86_64/driver/RHL4_x86_64/ sum_2.0.0_Linux_x86_64/driver/RHL4_x86_64/sum_bios.ko sum_2.0.0_Linux_x86_64/driver/RHL6_x86_64/ sum_2.0.0_Linux_x86_64/driver/RHL6_x86_64/sum_bios.ko sum_2.0.0_Linux_x86_64/driver/RHL5_x86_64/ sum_2.0.0_Linux_x86_64/driver/RHL5_x86_64/sum_bios.ko sum_2.0.0_Linux_x86_64/driver/RHL7_x86_64/ sum_2.0.0_Linux_x86_64/driver/RHL7_x86_64/sum_bios.ko sum_2.0.0_Linux_x86_64/SUM_UserGuide.pdf [root@srv1 ~]# unzip x10slh8_510.zip Archive: x10slh8_510.zip creating: x10slh8.510/ inflating: x10slh8.510/AFUDOSU.SMC inflating: x10slh8.510/ami.bat inflating: x10slh8.510/Readme for AMI BIOS.txt inflating: x10slh8.510/x10slh8.510 [root@srv1 ~]# cd sum_2.0.0_Linux_x86_64 sum_2.0.0_Linux_x86_64/ sum_2.0.0_Linux_x86_64_20171108.tar.gz [root@conv1 ~]# cd sum_2.0.0_Linux_x86_64

STEP 2) Flash the BIOS file with sum cli.

Here you can see what to expect flashing the BIOS firmware.

[root@srv1 sum_2.0.0_Linux_x86_64]# ./sum -c UpdateBios --file ../x10slh8.510/x10slh8.510 Supermicro Update Manager (for UEFI BIOS) 2.0.0 (2017/11/08) (x86_64) Copyright©2017 Super Micro Computer, Inc. All rights reserved Reading BIOS flash . (100%) Checking BIOS ID . Writing BIOS flash . (100%) Verifying BIOS flash . (100%) Checking ME Firmware . Putting ME data to BIOS . (100%) Writing ME region in BIOS flash . - Update success for /FDT!! - Updated Recovery Loader to OPRx - Updated FPT, MFSB, FTPR and MFS - ME Entire Image done WARNING:Must power cycle or restart the system for the changes to take effect! [root@srv1 sum_2.0.0_Linux_x86_64]# reboot

During the BIOS flashing your console could have seemed unresponsive for several minutes, but it is OK, the flash process is about 10 minutes. Then reboot and wait for several automatic resets of your system and after that when your system reaches the OS boot you should reboot again and reset your BIOS to the optimized defaults and then you can tune it as it was before.

In some rear cases you could receive “Critical Error” – “FDT is different.” you should reboot and repeat the procedure, more information here – Update supermicro server’s firmware BIOS under linux with the SUM cli

Bonus

Some commands to find the exact information for the server motherboard.

[root@srv1 ~]# lshw|grep -A 14 "core$" *-core description: Motherboard product: X10SLH-F/X10SLM+-F vendor: Supermicro physical id: 0 version: 1.01 serial: ZM1111111111 slot: To be filled by O.E.M. *-firmware description: BIOS vendor: American Megatrends Inc. physical id: 0 version: 3.0a date: 12/17/2015 size: 64KiB [root@srv1 ~]# lspci |grep -i c226 00:1f.0 ISA bridge: Intel Corporation C226 Series Chipset Family Server Advanced SKU LPC Controller (rev 05) conv2 ~ # lspci -vvv|grep -i c226 00:1f.0 ISA bridge: Intel Corporation C226 Series Chipset Family Server Advanced SKU LPC Controller (rev 05) Subsystem: Super Micro Computer Inc C226 Series Chipset Family Server Advanced SKU LPC Controller

Supermicro server cannot enter BIOS with F2, DEL or other when UEFI mode OS is installed

If you happen to have a supermicro server (X10SLH-F) and install Linux in UEFI mode in our case CentOS 7 and you want to enter the BIOS you’ll be surprised that you cannot with the keys provided in the very same BIOS boot screen – F2, DEL. The F11 and F12 also does not work for menu selection and network boot!

Even if you manage to press the DEL key and you see on the screen “Entering BIOS setup…” – the server WON’T enter BIOS, but will continue with the UEFI BIOS boot drive!

So what to do? Ammm break temporary your system by removing (renaming or moving) the EFI directory in your efi boot partition, resetting your server and holding pressed DEL key (again) on all start up screens of the server. When the UEFI BIOS boot entry is not valid any more and there are no other boot devices (and probably because we pressed DEL key) we were able to enter in the BIOS without remote hands on the collocation side or any other intervention on the server.

[root@srv ~]# mv /boot/efi/EFI/ /boot/efi/EFI_org [root@srv ~]# reboot

This is the path in CentOS 7 and our standard partition layout:

[root@srv ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda3 26G 4.5G 20G 19% / devtmpfs 7.8G 0 7.8G 0% /dev tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs 7.8G 8.5M 7.8G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/sda2 976M 98M 812M 11% /boot /dev/sda1 200M 9.8M 191M 5% /boot/efi tmpfs 1.6G 0 1.6G 0% /run/user/0

DO NOT forget to remove all other (virtual) CD/DVD ROM Devices and temporary disable your network PXE Server (if you have any in the network)

Because it when the UEFI BIOS cannot find the EFI file saved in the UEFI BIOS BOOT drive it might follow the boot order before entering the BIOS!

Enter the bios by remote console on our X9 boards with UEFI bios

Apparently there is an issue with X8 and X9 supermicro boards in UEFI mode BIOS: https://www.supermicro.com/support/faqs/faq.cfm?faq=14029
So for someone it could be useful pressing and holding “ESC” + “-” or F4 to enter the UEFI BIOS, but we could not make it because of the IPMI KVM we used to manage the server.

Update BIOS motherboard ASUS Zenith Extreme x399

This time we show what to expect when updating your UEFI BIOS of your ASUS Zenith Extreme (chipset x399) – a pretty good and performance setup! Here we update the UEFI BIOS from the BIOS itself – in fact, no OS is needed! This motherboard has a built-on utility called

which is started from the BIOS and it could read your NTFS or FAT filesystem to locate the update firmware file or the easy way to get connected to the Internet, check, download and install the update if any!
So here some screenshots to how to perform the update from 1003 to 1402 – it is easy and safe just couple of reboots needed – total of 4 (but in your case may vary).

STEP 1) Press DEL or F2 to enter your UEFI BIOS

main menu

Keep on reading!

Источник

Оцените статью
Adblock
detector