K.Mandla's blog of Linux experiences

Five distros for “slow” machines

One or two of the five distros I mentioned yesterday had been labeled as “lightweight” either by their designers or the community around them, and I was probably pushing that definition just a little bit when I gave them the chance to run at 150Mhz on 32Mb of memory.

I knew full well that some of them just couldn’t compete there, but it wasn’t spite or a sense of self-denigration that made me try them all; I genuinely wanted to see if they could at least support — if not handle — a machine as old as 1997. The benefit of the doubt, so to speak.

And if they couldn’t, it wasn’t a reflection on the distro necessarily. I would only be disappointed if a distro advertised itself as a solution for an older machine, but clearly wasn’t. And even then, I take into account that my definition of “old” is very different from some.

Let’s hear the bad news first.

You’ll laugh, but I tried an alternate install CD of Ubuntu 10.04, and got as far as the disc menu and was able to start the installer. Shortly afterward I got a lovely kernel panic though and the machine locked. But the computer seemed to be happy for as long as it was hovering at the boot menu.🙄

A little more disappointing was FreeNAS‘s analogy to the Ubuntu stunt: It failed to boot with a message, “cbb2: Cannot allocate I/O; RTC BIOS diagnostic error 20(config_unit)”. I take that to mean it ran out of memory, but that doesn’t necessarily have to be the case.

Deli Linux also failed to boot; for some reason this time the CD was invisible to the system. I tried it in another machine and there was no problem at all, and I also double-checked my ISO file, but for some reason the Mebius wasn’t booting from the Deli Linux disc. Curiouser and curiouser. …

Puppy Linux in its vanilla flavor struggled to boot, finding its way to a graphical desktop once out of three attempts, but only then giving me a plain arrow pointer against a black background, and locking up at that point. Again I suspect this was a low-memory issue, since until then all the prompts and menus worked fine. As soon as it reached the graphical desktop though, everything went pear-shaped.

A couple of others landed somewhere in the middle of the fray, between successful and not so successful.

ttylinux, which I want very much to adopt on some older machines, boots fine and behaves much in the way I expect for the i486 version. Unfortunately, it lacks network support for just everything I can use in the Mebius, which means I would have to rebuild the kernel and remaster the ISO and then maybe get it working. To be honest, any time I work with a distro and find myself moving toward kernel-level adjustments, I feel I can do just as well by going back to Crux, which I am more familiar with. But just to be clear, ttylinux worked fine but would have required even more effort to work great.

As for Tiny Core and its redheaded stepchild Micro Core, both would boot but Tiny Core still can’t give me a graphical desktop. Both do well with my network card though, so they should both be good starting points for console systems. Of course, Tiny Core without a GUI is really just Micro Core, so maybe I should say it should be a good starting point for a console system. Again, just to be clear, I think the failing is not with Tiny Core, but with the esoteric video card in this computer.

Just to be wacky, I tried running (console-only) Slitaz from floppy disks, and it worked great. I reached a command prompt and had a proper network and could install the system to the hard drive. For some reason that system wouldn’t boot though, but that’s probably my fault since I had been tweaking and fiddling with the system before I tried to transfer it to the host disk.

At this point you’re probably thinking anything running slower than 200Mhz is doomed to run pocket floppy-based Linux distros or console-only systems built up from something else. But in fact there was one big winner in this little adventure.

Wouldn’t you know it, when all hope of a full-blown graphical system is lost, Debian comes crashing through to save the day. That’s Lenny installed off the netinst image, and running IceWM and Xfe and so forth, in attempt to make you think it’s a Windows system. I do that sometimes.

The funny thing is, I couldn’t be happier or more surprised at this. An X desktop can run with less than 6Mb of swap space used, but too many things running at once becomes a little stuttery. Network access seems to be fine though, although I strictly avoid any browser at all, and don’t expect I would use it for surfing anyway.

The i486 Debian packages are clean and swift, even if aptitude itself runs slow as molasses at 150Mhz on a 4200rpm hard drive. Everything fits snugly in a single partition on a 2Gb drive, with only about 192Mb set aside for swap.

And while it’s only marginally functional, it definitely functions. I should mention that I did have to tear out the trident driver for X before this would work; the older software that Debian is using here requires hal (blech) and the driver just doesn’t work with this video card.

But there you have it: Debian comes out the winner in this round. I will have to try bumping the machine up to testing, but that might take more time, effort and drive space than I can really afford, just to get a newer version of rtorrent than 0.7.9.🙄

Some notes for the future: I plan to hunt down a proper lightweight or console-driven Puppy, spend a little more time in Micro Core and see if it is a good idea for a console-based system, and possibly try building images for a few other distros in Qemu before dd‘ing them to the drive via USB. Such a luxury, having a USB port on a Pentium machine. …

Interested to hear what you meant by tear out the trident driver. I have an old Toshiba Portege (500Mb PIII 192MB RAM) circa 1999 which just does not work with the more modern Debian based distros and X due to the Trident chipset. I’d love to know what the config was for X in that setup. SliTaz works great but I’d like to get access to the Debian packages

See if this works for you, Ross: Install the xorg package with just aptitude install -y xorg, and when that finishes, pull out the trident driver with aptitude remove --purge xserver-xorg-video-trident. Something like xserver-xorg-video-all will all be removed, but that’s okay, say goodbye, dry a tear and then startx to see if it worked on your end too. For the record, this is a Trident GUI9660XGi/968x/938x, BIOS version erZ6.1 with 1664Kb DRAM. Cross your fingers. …

It took me a while to work it all out but the standard X vesa driver wasn’t going to cut the mustard. Happily tho I’ve now confirmed a working setup that uses the tridentfb kernel driver and fbdev for X. Ok it’s not accelerated on the little Toshiba but I’m happy that I can now get all the modern debian/buntu’s to work😀. Install from a Lucid minimal CD and with LXDE or Awesome I can get to a very functional X WM in about 60Mb. Tis my “Netbook” with a 13″ screen, a great little machine to have sitting on the coffee table to pop open for quick access to the net.

Hey, good article!
I just wanted to point out you don’t necessarily need to burn isos to CDs. You could try burning Plop bootmanager to a CD and booting distros off a usb drive. I use that method whenever I have to boot linux onto an older computer which doesn’t support usb booting.

Thanks, ordinarily I would use PLoP, but unfortunately it isn’t able to find the USB ports. I’ve tried both the CD- and floppy-based versions, and neither one will power the USB port. A shame really, but with a working CDROM, I am still happy.

A good point, but for at least two of those I know there was already a swap partition in place … I just can’t remember which ones.😳 If I get the chance, I’ll try again, and make a note if there’s a difference.

I found that instead of installing xorg through “aptitude install -y xorg”, and instead chose a video driver (through the aptitude interface I chose vesa), it automatically pulls everything in that is required – including all the other video drivers, keyboard drivers, etc, BUT it leaves out hal. (it pulls in a library reference to hal, but that’s it.)

And yes, it works wonderfully. X running in 27mb of ram? Yes, thank you, I’ll take that!

Any chance you can elaborate a bit on how 2.14x differs from stock Puppy Linux? The lack of a proper package manager with a decent repository spawns so many derivates that you easily loose track when you are away from the forums for a couple of weeks. I even posted in tuuxxxes megathread once, asking this very question, but it somehow got lost in oblivion. Thanks for bothering,

Hi Zen,
I wish i had enough knowledge to elaborate for you but im still learning.
It was purely buy luck I discovered it from this threadhttp://www.murga-linux.com/puppy/viewtopic.php?t=57810
someone responded to. I have only been using for a few days now still playing with it but i think if you contact “looseSCREWorTWO” on the puppy forums he is a stand up guy who might be able give you a proper answer.
And im only on like page 150/247 ish reading tuxxxes mega thread
And its Kmandla’s fault i have a new obsession-lol-that being playing with older hardware.I have a lot to learn yet but on the puppy forums they are very helpful and polite compared to some of the forums Ive seen.
I know your handle from somewhere zenfunk cant remember where Ive seen it however.
Best Regards,
Mrreality

Debian is awesome eh😉 ? I have it installed on an old toshiba laptop @ 500MHz and while it’s a bit sluggish compared to this 1.6GHz AMD, it still runs quite well. If you have a apt.conf file setup properly it will drop all ‘recommends’ packages and it keeps things very light.

Well your seo thing is failing you, most of the distros that kmandla had for the faster machines even are a lot faster than that combo, but well, there is always time to learn…

I’m going to set up a system with mostly just commandline and maybe a web browser with a bit extra capabilities to be able to do some net-banking, is anyone familiar with how hard/easy it is to get xvesa going in arch? From my experiences with puppy it’s quite a bit leaner than what xorg is.

Yes true, kmandla’s builds are lean and mean I admit (and admire) but at least mine came in at well under 50% memory usage than those off the shelf LXDE distro’s I tested and the build is fairly straight forward to get going.

If I wanted a lean mean build I would have used a bare install of FreeBSD and used the tty terminals, who needs a gui – just ctrl+alt+f*🙂

you don’t even have to be as radical as going terminal only, lxde is still a fairly heavy load on the system, with arch and musca I was using around 30 Mb of memory at startup, And on my running system now I use 85 Mb but that is with opera running with 10 tabs, sakura open with two tabs and bashpodder running, I think the tty is swell for most things, and I do desire to run for a while on a console only basis, but now, I have to have skype to be able to communicate with my family back home, (going home from japan after a year here tomorrow :D) but when I’m over that hurdle it shouldn’t be a big problem really, and I can ditch ratpoison and musca for a while. I have problems pushing the cpu load over 5% without flash though, even playing videos with mplayer makes almost no difference.

And I start to wonder a bit, I was over to your site to check it out, and that is a very vanilla system, with few if any libraries installed, I wonder how much juice it’s sucking after a couple of months of use, ubuntu is a fairly overweight base, so I think that you could get it a lot leaner just running on debian or arch, or even puppy, afaicr slitaz is running very lightly on lxde, hmm, maybe I’m wrong now..

Just a note on your above reply, the LXDE desktop is taking 54MB at idle. If I boot into Openbox that reduces to 38MB at idle and that could be reduced even further if I didn’t employ network-manager-gnome to manage the wired/wireless interfaces on this computer – a further reduction of approx 9MB. So this build could easily fit under 30MB at idle – not too shabby for a Ubuntu system eh🙂

Sure, Debian or Arch may reduce it a little further. Had a box with Arch/Openbox but I don’t think it was a lean as my Ubuntu build – I may try it again on that Ubuntu box to confirm.

How do you manage not to get a leaner build with arch? Did you install the same software on both of them? I went from a minimalist ubuntu install over to arch, and it can’t even be compared.
But well, I won’t say that it’s not impressive, I just would think that you would get a cleaner build since ubuntu tend to spread configuration around and running suboptimal builds, and an easier to organize build that would also be leaner with an arch or debian system, and LXDE. I don’t really like DE’s that much, give me a commandline and a manual tiling manager and I’m happy, but again that’s my personal choice,

Would be very interested to know more about how you got the Debian installation to work in 32 MB. I’ve tried several distribution and a lot won’t boot in 64 MB. How about a post or more information on installing Lenny with netinst? Can it be done with slow Internet access or a machine where you can’t get the modem drivers and need to sneaker-net instead?

Would also be curious to know if one of the BSDs would work on the 32 MB machine and if so, what you think of response time compared to Debian. Am running FreeBSD on my 64 MB machine and it seems less sluggish than any of the Linux distributions I was able to get to run, especially on X and video applications.

Hi LM. What you see there is a Pentium machine that boots from CDROM to 32Mb of memory, and the Debian 5 net installation CD will run in a low memory mode at those specifications. Low memory mode requires you to pick the modules you need to get the machine online, which in my case was only the nic-pcmcia package, plus the dependencies it chose (which interestingly includes nic-wireless, if I remember right). After that, it behaves in much the same way as any other Debian-based install.

I don’t have a lot of experience with the BSDs, but for what I’ve seen I would expect them to be even faster. FreeBSD is one of the distros I have jotted down as a test for this machine, although the failure of FreeNAS to get started with this is a little disappointing.😦

Thanks for the info on installation. Guess if I wanted to try this on my system, I’d have to check if there was support for ppp on the Debian net install CD and see how long it would take to get some basic applications installed that way.

I tried Frenzy on one of my machines and it only got so far (brought up a desktop) and then couldn’t get any further. Then again, I seem to find a lot of Linux distributions that are doing that as well. I guess I have non-standard hardware like a touchpad instead of a mouse and a lot of hot-swappable hard drives in my desktop. I have been able to install FreeBSD 7.2 to my laptop (64 MB RAM) with no issues. It just took me a while to figure out a working xorg.conf. I tried PC-BSD on my desktop and it was one of the few Open Source options I’ve tried that seems to have installed okay (out of several that didn’t). PC-BSD needs a lot more resources than FreeBSD, although I noticed an alternative to just install FreeBSD on the disk.

I like the speed of the FreeBSD system, but I’m having issues with hardware compatibility for things like printers, hardware for audio work (midi, USB/Firewire audio, etc.) and my TV tuners. Guess one can’t have everything. I’m still trying to find just the right distribution for my desktop machine that will combine needed hardware support with speed.

I recently had to find a distro that worked on some old network appliances that had a 512mb flash drive and 64mb RAM. The company that made the Linux-based OS went out of business, and this in turn made the appliances useless (as part of a paywall/security feature, it “checked in home base” when it rebooted and hung when it got no answer). Also, there was no VGA output: only serial (or NIC).

I also found straight Debian worked. MY problem was always making something fit the 512mb disk space. Many distros were too bloated and some would only NEED 400mb when done, but take 600 during the install with all the temp files. I ended up using VirtualBox 3.0 to simulate 512mb space with 64mb RAM.

I had to make a special pre-seed file and have a PXE server, but I got the entire OS down to 330mb.

I just put together a system using a new spin of an existing distribution, antiX. Their new spin is called antiX-core, and it initially runs live, and all it does is allow you to run a cli-installer, which places command line utilities and very little else on your system. Along the lines of the original comments, it is Debian based.

Once installed on disk, you login as root, run apt-get update to synchronize the package cache on your system, then you install what you want. You can leave it as a command line only system for servers if you want, or you can install lightweight (or heavy weight) applications from the expansive Debian repository, whatever you want. At the present time, antiX-core is my fastest booting and fastest running system out of the dozen or so I have installed on two laptop systems.

That looks interesting, it’s more or less like an a bit preconfigured debian then in a way, to make it a bit easier to get started. But I would think still that building from clean debian would be even faster right? But I would think that antix does a lot, I’ve tried the full distro, and I like it a lot, It just didn’t find my isp.

I have set up Debian distributions using netinst in the past, and they are certainly pretty flexible too. As far as Debian being even faster, I don’t see how. antiX-core IS Debian based, with very little different, whereas antiX full has been, at least from 2006 until now, more of a MEPIS based system – MEPIS kernel and MEPIS tools, with a lighter environment, replacing KDE and the full featured desktop applications with lighter replacements.

The antiX core starts as a Live CD, and all it offers once you start it up is to run a cli-installer script. Based on which “cheat codes” you leave on the command line, you get a light or a VERY light base from which to start. If you leave the “nohal” cheat code on the boot line of the Live CD, you don’t even get networking (which I definitely DON’T recommend.

It is a work in progress at this stage, but once anticapitalista explained to me what the “cheat codes” did, I removed them, ran the cli-installer, rebooted what the cli-installer copied to my selected disk partition, logged in as root, and then ran apt-get update. Once I did that, I tried adding just a few things. By default, you don’t even have an X server, so that’s pretty minimal – you can run all console based apps if that’s what you want. You can set it up to be a really light server, or you can install a light graphical environment, or you can install as few or as many Debian Testing applications as you want. What you end up with is a completely tailored environment with Debian packages. The only antiX stuff you get are the kernel – and you can replace that with a Liquorix kernel or a Debian kernel, and you get a few antiX tools for packaging and remastering your creation; that’s it.

No reason it couldn’t be configured to work with any ISP. The core, unlike the full and base versions, does not come equipped with any wireless tools or drivers. You’d have to wire up first and install those tools, should you need them.

Clearly antiX core is not created for general purpose users. It is created for people who want to make their own creation and are willing to put some research, time, and effort into it. The antiX full distribution is more of a ready to go distribution, and the antiX base distribution is a custom distribution that still gives you a simple graphical environment to start with. Putting the three choices in perspective, you have three ways to create a light, fast, flexible environment, each of which is easily tailored to meet specific needs. It is definitely one of my favorites, as you can tell from my description.

That looks really interesting, I was thinking that it was more a stripped down antix, that looks really interesting then🙂

About my network here, that won’t be an issue now. since I’m moving tomorrow, but to date only puppy linux managed to receive a dhcp connection to my wired connection, both wicd and network-manager turned out negative, that’s sad because that made me not able to run my very personalized arch install anymore.

So from what I figure it’s more or less like a fresh install of arch, just with apt instead of pacman, different configuration, and built for easy remastering? sounds pretty cool🙂

Do you have anything you would say makes it better than arch or debian vanilla, I mean personally, this whole thing is pretty subjective so🙂 I’m just curious🙂

Thanks, djerome. PCMCIA support for i586s would be a huge bonus. Some of the modules for more commonplace networking cards would be a giant help too (like pcnet-cs or the ne2000-series cards, which are more common than dirt).

You should be the judge though, since it’s up to you to do the dirty work. If it seems worthwhile, I for one would be grateful.🙂