Due Date: February 10, 2011.
Here are some notes to help you with the installation of your VMware virtual machine system.
I downloaded VMware from here. I purchased VMware fusion for $0, and used the product key I was given by CSE.
I downloaded an Ubuntu ISO 8.04 LTS from here. Select "alternative download options..." where you will see the 8.04 LTS option.
Install the ISO image on your VMware system. I selected 1/2 must system's RAM, and 16GB disk should be plenty.
After you install the Ubuntu system, boot it inside a VM. Inside the Ubuntu system you should have access to the network, and be able to download Linux kernel source from kernel.org. Download version 18.104.22.168. We need a specific version in order to load security modules.
In order to build a Linux kernel, you need to install a couple of packages that are not part of the initial install. Use the following commands to install the packages:
sudo aptitude install build-essential
sudo aptitude install libncurses-dev
Follow the kernel build instructions here. We do have a few modifications, so follow the remaining instructions carefully.
At the step of configure a kernel build. Instead of the proposed options, my system was only configured to do make menuconfig. Under security options only "Enable different security models" and "Socket and Networking Security Hooks" should be enabled (as "built-in" or "*"). Save your kernel configuration. Verify that the file .config in the root source directory (probably linux-22.214.171.124) has been modified.
Now, build the kernel. Use the following command at the shell prompt in the source root directory to (perhaps) speed things up a bit: CONCURRENCY_LEVEL=4 make all. This will take a while.
At installation you will need to make an initial RAMdisk (after make install and editing the menu.lst file in /boot/grub). Execute the following commands from /boot:
sudo update-initramfs -u -k my-newversion-num
Reboot into your new kernel and make sure that you can get X Windows and a shell up. All the available programs and configurations will otherwise be the same (e.g., your password).