Search My Blog

Saturday, August 13, 2011

Installing Linux on a 386 laptop - Hack a Day

Installing Linux on a 386 laptop

posted Aug 12th 2011 6:00pm by
filed under: how-to, laptops hacks, linux hacks, news

The “cheap” and “easy” way in about an hour! A question that pop’s up from time to time is “I somehow ended up with an archaic old laptop / computer, can it run Linux?” Well of course it can, but that totally depends! On what? Well machine CPU, CPU speed, hard disk space, RAM and most importantly what you are expecting it to do.

Okay, why a Intel 386? Well number one I own a 386, but more importantly its the absolute bottom Intel CPU you can run Linux on. While it wont be able to do much, it will give you a basic system to kick around and “get to know” the insides of Linux without a million things installed and the worry of breaking it.

Unfortunately a 386 requires some special moves as the actual chip was dropped from almost all distributions long ago. All of the modern distributions I have looked at require at least a 486 CPU. This tutorial will be strictly for installing a basic bare bones Linux on a 386. Have a 486? Pentium? Faster? Never fear I will be covering that in a part II later this week.

Linux on a 386 in about an hour? Madness you might think, it probably takes Linux longer to boot on a 386 (and in some cases you are correct)! Want to know the trick? Simple, cheat!

Join me after the break for the parts and steps needed to get you started.

First we need a target machine, here is mine. It is a DEC PC325SL, which translates out to intel386SL (which is a 386SX CPU in a highly integrated package where much of the support hardware is also inside the chip) running at 25Mhz with 4MB of ram and 120MB of hard disk space. It also has 256K video memory and 640×480 color VGA display. If you can swing it, a 386DX CPU or a 386S(X/L) with a 387 math co-processor is recommended, no it doesn’t really matter if its an Intel, AMD, etc. It also needs an IDE disk up to 2G, sorry MFM drives.

Next we need a distribution that will actually work with a 386 CPU. This is where it gets to be confusing. Everyone still has a distribution called i386, but support for the 386 was dropped a while ago. I looked at some of my favorites, Debian, Slackware, FreeBSD, and NetBSD (which I know are not Linux but hey.) Here is what I found out:

Debian stopped support with 3 so anything earlier is ok.

Slackware stopped around the same time in release 9.

FreeBSD states that it requires a 386DX, but then says most 386 laptops are ok via math emulation, but in a more current readme it states that you need a 486 (confused?)

NetBSD says it should work on all 386′s but I never made it that far.

Well of course I am not a super Linux guru, and can really only futz around without running off to a forum or a book, so I went with Debian. Originally version 2.2 as it was the newest version that machine could run, and yes in fact it did. The problem is it took over an hour to boot with a year 2000 generic kernel and when it finally did it refused to move past the package installer.

You could spend a lot of time trimming and optimizing to get it running great, but I am facing a brutal truth here, and that is the best I could run is still over a decade out of date and its going to require a lot of work. So I just simply stepped back in time a bit further to find something a bit more appropriate.

In the end I used Debian 1.3.1, which is a mid 1990′s Linux, and that’s really the point. Use whatever you like but its going to have to be pretty old or require a ton of work, which at that point you might be better off doing it from scratch.

Tools for the cheat install:

x86 compatible Host PC with an IDE/ATA port, and a standard BIOS capable of booting into DOS. I used my dual core AMD A2X2 with a nvidia chip-set so its pretty safe to say most PC’s will. It also needs an Internet connection and some form of Linux installed or booted (I use mint)

CD ROM or USB stick you can boot from with a windows 98 emergency boot disk (EBD from here on), or since MS DOS does not know how to access USB or SATA CD ROM’s, I used a old IDE drive with a 100Mb FAT16 partition on it.

IDE to 3.5 IDE pin adapter, they are cheap and handy I suggest you have one, just make sure you plug it in correctly you can kill your drive (as in magic smoke kill).

That should do it, lets get started

Step One:


The first LapTop I ever laid my hands on, was running Windows 3.1 and I thought it was the coolest thing I had ever seen!:) There was no Internet Connection available. DialUp was around then, but I hadn't ben exposed to it yet. I just had fun making Spread Sheets (address books) and editing images in MS Paint!;) So, well lets see... I have been playing around with Linux for Older PC's on and off since I first started with Linux, back in about 2005. I have several Small Footprint Linux Distro CD's and ISO's Saved on my Computers. I have Booted Live CD's and installed some of them, like DSL Linux on machines as old as a P1, 133mhz with 32 and 64MB of Ram. And DSL Linux runs great on them. But it's no longer being actively developed. I recently found Slitaz Linux and it runs great in Virtual Box with 512MB of Ram and 64MB of Video. Of course, that's a far cry above an i386. But, it is a full GUI Linux System and is worth a look anyway. You gan get Slitaz at. I still have an old 386 and a 486 that I have been wanting to see running again.

I played around with a couple of Cluster Distros a while back. I found PelicanHPC GNU Linux to be the easiest Cluster Distro to get up and running and it doesn't need anything faster than a P4 to run the front-end node. The compute nodes can be older slower computers, like P1's, 486's and even 386 should work too. This could give your older Computers a Practice use. If you have the need for any Applications that work with Clusters that is. Only certain Applications that Support Cluster Computing can take advantage of a Cluster Setup. I quit playing with them, when I learned this. But that has been a few years ago and I bet there are more Apps that are Cluster Ready by now...
  • The front-end node can be a real computer booted using a CD or a USB device, or a virtual machine that is booted using the CD image file. With this last option, PelicanHPC can be used at the same time as the normal work environment, which may be any of the common operating systems.
  • The compute nodes are normally real computers, for maximum performance, but they can also be virtual.
You can get PelicanHPC and the older version PelicanPC at

I went through my ISO's and found their Web Sites and even Booted some in Virtual Box to refresh my memory today. This was beginning to take several hours. So, I quit trying to make sure that they will run on a real i386 for sure. But, I think that there is a good chance that some of them will. So, here's the links. Even if they wont run on a 386 or 486. You could sure bring new life to your P1's, 2's and 3's!:) SPB-Linux and Tiny Core Linux have very small footprints and will run on 4 to 8MB of Ram. So, I would try them first...


Hackaday - Installing Linux on a 386 laptop Article - Others I think might work
Installing Linux on a 386 laptop - Hack a Day
slitaz linux - Google Search
SliTaz GNU/Linux (en) SliTaz GNU/Linux Put the fun back into computing. Use Linux, BSD.
SliTaz - Downloads
SliTaz GNU/Linux 2.0 - Release Notes
Tiny Core Linux Installation
wiki:start - Tiny Core Linux Wiki
bbc-2.1 - Google Search - (is command line only linux)
Distribution Release: LNX-BBC 2.1 ( News)
Download an LNX-BBC Release ISO
root i386 linux img - Google Search (I have the img file but VBox can't boot it and can't find it now)
spblinux - Google Search
SPB-Linux 2.0
SPB-Linux 2.1 beta
Download SPBLinux 2.1b13 for Linux - SPBLinux is a modular mini distribution that runs completely in RAM. - Softpedia (Boots fast in VBox)
Eforcity 2.5 to 3.5 Laptop IDE Hard Disk HDD Adapter
Index of /debian/dists/Debian-1.3.1/main/disks-i386/1997-10-13
Linux i386 Boot Code HOWTO
Installing Linux on a 386 laptop - Hack a Day
Tiny Core Linux, Micro Core Linux, 10MB Linux GUI Desktop, Live, Frugal, Extendable
TA-Linux - TA-Linux
Download - TA-Linux
Main Page - TA-LinuxWiki
Index of /pub/talinux
Index of /pub/talinux/pkgs-1.0.0-stable/i386/system
talinux i386 - search
PelicanhPC Linux Cluster Distro
pelicanhpc - Google Search
PelicanHPC: A GNU/Linux distribution to create a HPC cluster for MPI based parallel computing PelicanHPC GNU Linux
Distribution Release: PelicanHPC 2.2 ( News)
Setting up a High Performance Cluster with PelicanHPC - YouTube
PelicanHPC v2.4 - Basic Setup - YouTube
PelicanHPC Tutorial
Index of /mcreel/PelicanHPC/download
Debian -- Package Download Selection -- live-helper_1.0.1-1_all.deb
Download PelicanHPC 2.5 for Linux - A Debian-based Linux distribution - Softpedia
PelicanHPC Tutorial
Index of /mcreel/PelicanHPC/download
Debian Live Project
Debian Live Project - live
Debian Live Project Manual
Debian Live - Index of /cdimage/release/current-live
Tomsrtbt Linux Rescue Command Line only
tomsrtbt linux - Google Search
tomsrtbt home page
tomsrtbt - Wikipedia, the free encyclopedia
Download tomsrtbt 2.0.103 for Linux - tomsrtbt is the most GNU/Linux on one floppy disk. - Softpedia Distros for Older Computers labeled i386 Put the fun back into computing. Use Linux, BSD. Legacy OS PapugLinux Puppy Linux Quirky SliTaz GNU/Linux Tiny Core Linux Toutou Linux wattOS

No comments: