Barry has posted a description of Puppy and pupmodes at http://www.puppyos.com/development/howpuppyworks.html
I want to thank everybody that helped in coming out with this solution, especially Pizzasgood, Darkerror05, Dougal, and MU
Who this is for? Why I did it.
If you run puppy off your hard drive and use a puppy save file.
Pupmode 13 is the one used by USB drives. The advantage of forcing your hard drive to behave in the same manner is that a) it decreases writes and b) if you have a loud hard drive like mine, its a LOT quieter as it only flushes the cache/new files every 30 minutes. In this mode, the system will try to use every last bit of ram first before writing accessing the drive (I think)
This will disable your swap drive as well; which is good from my standpoint as the memory/swap drive increases access to the Hard drive = noise.
The tradeoff is that if your computer crashes in that time period, you're SOL with respect to new data.
The default mode for hard drive running is PUPMODE=12. In this mode, all writes are immediately passed through onto the save file image. Thus, there will be frequent writes as you keep modifying data/develop temp files, etc...
How-to
The parameter to edit is located in a boot-up script locked inside the compressed file initrd.gz
Unfortunately, there is no way you can directly edit this. Instead, you will have to uncompress this file, mount it in a temporary location, and then recompress it to get it to work.
Before you start
1) backup initrd.gz. This file is located in your initially mounted drive.
2) You will need to run the following commands to edit the init shell file. You can run this from a terminal -> xterm, etc...
The following commands will uncompress initrd.gz, mount it in a temporary location, run leafpad text editor so you can make the changes, and then recompress initrd.gz for you
Code: Select all
gunzip initrd.gz
mkdir /root/minit
mount -o loop initrd /root/minit
leafpad /root/minit/sbin/init
sync
umount /root/minit
sync
gzip initrd
cd /root
sync
Find the following line of
Code:
Code: Select all
case $PUPMODE in
Code:
Code: Select all
PUPMODE=13
EXTRAs
If you want your hard-drive to power down quickly after this is all done, you can edit 1 more startup script to add the following commands. This can be done without fancy initrd.gz work.
Open up a text editor and open the file
/etc/rc.d/rc.local
add the following commands at the end. You will have to change the command to specify the correct hard drive.
Code: Select all
swapoff -a
hdparm -S3 /dev/hda
hdparm -y /dev/hda
- turn off all swap files
- set your hard drive to spin-down into standby mode after 15 seconds. S1=5sec, S2=10sec S3=15 sec, you get the picture.
- put your hard drive into standby mode immediately.