Windows and Linux on a Compaq 1800T Laptop

INTRO
This is an update to a page that initially described setting up a Compaq Presario 1800T as a dual boot linux/Windows system. Since Redhat has since moved on to newer versions and Compaq doesn't even exist anymore, this page is probably of limited use to anyone but me, so I use it to keep notes on OS installations. Here is a good general reference for Linux on Laptops.

Here's what I got:

I got as much disk space and memory as I could find as of Summer 2000, which is when this was purchased.

The Linux Install

Details for running Partition Manager are given here. The only tricks are the order of the partitions. Drives > 30Gb may require some additional attention.

Originally I'd wanted 10Gb for Windows and 20Gb for Linux, so we set the first partition as the Windows boot, and put Linux partitions 10Gb farther along the hard drive. This failed, I guess because the Linux boot partition needs to be within the first 1024 cylinders. So instead we ended up with a 1.5Gb Windows boot partition, then a 1Gb Linux boot partition, followed by a 7Gb Windows data partition (type fat32), then 750Mb of linux swap (roughly twice my memory), 2 Gb for /usr, and finally two ~ 8Gb linux data partitions. Much of this is overkill -- looking at the output of df it looks like / is only using 54K, and /usr 875K (and this after I have dumped a fair bit into /usr/local). On the Windows side I'm already up to 1.6Gb without much of anything added. Here's what my system looked like as of some point in the past:

Filesystem           1k-blocks      Used Available Use% Mounted on
/dev/hda3              1011960     54032    906520   6% /
/dev/hda8              8066164   1084348   6572068  14% /l1
/dev/hda9              6406856        20   6081380   0% /l2
/dev/hda1              3063324   1647436   1415888  54% /mnt/win98
/dev/hda5              7152860    218284   6934576   3% /mnt/windata
/dev/hda7              2522520    875644   1518736  37% /usr
and /etc/mtab looks like
/dev/hda3 / ext2 rw 0 0
none /proc proc rw 0 0
/dev/hda8 /l1 ext2 rw 0 0
/dev/hda9 /l2 ext2 rw 0 0
/dev/hda1 /mnt/win98 vfat rw 0 0
/dev/hda5 /mnt/windata vfat rw 0 0
/dev/hda7 /usr ext2 rw 0 0
none /dev/pts devpts rw,gid=5,mode=620 0 0
automount(pid392) /mnt/autofs autofs rw,fd=5,pgrp=392,minproto=2,maxproto=3 0 0
So the only trick was to put /mnt/win98 first and / second, keeping /mnt/win98 small enough so / isn't too far down the disk. Then add in the Windows and Linux partitions. You can access the Windows files while under Linux by mounting the Windows partitions as disk type vfat in /etc/mtab.

The Monitor
This has been a bit of a pain. Initially there was no entry for it, so we got a Modeline from this website --
ModeLine "1400x1050" 125.04 1400 1464 1784 1912 1050 1052 1064 1090 #60Hz
You edit this in /etc/X11/XF86Config-4. After two years of use the monitor got flaky, and after reinstalling the OS (now 2.4.7-10 kernel as of July 2002), the Modeline is now in the file and listed as
ModeLine "1400x1050" 129 1400 1464 1656 1960 1050 1051 1054 1100 #60Hz
which is a bit different. At the end of the file under the 'Screen0' section you need 'Modes "1400x1050" ' to use the full resolution of the monitor.

The Modem
The Lucent 56K ITU V.90 Modem PCI is a winmodem, i.e., uses Windows software to run. It was my only choice (monopoly!!). I never did get this to work. You might try a utility , but this did not compile for me on the first try so I gave up and bought an external modem after consulting which ones were real modems and not run only by Windows. Once I broke down and bought an external modem I discovered another link to ltmodems that supposedly gets it to work in Linux. Oh well.... The Lucent winodem I have does work under Windows. You'll need to set it up via Start -> Accessories -> Communications -> Dial Up Networking. Choose 'Properties' and 'Server Types' to set up your nameserver. My internal Lucent modem is on port COM2, or /dev/ttyS1 in Linux.

My external modem is a Diamond Supra Express 56e pc. Note do not get the 56i sp, which appears to be a winmodem. The 56e is about the size of a wallet, but also has an AC adapter that takes some space. Still, it doesn't add a whole lot of weight to the computer bag. I use ISDN now anyway.

What did work for me was wvdial. Edit /etc/wvdial.conf and read the man pages on it. You may as well run the executable 'wvdialconf' to see how yur modem is set up. You set the dialer-name (any string), username, password, and phone number together with anything you need to tell your ISP to get ppp started ('ppp default' for me). Since my version of ppp is new (type 'rpm -qa | grep ppp' to see your version), and I did not want the modem to reconnect if it gets stuck, I also had to add these three lines to the bottom of wvdial.conf:

Default Reply = ppp default
Auto Reconnect = off
New PPPD = yes

Then type 'wvdial dialer-name' and away you go. wvdial is fairly chatty about what it is doing, so if it gets hung you ought to be able to tell what is going wrong. I like being able to easily set the modem to be quiet by having Init4 = ATM0 in the Dialer Defaults.

The only flaky thing about this, which I still haven't figured out, is that if I run wvdial right after a reboot it gets all the way to starting pppd (i.e., it gets completely done), but I'm still not connected. If I type 'ifup ppp0' and then ctl-C out of it as the modem starts dialing then wvdial works until the next reboot. There is probably some process that ifup starts that wvdial needs. If I knew what it was I could put it into the /etc/rc.d/init.d directory. In any case, this does work well, even though my external modem had no documentation of any use included with the shipment.

The Ethernet
To change names, create a directory with the new name under /usr/local/eth0/name, and then store this script in /usr/local/bin:

#!/bin/csh
/bin/cp -f /usr/local/eth0/name/hosts /etc/hosts
/bin/cp -f /usr/local/eth0/name/HOSTNAME /etc/HOSTNAME
/bin/cp -f /usr/local/eth0/name/network /etc/sysconfig/network
/bin/cp -f /usr/local/eth0/name/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0

where the hosts file looks like:
127.0.0.1 name.whatever.edu name localhost.localdomain localhost

HOSTNAME is the usual:
name.whatever.edu

the network file looks like:

NETWORKING=yes
HOSTNAME=name.whatever.edu
GATEWAY=xxx.xx.xxx.xxx where x are numbers
GATEWAYDEV=

and finally the ifcfg-eth0 file is something like:

DEVICE=eth0
BOOTPROTO=none
BROADCAST=xxx.xx.xxx.xxx
IPADDR=xxx.xx.xxx.xxx
NETMASK=255.255.255.0
NETWORK=xxx.xx.xxx.x
ONBOOT=yes
IPXNETNUM_802_2=""
IPXPRIMARY_802_2="no"
IPXACTIVE_802_2="no"
IPXNETNUM_802_3=""
IPXPRIMARY_802_3="no"
IPXACTIVE_802_3="no"
IPXNETNUM_ETHERII=""
IPXPRIMARY_ETHERII="no"
IPXACTIVE_ETHERII="no"
IPXNETNUM_SNAP=""
IPXPRIMARY_SNAP="no"
IPXACTIVE_SNAP="no"

The DVD
Rented a movie and tried the DVD out under Windows. It works great. There may be a way now to get the DVD to work in Linux, but for now DVD's are simply entertainment so I'm happy to boot up under Windows for this purpose.

The Hard Disk & Backups

From the laptop to the server as root,
dump 0bdsfu 63 62500 60000 servername:/dev/nst0 /l1
The laptop must be in /etc/shosts.equiv on the server. Note you use /dev/nst0 not /dev/nrst0, where the n is for no-rewind.

To restore, on the laptop
restore -ivb 63 -f servername:/dev/nst0
Without the b 63 you'll get a memory error.

The CD
No problems.

The Zip Drive
Works ok.

Printers
Relatively easy to add with the printtool. Most of the ones I'm interested in can be run from other machines and are set up as remote printers. The Compaq IJ300 printer that I got for 1$ with the laptop turned out to be a 'win-printer'. You get what you pay for I suppose.

8-bit Applications
A real headache for me was getting certain 8-bit applications to work with my nice new 16-bit screen . I finally solved this problem using vnc.


Back to Hartigan's Home Page
Patrick Hartigan
hartigan@sparky.rice.edu