Friday, April 10, 2009

Installing Linux on a Toshiba Satellite T1960CS

Some time back in 2007 I had the notion to install Linux on an ancient laptop I had sitting around. I figured it might be useful as a resident machine for torrents, a small web server, or even a router.

This was originally posted on a page at, but somehow got deleted. Thankfully had picked it up, so here it is again, all cleaned up.

The Computer

Toshiba Satellite T1960CS

  • 486, 66Mhz
  • 20MB RAM
  • 600MB HD
  • VGA display
  • PS/2 Keyboard and Mouse ports
  • 3.5'' floppy drive
  • Serial Port
  • Parallel Port
  • PCMCIA Ethernet IC-Card+

No CD drive. No USB port.

This computer also has a known habit of not liking certain types of boot floppies. The floppy will be perfectly fine, and will boot on any other computer. Distasteful floppies make the Toshiba respond with the very detailed message of: “Boot failed”. The Goal

Install some Linux onto the Toshiba T1960CS

The approach suggested in the Damn Small Linux page:

  • Find a tiny distro that can boot from floppy disk
  • Ensure the tiny distro can enable interweb abilities
  • Download and install the real distro of choice to the lappy

Tiny Distros

DSL suggests TOMSRTBT. I never figured out how to enable PCMCIA with that distro (maybe some guru knows how). DSL also suggests BGRescue, but that floppy gave a “Boot failed”.

Other tiny distros tested:

Boots! detects network card (with some tweaking)!


Boots from 2 floppies. First floppy can be made with simple dd command. Second floppy needs to be formatted MS-DOS, and you copy the tar.gz file onto it.

This thing actually has an X server, with some very basic applications.

After booting with the first disk, do the following:

1) Partition and format the hard drive

I chose a main partition, and a 64mb swap partition.

$ fdisk /dev/hda
: d (delete existing partitions)

: n (new partition)
: p (primary partition)
: 1 (partition 1)
: <Return> (first cylinder)
: +636M (last cylinder)

: n (new partition)
: p (primary partition)
: 2 (partition 2)
: <Return> (start where partition 1 left off)
: <Return> (to the end of the disk)

: a (make a partition bootable)
: 1 (partition 1)

: t (type of partition)
: 2 (partition 2)
: 82 (hex code for swap partition)

: p (check that the partitions are correct)

: w (write the partitions)
2) Format the partitions
$ mke2fs -c /dev/hda1
$ mkswap -c /dev/hda2
3) Mount the drive
$ mount /dev/hda1 /hd
4) BasicLinux to HD


  1. reboot the system with floppy 1 in the drive

  2. press CTRL when you see LILO

  3. enter this: hd root=/dev/hda1

  4. execute: lilo -v

  5. get the bas2hd package

  6. insert the disk, copy bas-hd.tgz to /tmp, and run go

  7. Edit /etc/rc.hd

Now that I have a drive ready and waiting, I need to get to the interweb.

$ edit /etc/rc.hd

Comment out these two lines

e2fsck -pf /dev/xxxx 2>/dev/null
mount -avt nonfs

Uncomment this line

# /etc/pcmcia/start

Add the following lines at the end (self assigned IP and netmask, default gateway, your DNS servers)

ifconfig eth0 192.168.###.### netmask
route add default gw 192.168.###.###
echo "nameserver ###.###.###.###" > /etc/resolv.conf
echo "nameserver ###.###.###.###" >> /etc/resolv.conf

Exit and save with Ctrl+X and y

Copy this new file to the hard drive or floppy to save it

$ cp /etc/rc.hd /hd

Then run the script

$ sh /etc/rc.hd

And make sure the internet is actually working

$ ping

I had to change my pants when it worked the first time.

Get the real distro: DSL…or not

My first attempt at a distro was DSL. I followed their instructions for the “Poorman’s install”.

Unfortunately BasicLinux doesn’t have ash installed, so it can’t run the script. But looking at the script code, all it does is this:

  • download the current DSL iso
  • mount it
  • copy everything out of it, onto the harddisk
  • download the floppy boot image
  • dd the floppy image to a floppy
  • reboot the computer

More unfortunately, I never could get BasicLinux to mount the iso.

Sooo…on another computer, I had to take all the files out of iso and put them into a tar.gz, then run a quick web server with newlisp (newlisp -c -d 8080 -w), so the lappy could wget the file (there’s gotta be a better way to do this).

Finally I got all of the DSL iso files copied onto the lappy harddrive.

I made a boot disk with dd from the ``bootfloppy.img'' file. Unfortunately the Toshiba didn't like the boot disk (“Boot failed”). After confirming that it just wasn’t going to take that image, I instead tried bootfloppy-grub.img. I had to change my pants again when it actually did boot.

Unfortunately, neither of the two Grub options worked. So I had to manually tell it. Press 'c' for the prompt, and type these commands (from here)

root (hd0,0)
kernel /boot/isolinux/linux24 root=/dev/hda1
initrd /boot/isolinux/minirt24.gz

(the command "title DSL" just gave me an error)

One last pair of pants for when this thing actually started booting up…and I had plenty of time to change because the bootup took forever.

DSL saw I had PCMCIA, and even the network card, unfortunately it said it didn’t have the drivers for any of it. Also my mouse wasn’t working.

At this point I give up on DSL because I didn’t want to figure out how to install the drivers for my network card without having a network card to download them (I’d have to find them on another computer and copy them onto a floppy?).

Another distro?

I thought I might also try Feather Linux. I have plenty of disk space, and this slightly bigger distro might have my network card drivers.

Need to download the USB distro zip, and unpack to the drive. Make the boot floppy. Once booted, I should be able to install it.

Not to be continued

Got burned out with all this madness. If I ever resume trying to get Linux installed, I plan to just use BasicLinux-at least I know it works. Plus I found X detects the mouse so long as it’s plugged in during bootup and never removed.

Unfortunately BasicLinux doesn’t come with gcc, so adding that would be the first priority.


Windows driver for the PCMCIA Ethernet card

No comments:

Post a Comment