Installing Linux On Old PC’s Part 2

In part one I showed you that you could install a linux distro on a new computer and transplant it into a 386 computer in a short amount of time and with little effort. Now it is time to move on to bigger and beefier machines like 486’s, Pentiums and better.

I am going to break this quick tutorial down into sections based on installed RAM. While this won’t be a “how to” for all old PCs in the world I hope to at least send you in the right direction. I will mention a few distributions mainly for the super low ram machines. Its not my intent to start a distrubution war, and I have not personally sat down with every single one to make a educated assessment. However, you’re more than welcome to chime in.

Join us after the break and see what options you have for that old “boat anchor” sitting in the closet!

Less than 16 megs of ram:

This is where my second laptop comes in. It is an old first run Pentium running at 90Mhz with 8 megs of ram. On machines with <16 megs of ram there is not much choice out there.

Much like the 386 install, you can use an older distribution, but you do have a couple of other options. One is DSL linux, which is no longer being supported outside of its community. Another is Deli linux, which is also not supported anymore, but has a fork called DeLicate. Since DeLicate does not have an installer, you need to install DeLicate 8 first and then upgrade through the package manager.

DeLicate and its fork have 2.4 kernels, which is still pretty new for modern applications. It will boot on 4 meg machines and if you fiddle with swap space you can even install it directly on your target hardware.

Since my old laptop does not have a CD ROM drive or a functioning floppy disk I put the hard disk in my desktop computer and booted the installer from a CD. With only 8 megs of ram I can get Xwindows up and running ok, but any activity and the system turns into a swap zombie.

(after about a half an hour here is gnumeric)

netBSD should work with 8 megs of ram, though every time I have tried this, it locks at boot on the target machine.

16 to 32 megs of ram:

Same as above, except you’re going to have a much better time running Xwindows and a windows manager. Again, you can either run an older mainstream distribution that will boot or you can run deli.

The BSD’s of the world should work fine on these machines as well, if you want the newest possible software.

The Heavyweights, 48 megs of ram or more:

If your machine has 48 megs of ram or more you have it pretty easy. Almost all distributions will boot and run without problem from this point on. Which distribution you choose totally depends on the power of your machine. For example, a lightweight ubuntu remix should run well on a Pentium 3, but you might not want to run that on your Pentium MMX.

Some of the standard distributions that I have had good luck with in the past include: Debian, Slackware, Tiny Core, gentoo, puppy and a million more. If you want a distribution that comes off of the cd with modern useful apps already installed, you might want to look at connochaetos or slitaz, which will function well in 80MB or 128MB of ram.

Most distros still allow hard disk installs and network installs if you can not boot from floppy or CD ROM.  In the worst case you just pop your target drive into a more modern machine and install from a cd or usb stick.

I hope this helps your old machines find a second wind. We would love to see them. If you have dusted off an old boat anchor and got linux running on it, please share it with us in the fourms!

Thanks for reading and happy retro computing.

44 thoughts on “Installing Linux On Old PC’s Part 2

  1. I actually just did this a few weeks ago. Got DSL working on a 1998 pentium 2 233mhz with 32 megs of ram. It originally ran windows 95b, which means it had fat32 support for drives larger than 2gb, which made it odd that it had a 2gb partition and an empty but fat32 formatted 1gb partition. Oh well, now that partition lets me dual boot DSL and win95b. I can now use usb flash drives to exchange files. Just turned my beloved boat anchor into a surprisingly functional machine

    1. Its really down to the limitation of the BIOS being able to address the harddisk past the 2gb limit with int13 bios call. Win9x used bios calls to access the drives without drivers so the limit was always there unless you partitioned the drive and/or loaded drivers as a patch.

      In saying that, I did have for several years a 386xs 16mb RAM running slackware as a NAS box. The bios limit was 512mb CHS but I would boot from a floppy with lilo and that’d allow me to bypass the BIOS and address and boot the 20GB drive I had installed there.

      1. I assumed the BIOS was set for that, as it came out in 1998 and had early USB support. That fourteen year old box was the most stable thing ive ever owned. There is only one time it ever had a serious error. It told me that it couldn’t write to the C: drive half way through installing a game. It then promptly did it anyway and no files were missing from the game.

        Sort of on topic: Does anyone have any good resources for a linux newbie like me to learn as much as possible about using the OS?

  2. Why not compile a Linux OS to the machine? I mean, there is LFS(Linux From Scratch) which could be teach the basic details on the implementing, right? Wouldn’t it be a matter of getting older versions and/or embedded alternatives to programs/libs which are used…
    Or even Gentoo Embedded cross compiled to i386? I admit I don’t know much about Gentoo or build-from-scratch, but it seems to be something to be given a try.

    1. Yes! Gentoo is perfect for the job.

      # Step 1 – Emerge crossdev
      emerge crossdev

      # Step 2 – Create a 486 cross compiler
      crossdev -t i486-pc-linux-gnu

      # Step 3 – Cross compile your packages!
      i486-pc-linux-gnu-emerge busybox

      Then just copy the relevant files to your new computer, copy the cross compiled kernel, setup the init scripts, tune in remaining details (root password, etc..) and you will have a bootable system :)

  3. My router is still a Pentium 133 box with 32MB memory running a 2.4 kernel. It has been for more than ten years now, and is still secure as hell. I should get around to replacing it as it’s probably not very power efficient. It is silent however, since it’s still passively cooled. Current uptime is 518 days :)

    1. I’ve got a backup server where I currently work that have this configuration. Since we want a new one we´ve made a overclock on everything that we could, but it is running really stable for our surprise, and since we installed RedHat 7.1 and 64MB it runs quite smoothly.

  4. Hey bty, was curious on how that Pentium 133 router is physically set up…do you have a number of NIC’s installed? How many other systems do you have connected to that “router” of your.


    1. Indeed, two old ISA cards if I’m not mistaken. There’s about 10 systems connected to the LAN. It has no problem at all doing 10Mbit internet. Some p2p apps that set up 100’s of connections might bog it down a bit sometimes though.

      It used to run a lamp environment, but those services are disabled since the packages are not current anymore, and pose a threat.

      Log files do indicate several dozen ssh login attempts per month from the usual culprits.

  5. I set up Gentoo on an old Dell laptop from (I think) 1997 or 1998 with a Pentium, just to see if I could do it, how long it would take and how fast it would get things done. It worked great and I could keep it running for hundreds of days on end. I used it as a NAS for a long time until the hard disk died and I decided to replace it with a “real” NAS so I could use a larger capacity hard disk.

    Using Gentoo is an interesting experience (slightly more interesting and less tedious if you set up distcc to make it do all it compilations remotely on a much faster machine) but if you just want to make the computer useful I recommend an easier distro like FreeNAS.

    Interestingly, I was able to expand the memory of that old laptop to the maximum by buying some EDO SODIMM sticks online, they were more expensive than a couple of gigabytes of DDR2 or DDR3 memory but at least they were available and that system is tricked out to the max: 48MB total :-)


      1. Wait, what? only two days!?!?! Dammit, I tried to install it in a sempron 1.8GHz and took me like a 16 to get a simple Openbox machine with firefox. I would bet a 3-4 days at least to compile everything in this machine.

  6. I had ubuntu 8.4 in my old toshiba satellite S710 which have Pentium celeron 600Mhz and 192 megs RAM, luxury :)
    I can’t use it anymore because i don’t have working 2.5″ HDD. But probably i by CF to IDE adapter and install some lighter linux on it.

    New ubuntus are so bloated that even my 2Ghz 2GB server can’t run them flawlessly. I’m stuck with 9.10, which run’s quickly and all features are working… I also have it in my better laptop, 2.1Ghz celeron + 1GB mem and i use it everyday at school.

    But back to topic, old laptops aren’t useless.
    You can make a weather station which receiver satellite-image and logs temperatures etc. like i have.
    Or, they probably can act as old, ugly picture frame with slow and blotchy display x)
    or something…

  7. Melting sun
    I found my grandpaps old IBM Thinkpad 600 laptop
    that was geting dusted .Running Win95 it’s not my
    favorite so I thought to give it a try with some other OS. Why is that? I couldn’t stand see it
    dumbed then the usb issue plus some hardware
    malfunction such as broken joy-pad button and a
    row of buttons that wouldn’t co-operate.
    After some linux distro checking I finally picked up
    Crunchbang/ #! ..fitted like a glove in its 4Gb HD and now.. boots up like really fast, i can use usb
    sticks, i bypassed the broken keyboard circuit with
    an external one ,and the most important of all
    I can load a playlist while I’m out cooking
    steaks on the barbie

      1. melting sun
        That’s ok with my book/xp/ and no need for asking apologize. The point is that the challenge here is
        to make an old machine run as you never had see it before. Comparing those two os(es) win ‘n lin for me is out of spec. I feel like my old fellow breathed another life

  8. This is great for real hackers as ebay is FULL of old industrial PC104 computers. Using an old useless 386 pc104 card computer will work as a robot is far more epic than any ardunio bot made.

    W00T for da OldSk00l Hax0rz Y0!

  9. Old slackware has disk sets that you can load from floppy, but you will have to make the disks. Debian also has cd’s you can download for older versions. Tinycore should work at least i486, I think. I am running ubuntu 10.04 on a p2 server. I run debian on my other p2 boxes. Wattos, ConnochaetOS (formerly deli linux) and one other escapes me. I have heard of people running arch on old boxes, but you might have to wait a month for everything to compile.

  10. Old systems can still do many jobs, but for new designs they are bad.
    386DX 33MHz gives about 11.4 MIPS.
    486DX 66MHz gives about 54 MIPS.
    PIC32 80MHz gives up to 120 MIPS, now have RetroBSD Unix port and consumes 0.5 Watts (passive cooling).

  11. I can’t wait until they move onto part 3 with those ancient Core2Duo computers ;-)

    I think somewhere I have a copy of Minix on CD, installing that on a crusty old machine could be entertaining.

  12. Puppy Linux 4.3 or earlier and Puplite 5.0 will run extremely well in older P3 machine. If you’ve got a 600mhz or faster machine with 512mb or more, they feel like a low end machine from about 2005-2006.

  13. First tip:
    Get the smart bootloader (btmgr) for machines that do not have a cd-rom or do not support booting from one. btmgr also enables usb or network boot.

    For the more advanced user. Setup PXE/TFTP on a server system (or another 486) and boot your target system install over the the network.

    Debian has the “debootstrap” command. This command creates a minimal install debian in a target directory. using chroot you can change to this directory, install the apps you want need. The full directory tree can be copied to the root of the target machine.
    I’ve got a Compaq 486 LTE running a fairly recent 2.6 kernel this way. Just obtained a parallel port network adapter last week.

    The truly old systems may have troubles recognizing “bigger” harddisks. The Compaq for instance does not have user definable HD parms. The workaround for this problem is trying the available types. All the BIOS has to do is read the bootloader (grub). Grub and the linux kernel can work around the BIOS limitations. My Compaq does not support drives larger than 540Mb (or something like that) yet it’s booting and running smoothly from a 4Gig drive.

  14. After doing this for years I finally ended up with a second machine that’s fairly recent and decided to see what Linux can really do.

    As for those old boxes, I installed Windows 3.1 and OS2/Warp. What memories! (Mine that is, not the machines).

    1. Linux for mac’s require a MMU, anything with a 68020 or better will run 68k linux (and there a couple out there).

      That machine however is a MacSE … its got a 68000cpu in it, so no memory management unit so no linux on it =)

  15. A few years ago I installed FreeBSD 6 (then current) on a box with a P166 MMX, 128MB (60nS 72-pin SIMMs), and 2MB PCI-based integrated video. The chipset is a Intel 430VX, if I recall. I went with FreeBSD because it was usable while Linux was not. The integrated IDE controller was totally dead so I was using a Promise Ultra66 card. Maybe now it can, but at least then Linux could not boot from a Ultra66 while FreeBSD could. I was going to nix installing X, but I was told on a newsgroup to do it anyway — and I did. I used icewm in X.

    Almost everything on that box moved at glacial speed. Updating the system sometimes took 3-4 days if I had to recompile a major package with a ton of dependencies which themselves have tons of dependencies. NAS and streaming .mp3 were about the only useful things possible. I took the box out of service after a little more than a year.

  16. This is funny… About a year ago (January 2010?) I got around to playing with this Toshiba T4800CT I came into ownership of. had DSL installed on the original 500MB drive it wielded as its brains, which died for some reason… after a BIOS update, I was able to get a 1.4GB Toshiba drive recognized I had laying around at the time. Currently, the laptop runs Debian Sarge on a DX4-75 and 24MB of RAM. it’s not the best, but it gets the job done… it’s an IRCd linked to a small network, has a website up with Lighttpd and PHP5 via FastCGI (although a somewhat stripped version), and just a general farting around machine. no X stuff, and the limited space on it allows me to better organize by priority what files I keep on the box itself. is the address.

  17. I have an old K-6 II system that I installed Debian Sarge on (the newer installers won’t boot). I then slowly upgraded up the chain (changing my /etc/apt/sources.list and adding keys every time) all the way to Wheezy. I also built a 3.10.x kernel on it (it took ~2-3days ). Sadly, it is only running at half-speed (the motherboard complains about some power-supply problem): 133MHz instead of 266MHz. It also has 192MB of RAM (all pre-DDR DIMMS are inter-operable and I had plenty of PC-100 and PC-133’s around).

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.