Linux setup

I run lot's of RedHat on my growing menagerie of boxes:
gate our firewall,
spider our web server
tardis my laptop
matrix my news server
slug ex-firewall, now a modem pool, also a prom burner
toque multi-boot test machine
I picked RedHat originally because they gave out free CD of 2.1 one USENIX, but mostly because the install and package management facilities are so slick.

Local linux Users Groups

I helped found the K-W Unix Users Group. It's the Unix users group because we pre-dates Linux and the commercialization of the internet. We set up out own MAN to share the incredibly expensive ISDN connections of several years ago.

Currently, we maintain our nameserver for the domain kw.net plus e-mail services for our members. We meet the third Wednesday of each month (except December). Here's a copy of our announcement.

We will be meeting at:

	ICR Board Room DC1331
	University of Waterloo

(First Floor Davis Center North East Corner, parking
in the MKS lot for the meeting)

We will go to Jose's Noodle factory after the meeting.

The KWUUG is an informal group, all are welcome.

	 Rail Line	   Phillip Street
	     |		    |
	     |[CCC]	    |[Shell]	    Columbia Street
 ____________|______________|______________________________
	     |		    |[GTO]
	[DC*]|[MKS]    [RIM]|
 UofW	     | 		    |
	     |    [McGinnis]|[ex Blue Dog]    [Jose Noodle]
 ____________|______________|______________________________
	     |		    
	     |	University Avenue

Here's a map of the area from Mapquest The big blank spot with the rail line running through it is the University, the red star is where Jose's is.

Making Bootable floppies

First, get 2.88M floppy drives, it makes your life so much easier.

You need a kernel, a very small kernel. Set it up with just the drivers you need, make it monolithic, and enable ramdisk support. You will probably also want to set the default ramdisk size to at least 8196. You can fit a 6-9M compressed filesystem onto a 1.44M floppy, so you need to make sure it will fit on a ramdisk.

Start with a minimal set of packages, you need net-tools, rpm, and dev, plus the packages they need. Create a temp directory, copy ash.static into bin/sh and link it to bin/bash, and create the directory var/lib/rpm.

Install the packages into the temporary directory using the --root option to rpm. They will complain about dependencies on the bash package, just use the --nodeps option.

There is a certain amount of trimming that you can do after they are installed, like deleting /usr/doc, /usr/man, /usr/share, and editing /etc/TERMCAP. Move enough binaries form /bin and /sbin into /usr/bin/ and /usr/sbin, to fill out /usr to about 1350kb, making sure that you leave enough to mount the second floppy.

Create a file in /tmp at least 10% larger than the results of a du -s of that directory and less than or equal to the default size of the ramdisk. Create and ext2 filesystem on that file. Mount it using the loop device.

dd if=/dev/zero of=/tmp/fsfile bs=1k count=nnn
mke2fs -i 1024 /tmp/fsfile nnn
mount -o loop -t ext2 /tmp/fsfile /mnt
Copy the contents of the directory, except usr, to the new device. Copy usr to a seperate, ext2 floppy.

copy the kernel to a floppy, run the commands

rdev /dev/fd0 /dev/fd0
rdev -r /dev/fd0 49152
to make it ask for and use a compressed ramdisk.

If you need more space, you could put a compressed disk image on the second floppy, and copy it onto a ramdisk by hand. The details of this are left as an exercise by the student.

Running the system

This should boot off the first disk and load the ramdisk. First thing is to re-mount root as writable, then mount the floppy as /usr.

Other Linux Resources

The Linux Rescource Exchange