old-www/LDP/LG/issue37/tag/33.html

255 lines
9.3 KiB
HTML

<!--startcut ======================================================= -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<META NAME="generator" CONTENT="lgazmail v1.1H.i">
<TITLE>The Answer Guy 37: Low Memory Installation</TITLE>
</HEAD><BODY BGCOLOR="#FFFFFF" TEXT="#000000"
LINK="#3366FF" VLINK="#A000A0">
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<H4>"The Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<center>
<H1><A NAME="answer">
<img src="../../gx/dennis/qbubble.gif" alt="(?)"
border="0" align="middle">
<font color="#B03060">The Answer Guy</font>
<img src="../../gx/dennis/bbubble.gif" alt="(!)"
border="0" align="middle">
</A></H1>
<BR>
<H4>By James T. Dennis,
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
Starshine Technical Services,
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A>
</H4>
</center>
<p><hr><p>
<!-- endcut ======================================================= -->
<!-- begin 33 -->
<H3 align="left"><img src="../../gx/dennis/qbubble.gif"
height="50" width="60" alt="(?) " border="0"
>Low Memory Installation</H3>
<p><strong>From Martin Skj\vldebrand on Sun, 17 Jan 1999
</strong></p>
<!-- ::
Low Memory Installation
~~~~~~~~~~~~~~~~~~~~~~~
:: -->
<P><STRONG>
Hi,
</STRONG></P>
<P><STRONG>
I'm trying to install <A HREF="http://www.debian.org/">Debian</A> from floppies on my spare lap-top.
</STRONG></P>
<P><STRONG>
It's an old machine, an Compaq Contura 486/ 25 with 4 MB RAM and 80 MB
HDD.
</STRONG></P>
<P><STRONG>
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.
</STRONG></P>
<P><STRONG>
The latest being 'bash fork: Cannot allocate memory'
when trying to do anything on the machine.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
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.
</BLOCKQUOTE>
<BLOCKQUOTE>
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.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
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.
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
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 <EM>add</EM> to the partition.
</BLOCKQUOTE>
<BLOCKQUOTE>
Try invoking the mkswap command (which should be somewhere
in your startup files) with the -c option (to check for
bad blocks).
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
Any ideas? Is it possible to run Debian on a 4 MB RAM machine?
</STRONG></P>
<BLOCKQUOTE><IMG SRC="../../gx/dennis/bbub.gif" ALT="(!)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
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.
</BLOCKQUOTE>
<BLOCKQUOTE>
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.
</BLOCKQUOTE>
<BLOCKQUOTE>
(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":
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote>
(Now known as metalab.unc.edu): we have
</BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
<A HREF="http://metalab.unc.edu/pub/Linux/distributions"
>http://metalab.unc.edu/pub/Linux/distributions</A>
</BLOCKQUOTE>
<BLOCKQUOTE>
... which lists:
</BLOCKQUOTE>
<BLOCKQUOTE><BlockQuote><code>
smalllinux-0.4.0.src.tar.gz
</code></BlockQuote></BLOCKQUOTE>
<BLOCKQUOTE>
... 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.
</BLOCKQUOTE>
<BLOCKQUOTE>
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).
</BLOCKQUOTE>
<BLOCKQUOTE>
Anyway, good luck. Check out for-sale news groups
to see if you can find a good deal on used Contura
memory modules.
</BLOCKQUOTE>
<P><STRONG><IMG SRC="../../gx/dennis/qbub.gif" ALT="(?)"
HEIGHT="28" WIDTH="50" BORDER="0"
>
M.
</STRONG></P>
<!-- sig -->
<!-- end 33 -->
<!--startcut ======================================================= -->
<P> <hr> <P>
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
>Copyright &copy;</a> 1999, James T. Dennis
<BR>Published in <I>The Linux Gazette</I> Issue 37 February 1999</H5>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<P align="center">
<table width="98%"><tr valign="center" align="center">
<td rowspan="3" colspan="4"><A HREF="../lg_answer37.html"><IMG
SRC="../../gx/dennis/answernew.gif"
ALT="[ Answer Guy Index ]"></A></td>
<TD width="8%"><A HREF="./1.html">1</A></TD>
<TD width="8%"><A HREF="./2.html">2</A></TD>
<TD width="8%"><A HREF="./3.html">3</A></TD>
<TD width="8%"><A HREF="./4.html">4</A></TD>
<TD width="8%"><A HREF="./5.html">5</A></TD>
<TD width="8%"><A HREF="./6.html">6</A></TD>
<TD width="8%"><A HREF="./7.html">7</A></TD>
<TD width="8%"><A HREF="./8.html">8</A></TD>
<TD width="8%"><A HREF="./9.html">9</A></TD>
<TD width="8%"><A HREF="./10.html">10</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./11.html">11</A></TD>
<TD><A HREF="./12.html">12</A></TD>
<TD><A HREF="./14.html">14</A></TD>
<TD><A HREF="./15.html">15</A></TD>
<TD><A HREF="./16.html">16</A></TD>
<TD><A HREF="./17.html">17</A></TD>
<TD><A HREF="./18.html">18</A></TD>
<TD><A HREF="./19.html">19</A></TD>
<TD><A HREF="./21.html">21</A></TD>
<TD><A HREF="./22.html">22</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./23.html">23</A></TD>
<TD><A HREF="./28.html">28</A></TD>
<TD><A HREF="./29.html">29</A></TD>
<TD><A HREF="./30.html">30</A></TD>
<TD><A HREF="./31.html">31</A></TD>
<TD><A HREF="./32.html">32</A></TD>
<TD><A HREF="./33.html">33</A></TD>
<TD><A HREF="./34.html">34</A></TD>
<TD><A HREF="./37.html">37</A></TD>
<TD><A HREF="./38.html">38</A></TD>
</tr><tr valign="center" align="center">
<TD><A HREF="./39.html">39</A></TD>
<TD><A HREF="./41.html">41</A></TD>
<TD><A HREF="./42.html">42</A></TD>
<TD><A HREF="./43.html">43</A></TD>
<TD><A HREF="./44.html">44</A></TD>
<TD><A HREF="./45.html">45</A></TD>
<TD><A HREF="./46.html">46</A></TD>
<TD><A HREF="./47.html">47</A></TD>
<TD><A HREF="./48.html">48</A></TD>
<TD><A HREF="./49.html">49</A></TD>
</tr></table>
</P>
<P> <hr> <P>
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<P> <hr> <P>
<!-- begin lgnav ::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<A HREF="../index.html"
><IMG SRC="../../gx/indexnew.gif" ALT="[ Table Of Contents ]"></A>
<A HREF="../../index.html"
><IMG SRC="../../gx/homenew.gif" ALT="[ Front Page ]"></A>
<A HREF="../lg_bytes37.html"
><IMG SRC="../../gx/back2.gif" ALT="[ Previous Section ]"></A>
<A HREF="../york.html"
><IMG SRC="../../gx/fwd.gif" ALT="[ Next Section ]"></A>
<!-- end lgnav ::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
<!-- ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: -->
</BODY></HTML>
<!--endcut ========================================================= -->