At the prompt, type linux single to boot into single user mode. This avoids scanning the pcmcia bus which will cause the kernel to hang. The other options of passing arguments to LILO (mentioned in other documents on the Linux on Laptops page) do not seem to work in Debian, but this method is fine.
Once in single user mode, you are asked for your root password. Just hit return for your root password as it hasn't been set yet. All your partitions will have been mounted.
At this point you need to compile the pcmcia-cs modules and install them in the running kernel. This means you need the pcmcia-source, make, gcc, tar, kernel-source-2.*.* (corresponding to the installed kernel --- 2.2.18pre21 on the Debian CDs I have), and your favorite editor. I chose to grab things from the potato cdrom which I had. Perhaps soon there will be woody installer images. You actually need more than this, but apt will pull in the required packages.
cd /etc/apt/ mv sources.list sources.list-orig touch sources.list apt-cdrom add (for each of the CDs in the installer set)This builds a new /etc/apt/sources.list for your entire installer set. You may want to copy this file someplace safe as it may get wiped out when dselect eventually starts up.
apt-get update apt-get -u install make gcc tar kernel-source-2.2.18pre21 emacs20You can add pcmcia-source to the above list (which will give you version 3.1.22 from potato), or download the current version (3.1.25) from sid or from here.
cd /usr/src/ tar Ixf kernel-source-2.2.18pre21.tar.bz2 (the I option changes to j in woody/sid's version of tar) ln -s kernel-source-2.2.18pre21 linux tar zxf pcmcia-cs.tar.gz cd /usr/src/modules/pcmcia/The key option to get the PCMCIA stuff to work is to include PnP BIOS resource checking.
Type ./Configure -------- Linux PCMCIA Configuration Script -------- The default responses for each question are correct for most users. Consult the PCMCIA-HOWTO for additional info about each option. Linux source directory [/usr/src/linux]: hit return The kernel source tree is version 2.2.19. The current kernel build date is Thu Jun 7 07:58:08 2001. Build 'trusting' versions of card utilities (y/n) [y]: Include 32-bit (CardBus) card support (y/n) [y]: Include PnP BIOS resource checking (y/n) [y]: The PCMCIA drivers need to be compiled to match the kernel they will be used with, or some or all of the modules may fail to load. If you are not sure what to do, please consult the PCMCIA-HOWTO. How would you like to set kernel-specific options? 1 - Read from the currently running kernel 2 - Read from the Linux source tree Enter option (1-2) [1]: 1 Module install directory [/lib/modules/2.2.18pre21]: (or whatever is currently running)
Now compile and install the modules:
make all make install
If you are the paranoid type, check to see that the modules are present in /lib/modules/2.2.18pre21/pcmcia
emacs /etc/resolv.conf and add the lines
search your_domain.com nameserver your_favorite_nameserver IP addresses(save and exit)
For a fixed IP address, edit /etc/pcmcia/network.opts appropriately adding your IP address, netmask, and (perhaps) gateway. The network and broadcast addresses should be deduced. You can add the search and nameserver information, but /etc/resolv.conf should work fine.
For a dynamic IP, I had to fuss a bit. I found that pump did not work, so I downloaded dhcp-client
(that is apt-get install dhcp-client)Run pcnetconfig and choose to use /etc/network/interfaces. It will write another /etc/pcmcia/network.opts file. You may have to add the lines
(no)auto eth0 iface eth0 inet dhcpto /etc/network/interfaces to use dhcp.
/etc/init.d/pcmcia restart For a fixed IP, I have to run the command /sbin/ifconfig eth0 up (after the pcmcia networking has come up) even though ifconfig and route look fine. Anyway, I would suggest you make this a little script, put it in /etc/init.d/local and make a link to it in /etc/rc2.d/S98local (perhaps earlier S21local if you use ntp/ntpdate). Note you may want the script to sleep a little to wait while the pcmcia stuff configures itself. Something simple like:
#! /bin/sh echo "Sleeping 5 seconds to wait for tardy electrons" sleep 5 echo "Local initialization of eth0" /sbin/ifconfig eth0 up exit 0
Contrary to the advisories in the other Linux on Laptops guides for the Inspiron, the following things are not necessary:
You do not need to add CORE_OPTS="probe_io=0" to /etc/default/pcmcia
You do not need to edit /etc/pcmcia/config.opts to exclude port range 0x800-0x8ff. On the other hand, you will have to delete this range if you build the pcmcia drivers into your 2.4.* kernel ... see the notes below.
Now that the network is working (you did ping something right?), you should reboot, and debian will resume its standard install mode asking you to set up your root and user accounts. Then the installer gets you going into dselect. You have some choices to make depending upon whether you are installing potato or woody/sid (see below).
apt-get -u install apt apt-utils dpkg debconf perl
This is actually the point at which most upgrades have problems. Then I would do
apt-get -u dist-upgrade
This will upgrade the very few packages you have on your system to the sid versions. In particular, this will take care of the libc upgrades. Once that is successfully completed, you have a perfectly functional, if a bit sparse, sid system.
At this point you are free to install most of your packages except X which we take care of next. Before doing so make sure you download a newer kernel in the 2.4.* series, 2.4.5 for this document.
cd /usr/src tar jxf kernel-source-2.4.5.tar.bz2 (now the bzip2 option has changed) rm linux ln -s kernel-source-2.4.5 linux cd linux cp /path_to_my_config_file/my_config_file .config (see the leading dot?) make-kpkg --revision=myname.1.0 kernel_imageOnce the kernel has finished compiling,
cd .. dpkg -i kernel-image-2.4.5_myname-1.0_i386.debBefore you do anything else, edit your /etc/lilo.conf file so you can get back to your working kernel in case something goes awry. After doing so, don't forget to rerun /sbin/lilo. I assume you know what you are doing here. Then reboot.
If you are lucky, the kernel will not hang, despite the fact that the PCMCIA modules have not yet been compiled for this version of the kernel. Why it doesn't hang, I don't know. If it does, boot to single user mode as you did above. The goal after rebooting is to rebuild the PCMCIA modules again and reinstall them. See the instructions above, although you may want to do a make clean first. Once the modules are installed, you should be able to get your network back up as you did the first time.
PCMCIA Note (31 July 2001): Since I first installed a 2.4.5 kernel, I have played more with the pcmcia stuff, and the kernel drivers seem to working (at least in the 2.4.7 kernel). Using the kernel drivers actually simplifies things quite a bit, so I would recommend this approach. Here is my config-2.4.7 file for building kernel-2.4.7. The pcmcia stuff is a bit scattered, some in "General Options", some in "Network Device Support". If you haven't already, run pcnetconfig and choose the option for using /etc/network/interfaces for either fixed IP or dhcp use. Enter all your information in the /etc/network/interfaces, and not in /etc/pcmcia/network.opts. You also will no longer need the local ethernet initialization script listed above.
Now you are in the home stretch. You need to download whatever x-packages you need. At a minimum, I would suggest (you need an xserver, fonts, and a window manager):
apt-get -u install task-x-window-system-core xterm wmakerNow you need to fuss a little. Don't worry too much about the xserver install script. Dell has provided a number of XF86Config-4 files for linux users. First, make sure /dev/mouse actually points to your mouse, and in root's home directory (and eventually yours) you have an .xsession file with 755 permissions and at least the line wmaker to give the xserver something to do when it starts.
I have copied Dell's XF86Config-4 files for 1400X1050 and 1024x768 for your convenience. Their modeline in the 1280x1024 file is identical to the 1400x1050, so not of much use. You can get the xserver to give you a 1280x1024 resolution, but it did not look very crisp to me.
Copy one of the files to /etc/X11/XF86Config-4 and issue the startx command. X should come up unless I have forgotten something silly. If it fails, check root's .xsession-errors and /var/log/XFree86.0.log for information. There may be some font path problems and the like. If X does come up, you can kill it with Control-Alt-Backspace. Now that it works you can install your favorite display manager, e.g., apt-get install xdm. You can start it manually (/etc/init.d/xdm start), or it will come up automatically the next time you reboot.
Last modified: May 31 2008 12:25:36 EDT by Thomas R. Shemanske