Updating the BIOS for my Latitude E6400 from Linux

The BIOS on my beloved Latitude E6400 has never been updated. The problem was that I did not have a valid Windows license for this computer.

I initially tried to solve this by moving one of the hard drives from another one of our Latitude E6400s, but for some reason Windows refused to boot on my E6400 (there were slight differences in hardware, different wifi adapter and a faster Intel CPU in my laptop).

Plan B was to try updating the BIOS by using a FreeDOS cd with the BIOS utilities on it, but FREEDOS did not seem to like (as in did not have a valid driver) the DVD drive in the E6400s.

Plan C was to do the updating from within Linux itself. The following procedure I pieced together from a number of different sites.

The first thing I did was to confirm what version I currently had installed:

  1. $ sudo dmidecode -s bios-version
  2. A14

The next step was to set up the repository in order to download the firmware tools:

  1. wget -q -O - "" | bash

Note, that the previous command requires administrative or root access, and sudo does not cut it. You need to log in to a root shell.

  1. sudo su -
will do nicely.

Now we install the binaries: aptitude install firmware-addon-dell Now I needed to know what the device ID was:

grabbing bios version and listing hardware

Every once in a while I check the motherboard manufacturer's website for bios updates. Usually the BIOS version is listed in one of the first boot screens. There are two problems with this:

First I have to reboot the machine to do this. This is not always a convenient thing to do.

Second I have to be in front of the machine. I maintain a number of servers and workstations that are spread apart geographically.

Fortunately there is a solution if the computer happens to be running Linux. From the command line I type:

sudo dmidecode -s bios-version

Here are some examples from the machines I own/maintain:

Handy Linux Tricks

I am just posting a few of those little usefull commands, links, and utils that make my digital life so much easier:

* What hardware have you got? What version is your BIOS? dmidecode is perfect for this. One that I use regularly is to check the BIOS version without rebooting.

 sudo dmidecode -s bios-version
This command returns something like this:

* Check device usage
fuser (device)
 fuser /dev/dsp

used for finding out what software has control of a given device. Very usefull when tweaking and troubleshooting a linux pro audio set up.

* rsync backups
rsync -avzue ssh (username)@(hostname or ip):/(path to backup)/* (localpath )

This backs up all files and directories on the remote host and copies to the folder you specify.

* Hard Drive Tuning (Linux)
hdparm (options) (hard drive device) For example:
hdparm -c3 -d1 -S36 /dev/hda

This controls the hard drive, specifically I am enabling dma which speeds up the hard drive, setting i/o to mode 3 which also speeds things up.

Syndicate content