Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Sat 26 Jul 2014, 03:15
All times are UTC - 4
 Forum index » House Training » HOWTO ( Solutions )
Get Puppy Linux to work with less than 32MB Memory (WORKS)
Moderators: Flash, Ian, JohnMurga
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 1 [8 Posts]  
Author Message
Juz10Mac

Joined: 05 Feb 2006
Posts: 4
Location: Texas

PostPosted: Sun 05 Feb 2006, 23:00    Post subject:  Get Puppy Linux to work with less than 32MB Memory (WORKS)  

Install Puppy on a computer's hard disk with less than 32 megabytes of RAM:

Hello,

I just successfully installed Puppy Linux 1.0.7 to a 486 with 24 megabytes of RAM and I just wanted to share how I got this to work. The normal way of booting puppy from CD-ROM would not work with the amount of memory I had. This is my procedure for getting things to work on a low memory setup. Here's the basic concept: Instead of accessing the initrd from the ram upon boot, I had the computer access it from a 'scratch' disk partition, thus saving tons of RAM. While I haven't tried it, I think it might be possible to use this procedure with even less RAM. This is also a nice work-around if your computer does not support booting from a CD-ROM. This post requires some technical understanding. Here's my procedure:

Required tools:

HAL91 Linux boot floppy
Windows 98/ME startup disk (with CD-ROM support)
Puppy Linux 1.0.7 CD-ROM
Loadlin (an MS-DOS utility to boot linux with kernel parameters)

1) Use HAL91 to partition your hard disk with "fdisk /dev/hda". I assume you are using /dev/hda for your hard disk. You will need one large main partition, a swap partition, a 12-megabyte scratch partition, and a general file copy/store partition. I recommend putting the latter three in an extended partition. Make sure your swap partition has plenty of space and has its type set to 82. Also, Puppy will not boot properly if you don't have some general partition for it to dump temporary 'stuff' to. I set the type of my main partition to an arbitrary 64 so puppy wouldn't see it. Format your general partition with ext2 so you and Puppy will have some place to work with files. And format the swap-space for use. "mke2fs /dev/hda#" & "mkswap /dev/hda#". I partitioned in a way that the swap partition, the scratch partition and the general partition were consecutive, so I could later delete them and replace them with one larger swap partition.

Here's my partition layout:
Code:

Partition Kind              Type Size                    What
------------------------------------------------------------------
hda1      [unformatted]     64   [all remaining space]   Main
hda2      extended          5    128MB                   Extended
hda5      [unformatted]     64   12MB                    Scratch
hda6      ext2              83   52MB                    General
hda7      swap              82   64MB                    Swap

2) Mount the general partition and the CD-ROM. Copy image.gz from the CD-ROM to your general partition and uncompress it with "gzip -d image.gz".

3) Dump Puppy's initial ramdisk to your 12-megabyte scratch partition. "dd if=image of=/dev/hda#" This is the actual RAM saver. Instead of loading the initial ram disk to ram, you load it to your scratch partition

4) Boot from a windows startup disk and use loadlin to boot Puppy: "loadlin D:\vmlinuz root=/dev/hda5 PFILE=pup001-none-262144". Here, I assumed D:\ for the CD-ROM and /dev/hda5 for the scratch partition; make the appropriate changes. (There should be enough free space to install loadlin to the Windows startup disk. If not, you can put it on a separate floppy and access it with B:\. This will even work if you don't have two floppy drives; you will just be prompted to insert the second disk.)

5) Puppy comes up just fine. Now you can do a hard drive install over your main partition.

6) Replace the extended partition with swap space. (You can reboot into Hal91 to do this.)

7) Follow the directions here to see to it that Puppy will in fact use your swap partition when you boot the system without the CD-ROM. http://www.murga.org/~puppy/viewtopic.php?t=4591

What I've learned from this: If you try persistently at a hopeless cause, it pays off!

I hope my hours of trial and error helps someone; enjoy!

Juz10mac

Last edited by Juz10Mac on Tue 14 Feb 2006, 18:57; edited 4 times in total
Back to top
View user's profile Send private message 
Theafro


Joined: 31 Jan 2006
Posts: 2
Location: Norwich, city of the Anglo king!

PostPosted: Wed 08 Feb 2006, 13:19    Post subject:  

i was just gifted an old compaq (urgh!) laptop circa 1996 with a heady 16Mb of RAM, this could be interesting! i'll let ya all know how it works out, nice one for the tip tho' Smile
_________________
what does the fish know of the water in which he swims all it's life. A. Einstien
Back to top
View user's profile Send private message 
Juz10Mac

Joined: 05 Feb 2006
Posts: 4
Location: Texas

PostPosted: Tue 14 Feb 2006, 10:46    Post subject:  

Well?

Any luck? I'm half tempted to pull some RAM from my 486 to see just how low she'll go. I did read reports of people getting Puppy to work with 32MB of RAM, but nothing less (until now). That's why I said 'less than 32MB memory' in the title of this thread.

Also, I've made a few edits.
Back to top
View user's profile Send private message 
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Tue 14 Feb 2006, 14:55    Post subject:  

Yep, just the sort of thing I'm trying to do for LanPuppy, free up more memory for memory challenged PCs.
My problem is the LANboot clients don't have a swap partition, I may look in to NBD (Network Block Device), but it would drastically increase the network traffic load & I don't like that as much as the ramdisk hogging a huge chunk of memory.
I need to reduce the client's ramdisk size to as small as I can get it so more memory is available for apps.
What I'd like to do is take some statistics on file usage (which ones are being constantly accessed), & put only those files in the ramdisk, this would speed up the client PCs while reducing the ramdisk to as small as possable.
I haven't been able to find an app. that will give me the statistics that I need, any suggestions?
Back to top
View user's profile Send private message 
Guest
Guest


PostPosted: Tue 14 Feb 2006, 18:51    Post subject:  

Sunburnt,

I don't know if this is what you need or not. My tip here is for getting the Puppy install CD-ROM to boot initially, so you can do a hard drive install. It sounds to me like you are interested in using low memory setups (after they've been installed). Am I correct? You said that your LANboot clients don't have swap partitions. Is this because they do not have hard disks, or because they simply don't have swap partitions on their hard disks? I think the best thing you can do for a low memory machine (aside from upgrading the memory), is to install swap space. As far as your applications are concerned, its as good as RAM. The only reason every computer doesn't have 16MB RAM and 2GB swap, is the immense slow down. I read somewhere that, as a rule of thumb and for all practical purposes, swap is 80 times slower than actual memory (of corse, this depends in large part on the speed of your system and hard drive). If you really want more capabilities, I would consider installing small hard drives, just for the swap space. I'm assuming that because these computers are just being used as network entities, you can make the sacrifice of speed for capabilities. Is this helping any? I don't have any experience with a network block device, but that might be a good alternative to actually installing a hard drive in every machine. As for a program that will log file usage, I don't know of one off hand, but you might try all the usual places (google, sourceforge, etc.).

Juz10mac
Back to top
Juz10Mac

Joined: 05 Feb 2006
Posts: 4
Location: Texas

PostPosted: Tue 14 Feb 2006, 18:54    Post subject:  

Oops, I'm sorry I forgot to login for that last post. It really is mine, not Guest.
_________________
My Machine: 100MHz 486dx, 24MB RAM, 800MB HDD, 5.25" & 3.5" FDDs, Ethernet, 4x CD-ROM. Reason for using Puppy Linux: The sheer novelty of having a usable and up-to-date OS on my 486!
Back to top
View user's profile Send private message 
sunburnt


Joined: 08 Jun 2005
Posts: 5009
Location: Arizona, U.S.A.

PostPosted: Wed 15 Feb 2006, 00:26    Post subject:  

Yep, they're diskless in general, but I want to use Barry's CD, HD, & USB locating routines to mount any local drives.
Ideally the clients would be nothing but little boxes that hang on the side of the monitors, but no one makes anything like that for a reasonable price of under $100, there's a post on this site about Puppy on $100 laptops!
More memory is always better, but expensive for old PCs, it costs more than DDR2 400mhz for brand new ones!
Spending money on old junk is always a bad idea & soon the old garbage will be gone, not good to build on.
NBD would work good on a 1gbps lan & the nics & switches are very cheap, & 10gbps is now available!
I've Googled, etc., but no luck, but I keep trying every now & then, something will turn up.

Basically I need a ramdisk that's no bigger than it has to be, copy the old one to it & delete the old one.
Puppy as it is makes a ram0 to boot from, & then makes a ram1 & copies ram0 to it & deletes ram0.
I think ram1 is bigger than it needs to be, it has like 30MB or so of empty space & I don't think it uses it.
Barry's scripts show how, but I just can't figure them out to be able to free up the memory, 30MB is alot!
Back to top
View user's profile Send private message 
Juz10Mac

Joined: 05 Feb 2006
Posts: 4
Location: Texas

PostPosted: Sun 26 Feb 2006, 23:54    Post subject: 24MB is the minimum  

I pulled some RAM from my machine and got it to boot with only 20MB, but the GUI wouldn't load. I tried with other amounts, too. I'm afraid it couldn't quite make the 16MB mark. Also, I did this with Puppy 1.0.8 (revision 1 - Sorry, but the normal notation gives it a smiley). You will also need to increase the size of the 'scratch' partition to 14-megabytes (They increased the initrd size with 1.0.8 ). It looks like 24MB is the bare minimum to get Puppy Linux to install on any machine.
_________________
My Machine: 100MHz 486dx, 24MB RAM, 800MB HDD, 5.25" & 3.5" FDDs, Ethernet, 4x CD-ROM. Reason for using Puppy Linux: The sheer novelty of having a usable and up-to-date OS on my 486!
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 1 of 1 [8 Posts]  
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » HOWTO ( Solutions )
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.0708s ][ Queries: 12 (0.0045s) ][ GZIP on ]