Alternative pup_save formats.
Alternative pup_save formats.
Ok I have made initrd's for puppy 4.12 (what I happen to use but changes could apply to later versions, as the ease of corruption of ext2 pup_saves I feel needs addressing, regardless of what linux purists might say . I run puppy 2 most of the time and its ext3 save file works just fine and keeps working in spite of abuse.)
The main change is that pup-saves formatted ext3 and reiserfs can be used.
To alter an existing (backed up) pupsave use
tune2fs -j /path/to/pup_save.2fs.
Then rename to .3fs.
When booted mount should show its mounted as 3fs.
For reiserfs a fresh file would need making using dd and then mkreiserfs in the same way as a normal pup_save. Name the file .rfs with all the usual naming conventions. Copy out from an existing pup_save or use from a fresh boot . Manual mounting can be done using mount as reisefs support is in the kernel...only the tools need adding for other functions.
There no mods to resize (ext3 might work anyway) and for reiser the tools would need adding but this is just for testing purpuses. Encryption is not touched either though of course all that still works for ext2. The rc.shutdown would need modding for auto creation but again that's no biggie.
So here are the initrd's...rename as required and the reisefs tools from puppy 2
edit... heavily evolved but pm me if you are interested
Other non bug fixes included are
1) failure to allow pup_save creation if initrd.gz present on another partiton or no file named 'initrd.gz'
2)Will not use a full install as a pup_save
3)pfix=ram mode working when there is a partition as a pup_save or full install present.
4) not a fix but raised threshold to 260MB for loading pup_xxx.sfs to ram as I found machines with 256MB were constantly running on swap space so negating any speed benefits.
Ok...looking forward to unrelated questions....
If non of the above makes sense then do not try it
mike
The main change is that pup-saves formatted ext3 and reiserfs can be used.
To alter an existing (backed up) pupsave use
tune2fs -j /path/to/pup_save.2fs.
Then rename to .3fs.
When booted mount should show its mounted as 3fs.
For reiserfs a fresh file would need making using dd and then mkreiserfs in the same way as a normal pup_save. Name the file .rfs with all the usual naming conventions. Copy out from an existing pup_save or use from a fresh boot . Manual mounting can be done using mount as reisefs support is in the kernel...only the tools need adding for other functions.
There no mods to resize (ext3 might work anyway) and for reiser the tools would need adding but this is just for testing purpuses. Encryption is not touched either though of course all that still works for ext2. The rc.shutdown would need modding for auto creation but again that's no biggie.
So here are the initrd's...rename as required and the reisefs tools from puppy 2
edit... heavily evolved but pm me if you are interested
Other non bug fixes included are
1) failure to allow pup_save creation if initrd.gz present on another partiton or no file named 'initrd.gz'
2)Will not use a full install as a pup_save
3)pfix=ram mode working when there is a partition as a pup_save or full install present.
4) not a fix but raised threshold to 260MB for loading pup_xxx.sfs to ram as I found machines with 256MB were constantly running on swap space so negating any speed benefits.
Ok...looking forward to unrelated questions....
If non of the above makes sense then do not try it
mike
Last edited by mikeb on Thu 08 Mar 2012, 19:15, edited 2 times in total.
4) is an excellent improvement.
Do you have any comments on reiserfs vs ext3 vs ext4 for a save file? Other than that ext3 can be used as ext2 if necessary (e.g. so it can still be read from windows).
Do you have any comments on reiserfs vs ext3 vs ext4 for a save file? Other than that ext3 can be used as ext2 if necessary (e.g. so it can still be read from windows).
Do you know a good gtkdialog program? Please post a link here
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
Classic Puppy quotes
ROOT FOREVER
GTK2 FOREVER
Well for common storage I use ext2 for windows access. It gets regular fsck and seems happy enough... seems to suffer less fragmentation than fat or even ntfs. Indeed after a while of using fat there was a considerable slowdown using puppy which was cured by defragmenting the partition..
But I have certainly noticed how fragile it is for pupsave use. Indeed after one boot cycle a fsck shows errors but having used ext3 for a couple of years now without ever having to start over with a new pup_save due to corruption which seems an all to common subject on the forum.
Someone else commented on the robustness of reiserfs with regards to power failures when used for a full install so since support is in the kernel then why not give it a go. Windows support for reiserfs is quite limited so using that for shared storage is not as feasible. One other point is that the overhead for reiserfs is much lower on larger partitions/image files ie >256MB then ext2/3/4.
On a side note I once started to get the odd error which appeared to be due to a huge build up of whiteout files (a failure of the unionfs which aufs does not suffer from) ...I'm not familiar how this affects the file system (index full?) but it did.
mike
But I have certainly noticed how fragile it is for pupsave use. Indeed after one boot cycle a fsck shows errors but having used ext3 for a couple of years now without ever having to start over with a new pup_save due to corruption which seems an all to common subject on the forum.
Someone else commented on the robustness of reiserfs with regards to power failures when used for a full install so since support is in the kernel then why not give it a go. Windows support for reiserfs is quite limited so using that for shared storage is not as feasible. One other point is that the overhead for reiserfs is much lower on larger partitions/image files ie >256MB then ext2/3/4.
On a side note I once started to get the odd error which appeared to be due to a huge build up of whiteout files (a failure of the unionfs which aufs does not suffer from) ...I'm not familiar how this affects the file system (index full?) but it did.
mike
Hi there...sorry for late reply...the forum seems to miss a lot of notifications.
Well if you changed the pup_save to ext3 it will work but if you check the output of 'mount' in a terminal it will probably be mounted as ext2.
The way the true change is implemented is to edit the init in initrd.gz for your puppy version...I just made a test one for the version I use.
mike
Well if you changed the pup_save to ext3 it will work but if you check the output of 'mount' in a terminal it will probably be mounted as ext2.
The way the true change is implemented is to edit the init in initrd.gz for your puppy version...I just made a test one for the version I use.
mike
Mike,
After the initrd.gz is unpacked, which lines need to be changed in the init script in order to mount the save file as 3fs? Can I just do a search and replace for all "-t ext2" entries to "-t ext3" as you indicated on this thread?
Thanks,
Jim
After the initrd.gz is unpacked, which lines need to be changed in the init script in order to mount the save file as 3fs? Can I just do a search and replace for all "-t ext2" entries to "-t ext3" as you indicated on this thread?
Thanks,
Jim
Last edited by Jim1911 on Sat 30 Jan 2010, 03:50, edited 1 time in total.
Ok to avoid duplication and since this other thread is related there are the details here...I don't think dpup will differ greatly.
http://www.murga-linux.com/puppy/viewtopic.php?t=51794
As far as rc.shutdown is concerned the option to make an ext3 pup_save is there but commented out near the beginning...but altering the initrd is enough to get things rolling.regards
mike
http://www.murga-linux.com/puppy/viewtopic.php?t=51794
As far as rc.shutdown is concerned the option to make an ext3 pup_save is there but commented out near the beginning...but altering the initrd is enough to get things rolling.regards
mike
Sorry Mike,
I was posting my edit above just as you were responding? The thread you point to brings me back here. I believe your thread on Hacking Puppy's Init script that I referenced may have the answer. As I stated before can I just do a search and replace for all "-t ext2" entries to "-t ext3"?
Thanks,
Jim
I was posting my edit above just as you were responding? The thread you point to brings me back here. I believe your thread on Hacking Puppy's Init script that I referenced may have the answer. As I stated before can I just do a search and replace for all "-t ext2" entries to "-t ext3"?
Thanks,
Jim
Making above changes to the initrd.gz resulted in this output of mount. Sda2 is the partition that dpup is on.
Does this indicate a problem?
Thanks,
Jim
Code: Select all
# mount
rootfs on / type rootfs (rw,relatime)
/dev/sda2 on /initrd/mnt/dev_save type ext3 (rw,noatime,errors=continue,data=writeback)
/dev/loop1 on /initrd/pup_rw type ext3 (rw,noatime,errors=continue,data=writeback)
tmpfs on /initrd/mnt/tmpfs type tmpfs (rw,relatime,size=164396k)
/dev/loop0 on /initrd/pup_ro2 type squashfs (ro,noatime)
/dev/loop4 on /initrd/pup_ro4 type squashfs (ro,noatime)
unionfs on / type aufs (rw,relatime,si=efc7dcf)
tmpfs on /tmp type tmpfs (rw,relatime,size=3053504k)
none on /proc type proc (rw,relatime)
none on /dev/pts type devpts (rw,relatime,gid=2,mode=620)
none on /sys type sysfs (rw,relatime)
none on /proc/bus/usb type usbfs (rw,relatime)
/dev/sdb7 on /mnt/sdb7 type ext3 (rw,relatime,errors=continue,data=writeback)
Thanks,
Jim
Hi Mike,
Thank you for looking at my code, I didn't think that it was an error, and it seems to be working fine with my dpup484b4. Couldn't have done it without your nice clear instructions on your Hacking Puppy's Init script thread.
I'm going to try it on Lighthouse now. EDIT: Works fine in Lighthouse.
Thanks again,
Jim
Thank you for looking at my code, I didn't think that it was an error, and it seems to be working fine with my dpup484b4. Couldn't have done it without your nice clear instructions on your Hacking Puppy's Init script thread.
I'm going to try it on Lighthouse now. EDIT: Works fine in Lighthouse.
Thanks again,
Jim
Hey Jim...I don't like the look of this....
http://www.murga-linux.com/puppy/viewtopic.php?t=52002
something to watch out for
mike
http://www.murga-linux.com/puppy/viewtopic.php?t=52002
something to watch out for
mike
Hmm progress does not necessarily mean better and breaking support for a very common filesystem makes me wary generally. That's why my day to day puppy is based on 2.12. Have you considered reiserfs?
mike
edit...
mike
edit...
..maybe that's the idea but I hate being railroaded.....that's something microsoft do all the time.Maybe we need to move on to ext4
Hi Mike
No, I haven't used reiserfs. Does Grub.097 recognize frugal pup installations? What type of pupsave would you use? I would think that 3fs would work, but how would you enable journaling?
If your hardware supports it, you are really missing out if you aren't trying the latest dpup, upup, and Lighthouse. For serious work, I'm normally in Lighthouse or Ubuntu.
I'm late on the puppy scene so I didn't ever check out the 2 series. Barry was switching from the 3 to 4 series at that time and I was just beginning to love puppy.
One more question, would the same techniques used for ext3 work for ext4?
Jim
No, I haven't used reiserfs. Does Grub.097 recognize frugal pup installations? What type of pupsave would you use? I would think that 3fs would work, but how would you enable journaling?
If your hardware supports it, you are really missing out if you aren't trying the latest dpup, upup, and Lighthouse. For serious work, I'm normally in Lighthouse or Ubuntu.
I'm late on the puppy scene so I didn't ever check out the 2 series. Barry was switching from the 3 to 4 series at that time and I was just beginning to love puppy.
One more question, would the same techniques used for ext3 work for ext4?
Jim
you have lost me....No, I haven't used reiserfs. Does Grub.097 recognize frugal pup installations? What type of pupsave would you use? I would think that 3fs would work, but how would you enable journaling?
someone else is trying that.One more question, would the same techniques used for ext3 work for ext4?
better the devil you know and everything works really well..I can't be bothered to debug everything again. Besides I'm gradually replacing libs from debian.If your hardware supports it, you are really missing out if you aren't trying the latest dpup, upup, and Lighthouse
Puppy 2.02 is particularly fast and the 1 series flew so speed is another consideration.
mike