Independent writings
Support this site:

Installing and Configuring Linux on a Gateway 400SD4 notebook

The following notes describe my experience installing Linux on a Gateway 400SD4 notebook. Details may vary depending on the exact configuration of your machine, but hopefully these notes provide some useful pointers to get you up and running.

Hardware Configuration

I purchased my Gateway 400SD4, pre-built (and pre-configured with Windows XP Home) from one of the Gateway Country stores. Since I needed a notebook soon, I didn't have time to special order one. As a result, it's configuration was pretty much standard (though still a nice machine):

  • CPU: Intel(R) Pentium(R) 4 CPU 2.40GHz stepping 07
  • Hard disk: 30 GB
  • Floppy drive: 1.44MB
  • Built-in modem and network cards, and 2 USB ports.

The Windows XP Hassle (The Microsoft monopoly at the consumer level)


When I was looking for a new notebook computer, I was a little pushed for time so stuck to the main brands - like Dell, Compaq, HP, IBM, Gateway, etc. I'd had a Gateway desktop before and was very happy with that, so perhaps I was a little partial to Gateway. Even so, I decided to look around at the competition. I was surprised - though in hindsight should not have been(!) - that none of these major brands were willing to sell me a notebook computer without a copy of Windows XP. I told every salesperson that I spoke to that as soon as I got the new computer I was going to wipe its hard disk and install Linux. I also told them that I had no desire to run Windows XP, especially considering some of the privacy issues surrounding its early releases. When I mentioned these, they looked shocked! They typically missed the point and would respond with something like, "Windows XP is very secure".

As an aside, most of the 6-8 salespeople I spoke with regarding these computers knew very little about Linux. And the one that even knew what Linux was didn't have much experience with it. They had all "bought in" to the Microsoft sales pitch, and couldn't understand why someone wouldn't like "all the new features" of Windows XP.

I managed to open the eyes of a few of them and pointed them to research some of the privacy issues around Windows XP. Anyway, getting back to the point...

No matter which of the major brands of notebook computer I wanted to buy, I was told that I could not order one without Windows XP on it. I even told the salepeople that as soon as I got the computer home I planned to wipe the hard disk clean and immediately upgrade to Linux. I had desire to purcahse or run Windows XP.

Even so, if I wanted to buy a major brand notebook computer, I had no choice but to buy Windows XP even though I didn't want it. If that doesn't represent a Microsoft monopoly, then I don't know what does.


Linux Installation

My preferred Linux distribution is Slackware, though the following notes should pretty much apply to any other current distribution. I decided to install Slackware 8.0 with the Linux 2.2.19 kernel (using Slackware's bareapm.i boot disk).

A 30GB hard drive was more than enough for what I wanted. Most of my main files are kept on network drives. As a results, I decided to partition the 30GB disk as follows:

Partition Mount point Size Partition Type (Format) Notes
/dev/hda1 /boot 16MB 0x83 (ext2/Linux native) Primary boot partition
/dev/hda2 /dosc 10GB 0x07 (ntfs) Windows XP (since I had to buy it) or other Microsoft Windows OS
/dev/hda3 /dosd 10GB 0x0c (vfat/FAT32) Shared drive (shared between M$ Windows and Linux)
/dev/hda4 - - 0x05 (Extended) Contains /dev/hda5 and /dev/hda6
/dev/hda5 - 512MB 0x82 (Linux swap) Swap partition
/dev/hda6 / 8GB+ 0x83 (ext2/Linux native) Primary Linux partition

Kernel selection

After the initial installation using Slackware's bareapm.i pre-built kernel, I rebooted and found that the installation hung when trying to set the system time from the hardware clock. After trying various things, I finally realized that by pressing Ctrl-C at the point the set up was hanging terminated the hwclock application that was hanging. This allowed me to boot up an initial installation, and edit the configuration such that hwclock was not invoked. [I later rebuilt the kernel - this seems to resolve the problem with hwclock.]

Gateway's tech support

When I purchased the 400SD4, I was hoping that - like in the "old days" - the technical specs for each hardware component would be listed either in a manual, or on a piece of paper inside the box. Unfortunately, this wasn't the case. So, in order to find out some of the detailed technical specs for the 400SD4, I decided to give Gateway a call. If you do this, remember that Gateway does not support the installation of Linux on their machines - though based on my past experience, their machines seem to support Linux pretty well. :-) As a result, don't mention that you're trying to install Linux. Your call will likely be terminated promptly with a "sorry, Gateway does not support the installation of Linux".

Having said that, it does appear that several of the tech support people that I have spoken to at Gateway are somewhat sympathetic to your cause. As long as you don't mention the word Linux, you can usually get the information you need. It's note as if this is illegal. You bought the computer - I'm assuming - so you just have a few technical questions about the hardware that you purchased. Just tell them that you have some custom software that you're installing for which you need to know these settings.

Anyway, I managed to get some detailed technical specs from one of their very helpful tech support personnel.

XFree86 Configuration

After a little digging, and social engineering with Gateway's tech support, I was able to determine that the video card installed on this machine was an ATI Radeon. Unfortunately for me, this was not supported in the version of XFree86 that comes with Slackware 8.0. I checked out the web site and found that support for this video card was included in the latest (stable) release. I therefore downloaded, compiled and installed XFree86 4.2.1 and configured it for use with the ATI Radeon. For those that are interested, I have included a copy of my XF86Config configuration file.

Since I prefer KDE as my desktop environment, and the default was twm, there was a minor configuration change to make KDE the default. This is probably described somewhere in the XFree86 documentation, but to save you looking it up, here it is again:

   cd /etc/X11/xinit
   mv xinitrc xinitrc.twm
   ln -s xinitrc.kde xinitrc

Configuring the CD-RW

The CD-RW was immediately recognised and supported as a CD (read-only) drive during configuration. No problems there. However, I wanted to use the writing/recording capabilities of the CD-RW too. I simply followed the instructions in the CD-Writing-HOWTO, rebuilt the kernel, installed (adding a line append="hdc=ide-scsi" to my lilo.conf) and tested it. Running cdrecord -scanbus gave the following:

cdrecord 1.10 (i686-pc-linux-gnu) Copyright (C) 1995-2001 Jörg Schilling
Linux sg driver version: 2.1.39
Using libscg version 'schily-0.5'
        0,0,0     0) 'QSI     ' 'DVD/CDRW SBW-161' 'SX02' Removable CD-ROM
        0,1,0     1) *
        0,2,0     2) *
        0,3,0     3) *
        0,4,0     4) *
        0,5,0     5) *
        0,6,0     6) *
        0,7,0     7) *

If you get something like this, then you should have it working.

Finally, I installed xcdroast 0.98alpha9. Yes, I know there's a newer one but I had this available and it worked fine for me before.


The Slackware 8.0 installation program wasn't able to auto-detect the internal network card. So a little more social engineering with Gateway's tech support (actually on the same call regarding the video driver), and I found out that the 400SD4 had an internal Intel PRO/100 VE Ethernet card. Fortunately, Intel makes a Linux driver for this card. Good job Intel! So, I downloaded and installed the file, e100-2.1.24.tar.gz from Intel's web site. After following their instructions, the card worked just fine.

Useful links:

Downloaded driver from:

For information on Intel's support for the PRO/100 VE Ethernet card under Linux, refer to the Intel web site at:

Sound support

The sound card on my 400SD4 is a Maestro3. To add support for this I had to recompile the kernel, and enable prompts for EXPERIMENTAL drivers. I was then able to compile the maestro3 support as a loadable module. After a make modules followed by a make modules_install, I added modprobe maestro3 to my start-up scripts and added the following line to modules.conf:

      alias sound-slot-0 maestro3

More details can be found in the Documentation/sound/Maestro3 file included with the 2.4 kernel source files.

After rebooting, and starting up KDE, I heard sound coming from my machine for the first time. Unfortunately, the volume was very low. This was easily fixed by running KMix and adjusting the volume settings there.

Sidebar: Setting permissions on /dev/mixer

As an aside, I was only able to run KMix as root initially because the permissions on /dev/mixer were as follows:

crw-rw----    1 root     sys       14,   0 Jul 18  1994 /dev/mixer

To allow all users access to the mixer, I changed the permissions on /dev/mixer to crw-rw-rw-. Alternatively, I could have left the permissions set the way they were, then added to the group "sys" any users that I wanted to give permission to. Since I didn't take this latter approach, I haven't checked into any security implications of this. However, I would expect only "trusted" users would be added to such a group anyway.

Feedback: did you find this information helpful?

If you found this information helpful or have any comments/suggestions, then please let me know by sending an e-mail to me at steven.gould at Additionally, if you'd like to make a donation - even just $5 - to help with the upkeep of this site and encourage me to write more, you can click on the button below and do so using PayPal.

Last modified: Tue Jan 21 22:33:11 CST 2003