Archive for June 28th, 2005

WOOHOO!! Holiday’s at last

Tuesday, June 28th, 2005

Well, I just finished my final end-semester exam for Semester 1, 2005… 6 exams in total (two maths, two electrical engineering, an IT software engineering exam, and a physics exam).

It’s a great thing to see the back of them now… as I can at last get to work on things that have been demanding my attention for some time now.

I’ve started work on a netboot-building system called PreLinux. It’s primarily designed to allow netbooting of diskless/semi-diskless workstations and allow distributions such as Gentoo, Fedora Core, Ubuntu and others run without needing to install them first.

The concept is this:

  • Inside an initramfs image, there’s a version of BusyBox and some basic tools, linked against µClibc, along with just enough driver modules to get the ethernet card and/or storage devices talking.
  • Once a means of downloading the root FS image is established, the system then attempts to connect to the network, and prepares the disk, formatting it completely as swap-space. As initramfs is paged to disk when not in use, it should be possible to run completely out of swap/RAM.
  • If a modules= kernel option is specified, it downloads additional modules to be extracted into RAM, and does further hardware probing.
  • The scripts then look for a root= parameter on the kernel command line. This is a URL to where to grab the image… e.g. http://foo/bar.tbz2, nfs://server/foo.tbz2 or cdrom:/blah.tbz2. This is extracted onto /.
  • The system then execs /setup.sh (from the downloaded tarball for /) which takes care of downloading any SquashFS/cloop images for /usr /opt, etc… and setting up any system-specific configuration settings for the booting machine.
  • Last step… /sbin/init is exec-ed, and Linux boots up like normal

This prodominantly for the Asperger’s Syndrome Support Network, as a means for netbooting their workstations for the Adult Computer Club… however, I’m also aiming to use this for Atomic Linux LiveCD, and for Gentoo/Cobalt-MIPS netboot images. Already, the system is more than capable of calling crossdev to make a cross-compiler suitable, cross-compiling BusyBox statically and cross-compiling a kernel complete with the initramfs — thus making it capable of providing netboot images good enough for bootstrapping Gentoo Linux. I have a prototype script that does some of the other idea too… it’s now just a case of putting it all together.

In short, watch this space. :-)


Bad Behavior has blocked 297 access attempts in the last 7 days.