Printable Version of Topic
Click here to view this topic in its original format
Dingetje's Forum > Tips & Tricks > Howto make FREESCO 03x boot from CD

Posted by: dingetje Dec 23 2003, 02:33 PM
This is a mirror of a howto posted by tom on the official forum at


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 ( )... 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


mount -t umsdos -o rw /dev/hdb1 /mnt/hdb1

setup our working environment


mkdir /mnt/hdb1/freesco
mkdir /mnt/hdb1/freesco/oldram
mkdir /mnt/hdb1/freesco/newram

copy the ramdisk to our working environment (and rename it)


cp /mnt/hdb1/router/ramdisk /mnt/hdb1/freesco/ram1.gz

unzip it


gunzip /mnt/hdb1/freesco/ram1.gz

mount it as a loop device so we can modify it


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.


dd if=/dev/zero of=/mnt/hdb1/freesco/ram2 bs=1M count=4

format the new ramdisk


mke2fs /mnt/hdb1/freesco/ram2

mount it


mount -o loop /mnt/hdb1/freesco/ram2 /mnt/hdb1/freesco/newram

copy everything from the old ramdisk to the new one


cp -a /mnt/hdb1/freesco/oldram/* /mnt/hdb1/freesco/newram

unmount both of them


umount /mnt/hdb1/freesco/oldram
umount /mnt/hdb1/freesco/newram

gzip the new ramdisk


gzip -9 /mnt/hdb1/freesco/ram2

move it to the "router" directory and rename it as ""


mv /mnt/hdb1/freesco/ram2.gz /mnt/hdb1/router/

Now we need to make the isolinux directory to hold the boot files


mkdir /mnt/hdb1/isolinux

Now we need to locate the "isolinux.bin" file (included in Knoppix)


locate isolinux

I used Knoppix 3.2 and found isolinux.bin at "/usr/lib/isolinux/isolinux.bin"

copy it to the isolinux directory you just created


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


default freesco initrd=/router/ vga=0 ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 panic=15
append initrd=/router/ ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 vga=0 panic=15
label freesco
 kernel /router/kernel
 append initrd=/router/ vga=0 ramdisk_size=128000 BOOTDEV=hdc root=/dev/ram0 panic=15

now we make the bootable iso image


mkisofs -pad -l -r -J -v -V "Freesco" -o /mnt/hdb1/freesco.iso -b isolinux/isolinux.bin -c isolinux/ -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.


Posted by: dingetje Mar 4 2004, 03:33 PM
Here's the original thread on the official forum:

A few things have been added to this thread, one of which is an automated script to make an ISO using a bootable Knoppix CD and your own harddisk based FREESCO. Check it out!

good work tom! master.gif

Posted by: dingetje Apr 15 2004, 10:01 AM is even more about the FREESCO CD Project.

Posted by: Guest May 19 2004, 07:41 PM
Interesting how to. Couple of questions: 1) using part of this method, could one create a Freesco image that runs from the ext2 filesystem? One of the steps involves editing a boot script that tells what file system is being mounted, after all (edited from umsdos to iso9660), and the newly created ramdisk is formatted ext2fs. If one changed that iso9660 to ext2 and then, after having copied the whole ramdisk over to ram2, renamed /router/ramdisk to /router/ramdisk.old and ram2 to /router/ramdisk, the wouldn't one have Freesco running in an ext2 (ramdisk) on the next reboot? 2) making this CD, one could use Freesco - in either UML or some emulator like Bochs or Vmware - as a firewall that runs within another Linux distro, correct?


Posted by: Guest May 19 2004, 07:47 PM
Oops. Forgot a 3rd question: 3) what's the size of the ramdisk? Does 128000 mean 12MB, 128MB? The zeroes tend to get me confused.


Posted by: dingetje Jun 7 2004, 07:48 PM
Guest (who ever you are), I suggest you post your questions on the forum that is hosting the CD howto.

Sorry I cannot help you further.

If you're interrested in running FREESCO on a virtual PC, check out the official forum at because there are some Bochs images (made by tom) to be downloaded for a FREESCO 03x box. Do a search for Bochs and ye shall find.

Posted by: dingetje Feb 17 2006, 01:17 PM

Powered by Invision Power Board (
© Invision Power Services (