|
This is how I make Freesco bootable from cdrom. It's partially based on Deoren's how-to (thanks Deoren!) but mostly it was alot of googling and trial and error. The Freesco box that I used has Freesco 032 and Win98 running on /dev/hdb1 and the cdrom is on /dev/hdc. Yours might be different. Things you'll need: - Freesco box with a cdrom installed
- Freesco installed to the hard drive
- Knoppix ( http://knoppix.net )... a "live" linux distro that runs straight off the cdrom
- Access to a cd burner (it doesn't have to be on your Freesco box)
First you'll need to setup Freesco so everything works fine and move it to your harddrive. Next, you need to install a kernel that has cdrom support (i usually use #5 from lightnings kernel-1.3-lightning package). now, install any packages that you want (mc...) When you're finished, put your Knoppix cd in the drive and reboot. I type in "knoppix 2" at the boot prompt so it doesn't boot to the desktop. mount your Freesco drive | CODE | mount -t umsdos -o rw /dev/hdb1 /mnt/hdb1
|
setup our working environment
| CODE | mkdir /mnt/hdb1/freesco mkdir /mnt/hdb1/freesco/oldram mkdir /mnt/hdb1/freesco/newram
|
copy the ramdisk to our working environment (and rename it)
| CODE | cp /mnt/hdb1/router/ramdisk /mnt/hdb1/freesco/ram1.gz
|
unzip it
| CODE | gunzip /mnt/hdb1/freesco/ram1.gz
|
mount it as a loop device so we can modify it
| CODE | mount -o loop /mnt/hdb1/freesco/ram1 /mnt/hdb1/freesco/oldram
|
now we have to edit /mnt/hdb1/freesco/oldram/etc/rc (I use "mc")
change line #42 from "bd Mounting -t umsdos" to "bd Mounting -t iso9660" comment out line #53 (umssync -g 99 -u 99 -r 99 -v- boot /dev/null) save the file and exit
If you want to add files to the ramdisk, now's the time to do it but I suggest making it bigger though first.
| CODE | dd if=/dev/zero of=/mnt/hdb1/freesco/ram2 bs=1M count=4
|
format the new ramdisk
| CODE | mke2fs /mnt/hdb1/freesco/ram2
|
mount it
| CODE | mount -o loop /mnt/hdb1/freesco/ram2 /mnt/hdb1/freesco/newram
|
copy everything from the old ramdisk to the new one
| CODE | cp -a /mnt/hdb1/freesco/oldram/* /mnt/hdb1/freesco/newram
|
unmount both of them
| CODE | umount /mnt/hdb1/freesco/oldram umount /mnt/hdb1/freesco/newram
|
gzip the new ramdisk
| CODE | gzip -9 /mnt/hdb1/freesco/ram2
|
move it to the "router" directory and rename it as "ramdisk.cd"
| CODE | mv /mnt/hdb1/freesco/ram2.gz /mnt/hdb1/router/ramdisk.cd
|
Now we need to make the isolinux directory to hold the boot files
| CODE | mkdir /mnt/hdb1/isolinux
|
Now we need to locate the "isolinux.bin" file (included in Knoppix)
I used Knoppix 3.2 and found isolinux.bin at "/usr/lib/isolinux/isolinux.bin"
copy it to the isolinux directory you just created
| CODE | cp /usr/lib/isolinux/isolinux.bin /mnt/hdb1/isolinux
|
now we need to make a isolinux.cfg file in /mnt/hdb1/isolinux
here's what it needs to have
| CODE | default freesco initrd=/router/ramdisk.cd vga=0 ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 panic=15 append initrd=/router/ramdisk.cd ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 vga=0 panic=15 label freesco kernel /router/kernel append initrd=/router/ramdisk.cd vga=0 ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 panic=15
|
now we make the bootable iso image
| CODE | mkisofs -pad -l -r -J -v -V "Freesco" -o /mnt/hdb1/freesco.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table /mnt/hdb1
|
since I don't have a burner in my Freesco box, I reboot into win98 and copy c:\freesco.iso to a shared folder and copy it to another computer to burn it but you could also reboot into your hard drive install of Freesco and copy the iso image to your ftp folder.
Tom
--------------------
|