linux on usb harddisk (using FC3) (I am writing this document; not finished yet)

Think of Linux on your usb harddisk. You can take your disk anywhere and start linux if a computer is available.


Hardware requirement:

PC computer able to boot from usb harddisk

Not competitable with computer installed with SATA harddisk


How does it work?

Use a bootable CD to boot linux os on a usb harddisk, or

Boot directly from a usb harddisk containing linux os


Tools you need:

e2label: partition labelling tool (if using ext2 / ext3 filesystem)

grub / grub-install: an installation script for grub which is an OS bootloader.

mkisofs: create an hybrid ISO9660/JOLIET filesystem

cdrecord: record a bootable CD from an iso file


From: http://www.gnu.org/software/grub/manual/html_node/Making-a-GRUB-bootable-CD-ROM.html

Making a GRUB bootable CD-ROM

For booting from a CD-ROM, GRUB uses a special Stage 2 called stage2_eltorito. The only GRUB files you need to have in your bootable CD-ROM are this stage2_eltorito and optionally a config file menu.lst or grub.conf. You don't need to use stage1 or stage2, because El Torito is quite different from the standard boot process.

Here is an example of procedures to make a bootable CD-ROM image. First, make a top directory for the bootable image, say, iso:

mkdir iso

Make a directory for GRUB:

mkdir -p iso/boot/grub

Copy the file stage2_eltorito:

cp /usr/share/grub/i386-pc/stage2_eltorito iso/boot/grub

If desired, make the config file menu.lst under iso/boot/grub (see Configuration), and copy any files and directories for the disc to the directory iso/.

Finally, make a ISO9660 image file like this:

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o grub.iso iso

This produces a file named grub.iso, which then can be burned into a CD (or a DVD). mkisofs has already set up the disc to boot from the boot/grub/stage2_eltorito file, so there is no need to setup GRUB on the disc. (Note that the -boot-load-size 4 bit is required for compatibility with the BIOS on many older machines.)

You can use the device (cd) to access a CD-ROM in your config file. This is not required; GRUB automatically sets the root device to (cd) when booted from a CD-ROM. It is only necessary to refer to (cd) if you want to access other drives as well.


Make your own linux RAM disk (included usb2.0 harddisk drivers) that is initialized by the boot loader before the kernel is started.

mkinitrd --preload=ehci-hcd --preload=usb-storage --preload=scsi_mod --preload=sd_mod /boot/usbinitrd.img KERNEL-NUMBER

ehci-hcd, scsi_mod and sd_mod are the drivers needed for USB2.0 harddisks


contents of grub.conf

default=0
timeout=25
title LOMD 1 on CETUS
    root (cd)
    kernel /boot/vmlinuz ro root=LABEL=cetus rhgb quiet
    initrd /boot/usbinitrd.img

to burn an iso image file

/usr/bin/cdrecord -v speed=16 -data cd.iso

note

monitor resolution:

vesa:

HorizSync 30-85
VertRefresh 48-120

use /sbin/service kudzu start to check for new hardware and remove any not suitable ones.

use /usr/X11R6/bin/Xorg -configure to load all video driver modules, probes for available hardware, and write out an initial xorg.conf.new file based on what was detected.