I’ve been working over the last few days to fix up a lot of the electronics currently lying around the house for eventual sale. For a few laptops this involves wiping the OS on them and installing a new one. Since I’m targeting my fellow Linux geeks, I’ve been putting Ubuntu on them.
One of my favorite old laptops is an IBM Thinkpad X40. It was built with an older Intel CPU, one that doesn’t support the memory extensions known as PAE. Beginning with Ubuntu 12.04, the OS doesn’t normally install on these older laptops as Ubuntu expects a PAE-capable CPU. So what’s a geek to do?
I was fortunate to find a Ubuntu developer who had created a customized Ubuntu 12.04 CD made especially for older, non-PAE laptops like mine. However, I’ve been installing my OSs using flash disks as they’re much faster than CDs. If I wanted to install Ubuntu the fastest and most convenient way, I would have to figure out a way to squeeze the non-PAE install on with the PAE install.
Being the clever geek I am, I did just that. I copied the initrd and kernel from the non-PAE version onto the flash disk of the standard Ubuntu install. I also uncompressed the filesystem.squashfs of the non-PAE version and copied the modules from that onto the filesystem.squash already on my flash disk. With a few small edits to syslinux’s txt.cfg file, I now have a flash disk which will install both PAE and non-PAE versions of Ubuntu 12.04. The extra disk space amounts to about 30 MB, rather than the full 700+ MB CD image it could’ve taken. Needless to say, I’m pretty proud of my geek-fu!