11 May 2004 ken   » (Journeyer)

The release of Knoppix 3.4 was something that I had been eagerly awaiting for one major reason - kernel 2.6 on a pre-packaged distribution. I needed the kernel because the old 2.4 series did not support my laptop's troublesome chipset all that well. This entry covers the process and challenges involved in getting a Linux desktop to run well on my laptop.

Laptop specs:

First off - knoppix wouldn't boot on my laptop at all. After the initial knoppix screen, it would boot into a blank screen and freeze. All the standard options, such as failsafe, expert, etc, all failed. An initial search suggested that I needed to set the "noapic" option, but even that did not work. After much searching and comparing, the magic sequence to boot knoppix on this laptop turned out to be:

knoppix26 noapic nolapic noscsi

Yes, scsi probing causes the system to crash. The "no local apic" option was also something that needed a bit of searching for. I found it in the kernel-parameters.txt file in the source tarball. This managed to successfully boot knoppix though, and all worked well from then on.

The next problem then proved to be actually installing it on my laptop, since like all WinXP preloaded laptops, it came with WinXP taking up the entire hard disk and partitioning was required. Knoppix 3.4 came with several partitioning tools (QTParted, ntfsresize) but the versions were relatively old and unable to deal with WinXP's peculiar usage of disk space.

WinXP (and probably all other NTFS OSes) tends to leave a large chunk of data at the end of the partition allocated to it, marking it hard to resize the partition. Running the included Windows defragmentation tool does not budge this large chunk at all, even if the partition is 90% empty.

The versions of QTParted and ntfsresize on Knoppix 3.4 were unable to shift this chunk so it would have required a destructive repartitioning of my laptop. I wasn't keen on reinstalling WinXP (no, I still need it on my laptop) so it seemed like a bad situation. Fortunately, the newest version of ntfsresize (1.9.1) is able to move those chunks of data. I downloaded the ntfsresize tarball onto the NTFS partition, booted Knoppix 3.4 from the CD and unpacked the tarball into /home/knoppix (don't unpack into the NTFS partition! The NTFS drivers on Knoppix 3.4 are still beta and can thrash your NTFS partition) and ran it from there. The partitioning went off without a hitch.

After that, knoppix was installed onto the laptop using knx-install (verify). Being a debian user, I was quite pleased that it offered a "debian" installation. Didn't really bother to find out the differences between the different installs but the bootup screens swapped to the debian sarge (unstable) logos instead of knoppix.

Only problem is that the install program didn't give me an option to pass kernel arguments, so the laptop was still not functional on bootup. Despite using lilo as the bootstrap loader, it wasn't possible to pass arguments on startup. It was back to the knoppix 3.4 CD one last time ...

Running from the CD this time, I mounted the HD partition and chroot'ed to it. After editing /etc/lilo.conf to pass the arguments (and making kernel 2.6 the default kernel), I updated the bootloader and all was good. I had a debian system running on my laptop and all was well ... until I wanted to use my wireless card. But that's an issue for another day and another blog.

Latest blog entries     Older blog entries

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!