Helping ordinary people create extraordinary websites!

Boot Linux from a FireWire Device

By Martyn Honeyford
2005-04-12

Booting
Before I discuss booting up your new drive, a little boot loader theory is required.

Boot loaders are usually installed in the MBR of the first hard disk in the machine. When the boot loader is invoked (the BIOS automatically executes the code in the MBR), it usually displays a menu of possible OSes to boot. Selecting a given OS causes it to boot up.

Two things should be noted about this scenario:

• The menu of OS choices is (usually) loaded from disk
• To boot the relevant OS, the bootloader needs to read the relevant kernel from disk

As the above takes place before the OS has been loaded, it means that all of the disk reading must take place by way of BIOS calls. This has a very serious implication: namely, that in order to boot the disk directly, your BIOS must support disks connected via FireWire or USB. This can typically be seen as a BIOS option to boot from these types of disk. FireWire BIOS support is currently very rare indeed, but USB support is becoming reasonably common. Therefore, if you are using USB on a relatively recent machine, it should be possible to boot the drive into Linux directly.

After installing GRUB in the MBR of the external drive, I was able to boot it directly when connected via USB. Simply enter the BIOS setup utility while booting with the disk connected. The external disk will appear as a regular hard drive: move it so it is before the internal drive in the boot order.

I was also able to install a boot loader in the MBR of the internal drive and use that to boot the USB drive (where it appeared as hd1 in GRUB). If you are using FireWire, chances are that your BIOS will not be able to boot the drive directly, and a little more work will be required.

Luckily, due to the flexibility of Linux, there is a fairly simple solution if you cannot boot directly (which is certainly the case in my situation, with a PCMCIA FireWire card!) You can perform the preliminary boot steps from a supported device such as a floppy drive, CD, USB key, or a tiny partition on the main drive, and then use the external drive for everything else.



Tutorial pages:

First published by IBM DeveloperWorks


 1 Votes

You might also want to check these out:


Leave a Comment on "Boot Linux from a FireWire Device"
You must be logged in to post a comment.

Link to This Tutorial Page!


GET OUR NEWSLETTERS