1. Get the ISO Image
Download an iso image of Fedora 9 Live CD/DVD from its website. Save it somewhere. In our case, ~/Distro/
2. Prepare your Hard Drive
Create a new partition on your hard drive using your favourite partition manager. GParted for gnome users, QtParted for KDE users. Or if you prefer the command line, cfdisk or fdisk is there for you. Anyway, create a new partition of size 1GB (750MB should be enough, but I am not sure, anyway, better more than less). In our case the newly created partition is `/dev/sda8‘. Format it. We choose ext3. The name for SATA/SCSI hard drive is sdxn, while for IDE hard drive is hdxn (where x is the disk number, almost always a letter, and n is the partition number, counting from 1). You should be aware of what you have and choose the right name for your hard drive. But note that GRUB does not distinct them, any hard drive is simply called hdxn, where x is the disk number while n is the partition number (counting from 0). Don’t confuse them. For more, read the GRUB manual, by typing the command `info grub‘ in your terminal.
3. Dump the ISO Image into the Hard Drive
Open a terminal, type in the following commands. Note that the su-way is for non-Ubuntu users. Ubuntu users, skip the first command su, add sudo to each command below if you prefer the sudo-way.)
su
cd /mnt/
mkdir fedora{ISO,Live}
mount -o loop -t iso9660 ~/Distro/Fedora-9-Live.iso fedoraISO
mount -t ext3 /dev/sda8 fedoraLive
cp -a fedoraISO/* fedoraLive/
umount /mnt/fedora*
Replace `Fedora-9-Live.iso‘ with the ISO image you get and `/dev/sda8‘ with the partition you created in Step 2.
4. Edit the GRUB Configuration
Open the famous `/boot/grub/menu.lst‘ file of GRUB using your favourite editor. Add the following lines to the end of the file.
# Fedora 9 Live
title Fedora 9 Live
root (hd0,7)
kernel /isolinux/vmlinuz0 root=/dev/sda8 rootfstype=ext3 rw quiet liveimg rhgb
initrd /isolinux/initrd0.img
Replace `root (hd0,7)‘ with `root (hdx,n-1)‘ if your partition is `/dev/sdxn‘ (or `/dev/hdxn‘), `root=/dev/sda8‘ with `root=/dev/sdxn‘ (or `root=/dev/hdxn‘ ) , `ext3‘ in `rootfstype=ext3‘ with the file system type name you choose for the partition in Step 2, e.g., xfs. Save the changes to the `menu.lst‘ file.
5. Reboot and Done
Reboot and choose “Fedora 9 Live” from the GRUB menu.
That’s all. I know you are curious how I make it, right? The key point is the options to the kernel. I get these options from the `isolinux.cfg‘ file lying in the same directory as the kernel, i.e., `/isolinux/‘. Below is what’s in the file. I am sure you will find it.
default vesamenu.c32
timeout 100menu background splash.jpg
menu title Welcome to Fedora-9-Live-i686!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color timeout_msg 0 #ffffffff #00000000
menu color timeout 0 #ffffffff #00000000
menu color cmdline 0 #ffffffff #00000000
menu hidden
menu hiddenrow 5
label linux0
menu label Boot
kernel vmlinuz0
append initrd=initrd0.img root=CDLABEL=Fedora-9-Live-i686 rootfstype=iso9660 ro quiet liveimg rhgb
menu default
label check0
menu label Verify and Boot
kernel vmlinuz0
append initrd=initrd0.img root=CDLABEL=Fedora-9-Live-i686 rootfstype=iso9660 ro quiet liveimg rhgb check
label memtest
menu label Memory Test
kernel memtest
label local
menu label Boot from local drive
localboot 0xffff
Finally thanks to the Fedora team, you guys have done a really good job!