"The Linux Gazette...making Linux just a little more fun!"

(?) The Answer Guy (!)

By James T. Dennis, tag@lists.linuxgazette.net
Starshine Technical Services, http://www.starshine.org/

(?) Low Memory Installation

From Martin Skj\vldebrand on Sun, 17 Jan 1999


I'm trying to install Debian from floppies on my spare lap-top.

It's an old machine, an Compaq Contura 486/ 25 with 4 MB RAM and 80 MB HDD.

The installation goes well (mostly - it complains that the swap space cannot be initialized but it still is used, swapon during startup later on goes well). But after rebooting I get various memory errors.

The latest being 'bash fork: Cannot allocate memory' when trying to do anything on the machine.

(!) This sounds more like there is a disk error (bad block or some such) that's somewhere in the area where you're trying to create your swap partition.
That would explain both the initialization failure (which I presume is an error message from the installation script's 'mkswap' routine) and the bash errors.

(?) I've read and re-read the floppy install on low-memory systems. I've expanded the swap space to about 20 MB (should be enough) but it still complains about the memory problem.

(!) If the error is near the beginning of the swap file/partition --- then you'll keep getting it now matter how much disk space you add to the partition.
Try invoking the mkswap command (which should be somewhere in your startup files) with the -c option (to check for bad blocks).

(?) Any ideas? Is it possible to run Debian on a 4 MB RAM machine?

(!) I don't know. That's cutting it pretty thin. I certainly wouldn't use 'bash' on a 4Mb system --- 'bash' is hardly a lightweight shell. Try 'ash' --- which is a simpler and smaller shell that's designed for use on rescue floppies, etc.
You'll certainly want to compile a custom trimmed kernel (on another system) for use in such a constrained setting. I wouldn't think that the Contura's were so old that you can't find additional memory for them. Bumping that up to 8 or 16 Mb will make a huge difference in what you can do with that laptop. Otherwise I'd really just use it with a few DOS programs (there are DOS versions many Unix utilities). The biggest disadvantage of DOS is that you don't get any TCP/IP networking (or when you load up a TCP/IP stack --- and a few drivers for mice, CD drives etc. it eats up so much "conventional" --- MS-DOS "special" memory that you can't run anything that you care about). If you really prefer a Unix-like environment you might find a copy of Minix --- which can run on PC/XTs and can certainly fit on a Compaq.
(Of course, a Linux kernel with TCP/IP networking and all other extraneous bits removed can boot in a little over 1Mb. This wouldn't be any normal distribution --- you'd want to use one of the micro distributions that's tailored specifically for low memory machines. For example on the "major-linux-archive-formerly-known-as-sunsite":
(Now known as metalab.unc.edu): we have
... which lists:
... as one of its holdings. That's a 1.2.11 kernel with patches to support ELF binaries. There was also a 1.09 based kernel with similar patches that was called "Linux-Lite" or something like that. These are likely to be better suited to use on a laptop with less than 8Mb.
In alot of cases it depends on what you're planning on running. For example for some sorts of routers you'd want to use a newer kernel --- since it only has to run the kernel, the shell script to set up your routes and packet filtering rules and maybe a copy of syslogd (if you want to remotely log some sorts of traffic). For that you'd want a more recent kernel with a better TCP/IP stack and preferably with the more powerful IPChains packet filtering features (standard for the upcoming 2.2 kernel, available as patches to 2.0).
Anyway, good luck. Check out for-sale news groups to see if you can find a good deal on used Contura memory modules.

(?) M.

Copyright © 1999, James T. Dennis
Published in The Linux Gazette Issue 37 February 1999

[ Answer Guy Index ] 1 2 3 4 5 6 7 8 9 10
11 12 14 15 16 17 18 19 21 22
23 28 29 30 31 32 33 34 37 38
39 41 42 43 44 45 46 47 48 49

[ Table Of Contents ] [ Front Page ] [ Previous Section ] [ Next Section ]