Running Slackware 8.1 Linux on a Thinkpad T23 (2647-8MU)

I've documented my experiences in setting up my laptop in the hopes that it might help others making similar attempts. I should point out that while I refer to this as my laptop it is actually owned by my employer, but assigned to me as the sole user.

Index

Make, model, etc.

My laptop is an IBM Thinkpad T23. Of course with Thinkpads, the model is hardly a complete configuration. So, more specifically, I have an IBM Thinkpad Model T23 Type 2647-8MU. It has the smaller LCD TFT screen, with a maximum resolution of 1024 by 768 and it has the DVD without the CDRW. The CPU is a 1.133 GHz Intel Pentium III and it came with 256Mb of memory and a 28 Gb disk drive (manufacturers call this 30Gb, weasling around the difference between a 2^30 byte gigabyte and a 10^9 byte manufacturers-excuse-for-a-gigabyte).

Based on the stickers that are on it, I believe that IBM shipped the machine with Microsoft Windows® XP Professional installed. However, by the time that I saw it, it was running my firm's standard laptop configuration with Microsoft Windows® 2000 on a single partition spanning the entire disk with various third-party and locally developed applications installed. Roughly 90% of the disk was unused.

First target configuration

As much as I love to hate everything that comes out of Redmond, as a practical matter, I need to keep the stuff that was installed on my laptop. However, I do not need to keep all that free disk space tied to Windows® 2000. I've been doing multi-boot systems with various flavors of Microsoft Windows® and Linux since around 1994, so I figured I'd do the same thing with this machine.

What I haven't done before is partition a system with the Windows® NT File System (NTFS). Furthermore, I read some things that suggested that trying to use LILO with Windows® 2000 wouldn't work. So I bought a copy of Partition Magic 7.1 and set about partitioning my disk and installing Boot Magic and SuSE 7.2 Professional, which I had from setting up my last laptop with my last employer. Boot Magic requires a primary, non-hidden, FAT or VFAT partition, and I was concerned about having all of the bootable partitions within the first 1024 cylindars as well as keeping my other partitions relatively small to limit the problems that I might have with fsck. I've wanted to try out the Reiser file system, but I figured that I would play it conservatively on my work machine. So I ended up with:

I should point out that I'm well familiar with the general rule of having swap be twice the size of physical memory, however, I've also read about the differences between Linux virtual memory management and other systems that strongly suggest that under Linux your swap should, at most, match your physical memory.

Anyway, the disk layout and installation kind of worked. The problem was that I had a new machine with an oldish distribution and the display and network drivers weren't sufficient. SuSE was kind of a fluke for me. I've always used Slackware before, but had gone with SuSE in order to have the same distribution as my coworkers at my last job. However, given the driver situation and the fact that Slackware 8.1 was just out, and probably had pretty current drivers, I started over.

One of the first problems that I encounted was with Boot Magic. As it turns out, there are some special steps that you must take when dealing with NTFS that are documented on their web site, but not in the manual that comes with the product. Because I was following the instructions in the book, when I first tried to install another flavor of Linux, and then tried to reconfigure Boot Magic, I got very stuck. Technical support was very helpful. The most helpful piece of advice that they gave me was that I should find a Microsoft Windows® 98 or Millenium Edition boot disk, and run fdisk /mbr to restore the master boot record. Of course, once I knew that this could get me out of a serious jam, I decided to take a chance using LILO instead of Boot Magic. LILO worked just fine and Boot Magic no longer lives on my machine.

A side note about LILO is that if you set vga = 792 you can get a VESA framebuffer console with 1024x768 pixels that's 24 bits deep. This is not mentioned in the commentary found in /etc/lilo.conf, but is mentioned in the commentary in /etc/X11/XF86Config-fbdev.

Second target configuration

With the experience of the first pass under my belt, a sense that I could at least recover the Windows® 2000 installation, and a generally more experimental mindset, I targeted this installation:

Display

I'm not much of a gamer, so I'm far more concerned with getting a reasonable display than an optimal display. Because of this, I opted for the easy way out on the display configuration. During the Slackware installation, I opted for the 1024x768x16 frame buffer and then copied /etc/X11/XF86Config-fbdev to /etc/X11/XF86Config and had a perfectly usable X11 configuration.

Later, I came back and set things up to use the native ``savage'' driver, by editing /etc/X11/XF86Config, replacing these lines:

    Section "Device"
	Identifier  "VESA Framebuffer"
	Driver      "fbdev"
	#VideoRam    4096
	# Insert Clocks lines here if appropriate
    EndSection
    
with these:
    Section "Device"
	Identifier "device1"
	Driver "savage"
	VendorName "S3 Incorporated"
	BoardName "S3 Savage4"
	VideoRam 16384
	Option "power_saver"
    EndSection
    
and these lines:
    Section "Screen"
	Identifier  "Screen 1"
	Device      "VESA Framebuffer"
	Monitor     "My Monitor"
    
with these:
    Section "Screen"
	Identifier  "Screen 1"
	Device      "device1"
	Monitor     "My Monitor"
    

Network

Slackware's netconfig identified the right network driver and I configured for DHCP and was able to connect to the network immediately.

Advanced Power Management (APM)

I enabled the APM module by uncommenting the appropriate line in /etc/rc.d/rc.modules

Accessing the NTFS partition

While the Slackware installation helps you to mount FAT32 partitions, it doesn't help with NTFS partions. However, you can just add this line:

/dev/hda1        /dosc            ntfs        ro,umask=666     0   0
    
to /etc/fstab to get things going. Note that the umask=666 part is important if you want non-root users to be able to access the drive.

Accessing the CD and floppy drives

I edited /etc/fstab replacing these lines:

/dev/cdrom       /mnt/cdrom       iso9660     noauto,owner,ro   0   0
/dev/fd0         /mnt/floppy      auto        noauto,owner      0   0
    
with these lines:
/dev/cdrom       /cdrom           iso9660     noauto,user,ro   0   0
/dev/fd0         /floppy          auto        noauto,user      0   0
    
I also ran these commands:
$ /bin/mv /mnt/cdrom /cdrom
$ /bin/mv /mnt/floppy /floppy
$ /bin/rmdir /mnt/hd
    
to set up the mount points the way that I like them. The change in mount points is just a matter of personal preference. However, changing from owner to user is important if you want to allow users other than root to mount these drives.

Sound

I added this line:

    /sbin/modprobe i810_audio
    
to /etc/rc.d/rc.modules and then ran:
    # chmod go+rw /dev/audio /dev/dsp
    
which made everything except XEmacs think that the sound was working fine. Unfortunately, the thing didn't actually generate any sound. I tried the obvious ways to get the volume turned up (manual switches and KDE configuration tools) without luck.

To actually get sound, I downloaded the latest version of ALSA (alsa-driver-0.9.0rc5) and associated lib, oss, tools, and utils packages. Note that oss is at rc1 where the other packages were at rc5. I configured ALSP for the sound card intel8x0. When installing the drivers, ALSA really wants there to be an init.d directory somewhere before you run make install. I made one as /etc/rc.d/init.d. Then I edited /etc/rc.d/rc.local to run /etc/rc.d/init.d/alsasound start. I also add a number of calls to /usr/bin/amixer to unmute all output controls and set their volumes to 100%. Still, after logging in (KDM, Gnome, and Sawfish), I have to reset the Master volume with:

    # amixer sset Master unmute 100%
    
in order to actually hear any sound. At that point, however, the sound quality is good.

Modem

I didn't mess with the modem when I did the initial installation.

However, I've since gone back and installed Lucid WinModem support from the package ltmodem-8.22a4.tar.gz, available under the GPL, and have used kppp successfully. Installation is extremely straight-forward. Simply unpack the package and run ./build_module followed by ./ltinst2

Resources on the web

Individual installation stories:

Page Who Distribution Type Dual-boot
Running Slackware 8.1 Linux on a Thinkpad T23 (2647-8MU) Rick Campbell Slackware Linux 8.1 2647-8MU Windows ® 2000
Running Linux on the IBM ThinkPad T23 Chad Remesch Red Hat Linux 7.2 ??? Windows ® 2000
http://www.rithvik.com/linux/tp23.html Rithvik? Red Hat Linux 7.2 2647-5KU Windows ® XP
Debian GNU / Linux on a Thinkpad T23 Pat Oche? Debian (Potato 2.2r3/Woody?) 2647-BJG Windows ® 2000
Mark Alford's Red Hat 7.2 GNU/Linux on an IBM Thinkpad T23 Mark Alford Red Hat Linux 7.2 ??? Windows ® (version?)
Linuxcare Labs Standard Certification Linuxcare Various 2647-5KU none
Installing Linux on an IBM T23 Laptop Nick Papadonis Red Hat Linux 7.2 2647-6RU Windows ® XP
Installing & Running Linux on an IBM T23 Laptop Alex Bligh Debian (Potato 2.2r3/Woody) ??? Windows ® 2000

Rick Campbell <rick@campbellcentral.org>
Last modified: Fri Oct 25 15:21:50 EDT 2002