Install basic Puppy on a computer with 16 Mb RAM
Posted: Mon 26 Oct 2009, 13:56
Executive Summary:
NUTSHELL: INSTALL A BASIC PUPPY ON A USB-CADDIED HARD-DRIVE WITH 256MB SWAP, BEFORE TRANSFERRING THE DRIVE TO THE LAPTOP
Most current and emerging Linux versions require at least 64Mb RAM, or double that for satisfactory operation across a range of higher-end internet, gaming and and office applications. The process of "natural" succession tends to have older and still-functional computer hardware consigned straight to the junk heap, particularly those with a maximum capacity of less than 128Mb. Nonetheless, here I outline a procedure for successfully installing a Puppy 4.12 puplet (Pulp 0.03) on a laptop with 16Mb RAM, for its intended end-of-life role as a simple games computer for primary-school children. No previous experience with Linux is neccessary - I'm not a programmer, but a Windows refugee and end-user with just enough curiosity make trouble for myself.
1. Low RAM computers - General observations
It's important to highlight that the amount of RAM available is not the only factor in getting Puppy running happily on 'vintage' computers. CPU speed and health I won't mention further as defects in this department are often fatal as most CPU's can't be replaced on older motherboards without a soldering iron, and this can signal problems elsewhere on the board. Optical and hard drives can be easily replaced with newer components, and should be seriously considered for automatic replacement because:
a) The original 8x CD-ROM etc. drastically impacts on installation time and general operation. (Refer to the first sentence 'nutshell' in this post, and don't try this route.)
b) The symptoms of a dying CD drive are sometimes not easy to spot, and can 'hang' repeated installation attempts at random points, giving the impression that RAM or other hardware may be at fault. Persistent hangs at the "Booting to kernel..." message when installing Puppy and other versions of Linux is a sure indication that the CD drive needs replacing. (cf. nutshell)
c) The original hard drive (HDD) is likely to be a IDE/ATA/PATA vintage with a spindle speed of 5400 RPM, and possibly lacking DMA transfer rates. Drive speed is important - particularly when you require a sizeable linux-swap partition (256MB recommended - but see healthy debate regarding swap-partition size on the forum) to complement the low RAM. Exchanging the original with a faster ATA drive (i.e., 7200 RPM) will markedly improve installation and general operation speeds. Running noise is also reduced. Better still, replacing the old-style drive with a solid-state drive, that is, CF or SD cards in an internal IDE-adaptor will improve running speed, temperature and energy-efficiency.
d) Test the integrity of your HDD before committing it to the project. The "Ultimate Boot CD" (UBCD 4.1.1, with v. 4.1.2 arriving soon for official release) is an invaluable tool for any refurbishment project and is mentioned often in the Puppy forums. Plenty of tools are provided for diagnosing your CPU, motherboard and RAM. Make sure that you use Memtest86+ to assess the quality of your RAM - it is on UBCD, available alone for free download and is also provided stock-standard in many versions of Puppy, so there is no excuse to skip it's use. On UBCD I find MHDD32 particularly useful in diagnosing and "repairing" HDD problems with bad or degrading sectors (i.e., will provide operational workarounds but no HDD can be fully repaired). It's particularly useful when arranging the location of your linux-swap to avoid a swamp of slow sectors on areas of the drive - string-like patterns and well-defined areas of slow sectors are indications that the drive needs replacing.
I formatted my installation partitions in the Ext2 format as I had fatal halts whenever I attempted using Ext3.
2. BIOS, CD issues
Checking that you have the latest BIOS for your motherboard should be performed early in any recycling project. It's not hard to do, although it has moderate risk in that the 'flash' process should never be interrupted.
Regrettably, many early BIOS's - particularly in the Win95 and Win98 era - were designed to the MicroSoft script, including the inability to install straight from CD without the use of a boot floppy. WakePup2 is provided stock-standard in most versions of Puppy and enables detection of Puppy files on non-Linux hard-drive and USB partitions, for installation purposes. "Grubflop" from rcrsn51 is perfect for getting around the BIOS shortcoming and booting a Puppy installation CD - it will also boot the installation CD's of other Linux versions, and diagnostic discs like UBCD without any problem. Anyone who uses Puppy on older computers should have grubflop in their toolbox. http://www.murga-linux.com/puppy/viewtopic.php?t=16950
Older CD-drives require care in the preparation of installation CD's: avoid using RW CD's; multisession CD's; use 'finalized' ISO's burned at the slowest speed you have available on your main or 'everyday' computer. (but cf. nutshell and save trouble)
3. Choosing your OS
A good test of your hardware and the range (and sophistication) of applications available to it is to install operating systems that were more-or-less designed for low RAM environments. These include; Win95, Win98SE given the 'lite' treatment (Win98lite), ReactOS 0.3.10 (not at 16Mb RAM), DeLi 0.8.0, SliTaz 2.0 (loram), TinyCore 2.4.1, Luit Linux 0.4 and Kantonix 2005-04-lite. However, at 64Mb RAM and below, it is likely you will find such distributions too bulky in their attempts to provide all things for all people, and my inclination is to pick a lite Puplet that can be easily modified to perform a restricted range of functions...
4. Choosing and preparing your Puppy version
Understandably, not all hardware can be supported by the latest official version of Puppy Linux in the constant pursuit of support and compatibility for the latest technology (and software demands). “Retro
NUTSHELL: INSTALL A BASIC PUPPY ON A USB-CADDIED HARD-DRIVE WITH 256MB SWAP, BEFORE TRANSFERRING THE DRIVE TO THE LAPTOP
Most current and emerging Linux versions require at least 64Mb RAM, or double that for satisfactory operation across a range of higher-end internet, gaming and and office applications. The process of "natural" succession tends to have older and still-functional computer hardware consigned straight to the junk heap, particularly those with a maximum capacity of less than 128Mb. Nonetheless, here I outline a procedure for successfully installing a Puppy 4.12 puplet (Pulp 0.03) on a laptop with 16Mb RAM, for its intended end-of-life role as a simple games computer for primary-school children. No previous experience with Linux is neccessary - I'm not a programmer, but a Windows refugee and end-user with just enough curiosity make trouble for myself.
1. Low RAM computers - General observations
It's important to highlight that the amount of RAM available is not the only factor in getting Puppy running happily on 'vintage' computers. CPU speed and health I won't mention further as defects in this department are often fatal as most CPU's can't be replaced on older motherboards without a soldering iron, and this can signal problems elsewhere on the board. Optical and hard drives can be easily replaced with newer components, and should be seriously considered for automatic replacement because:
a) The original 8x CD-ROM etc. drastically impacts on installation time and general operation. (Refer to the first sentence 'nutshell' in this post, and don't try this route.)
b) The symptoms of a dying CD drive are sometimes not easy to spot, and can 'hang' repeated installation attempts at random points, giving the impression that RAM or other hardware may be at fault. Persistent hangs at the "Booting to kernel..." message when installing Puppy and other versions of Linux is a sure indication that the CD drive needs replacing. (cf. nutshell)
c) The original hard drive (HDD) is likely to be a IDE/ATA/PATA vintage with a spindle speed of 5400 RPM, and possibly lacking DMA transfer rates. Drive speed is important - particularly when you require a sizeable linux-swap partition (256MB recommended - but see healthy debate regarding swap-partition size on the forum) to complement the low RAM. Exchanging the original with a faster ATA drive (i.e., 7200 RPM) will markedly improve installation and general operation speeds. Running noise is also reduced. Better still, replacing the old-style drive with a solid-state drive, that is, CF or SD cards in an internal IDE-adaptor will improve running speed, temperature and energy-efficiency.
d) Test the integrity of your HDD before committing it to the project. The "Ultimate Boot CD" (UBCD 4.1.1, with v. 4.1.2 arriving soon for official release) is an invaluable tool for any refurbishment project and is mentioned often in the Puppy forums. Plenty of tools are provided for diagnosing your CPU, motherboard and RAM. Make sure that you use Memtest86+ to assess the quality of your RAM - it is on UBCD, available alone for free download and is also provided stock-standard in many versions of Puppy, so there is no excuse to skip it's use. On UBCD I find MHDD32 particularly useful in diagnosing and "repairing" HDD problems with bad or degrading sectors (i.e., will provide operational workarounds but no HDD can be fully repaired). It's particularly useful when arranging the location of your linux-swap to avoid a swamp of slow sectors on areas of the drive - string-like patterns and well-defined areas of slow sectors are indications that the drive needs replacing.
I formatted my installation partitions in the Ext2 format as I had fatal halts whenever I attempted using Ext3.
2. BIOS, CD issues
Checking that you have the latest BIOS for your motherboard should be performed early in any recycling project. It's not hard to do, although it has moderate risk in that the 'flash' process should never be interrupted.
Regrettably, many early BIOS's - particularly in the Win95 and Win98 era - were designed to the MicroSoft script, including the inability to install straight from CD without the use of a boot floppy. WakePup2 is provided stock-standard in most versions of Puppy and enables detection of Puppy files on non-Linux hard-drive and USB partitions, for installation purposes. "Grubflop" from rcrsn51 is perfect for getting around the BIOS shortcoming and booting a Puppy installation CD - it will also boot the installation CD's of other Linux versions, and diagnostic discs like UBCD without any problem. Anyone who uses Puppy on older computers should have grubflop in their toolbox. http://www.murga-linux.com/puppy/viewtopic.php?t=16950
Older CD-drives require care in the preparation of installation CD's: avoid using RW CD's; multisession CD's; use 'finalized' ISO's burned at the slowest speed you have available on your main or 'everyday' computer. (but cf. nutshell and save trouble)
3. Choosing your OS
A good test of your hardware and the range (and sophistication) of applications available to it is to install operating systems that were more-or-less designed for low RAM environments. These include; Win95, Win98SE given the 'lite' treatment (Win98lite), ReactOS 0.3.10 (not at 16Mb RAM), DeLi 0.8.0, SliTaz 2.0 (loram), TinyCore 2.4.1, Luit Linux 0.4 and Kantonix 2005-04-lite. However, at 64Mb RAM and below, it is likely you will find such distributions too bulky in their attempts to provide all things for all people, and my inclination is to pick a lite Puplet that can be easily modified to perform a restricted range of functions...
4. Choosing and preparing your Puppy version
Understandably, not all hardware can be supported by the latest official version of Puppy Linux in the constant pursuit of support and compatibility for the latest technology (and software demands). “Retro