Temporary integration of sfs-files when running Puppy in ram

What features/apps/bugfixes needed in a future Puppy
Post Reply
Message
Author
axel_schaber
Posts: 8
Joined: Sun 30 Oct 2005, 13:21

Temporary integration of sfs-files when running Puppy in ram

#1 Post by axel_schaber »

I often run Puppy on several computers from a live CD (which also contains a folder with all the pet files, some dotpups and of course sfs files). On my private computer I have done a frugal install of Puppy (I mean the kind of installation where only 5 files reside on the hard disk). All settings are already included in the pup_216.sfs file. I prefer running Puppy in ram because that way I have access to 1.1GB free memory.

Anyway, when running Puppy in live CD mode, to use the devx_216.sfs for instance, I have to loop-mount this file manually and copy its content into the root file system "/". I sometimes need to do this for compiling a pet-file.

So here is my suggestion: It would be great if the Puppy package manager had the additional option to temporarily unpack the content of a sfs file into the file system when running Puppy in ram. This way there is no need for installing Puppy to the hard disk or to a usb medium to compile a package.

Alternatively, a script in menu > setup would do the same job.

What do you think about my suggestion?

What about a package "tempSFSintegration.pet"?

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#2 Post by sunburnt »

Hi axel_schaber; I made a SFS file installer for Full-HD installs of Puppy.
It mounts the SFS file & copies it's contense to the HD.
This seems to be very close to what your talking about.

It's unfortunate that Puppy-2 won't add/remove union branches like Puppy-1.
With AUFS instead of Unionfs Puppy-2 would add/remove branches if the PC
had 512MB of ram or more, we don't know why this is so...

There's been alot of talk about new ways of adding & removing SFS files.

axel_schaber
Posts: 8
Joined: Sun 30 Oct 2005, 13:21

#3 Post by axel_schaber »

Hi sunburnt,

when you wrote "add/remove branches", did you mean that one could integrate a sfs branche into the file system without consuming extra ram. That would be a fantastic option when running Puppy from CD on older machines (with limited ram), especially, if one wants temporarily use open office.

When I copy the sfs content to the root file system it has always been at the cost of ram space, which does not matter in my case, but maybe matters for other users.

At my parents for instance I cannot use open office without touching the local harddisk (so in fact I don't use it) ...

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#4 Post by sunburnt »

axel_schaber; Do you mean that you cannot use your parents HD for Puppy?

You can copy the sfs contense to the Save file instead of ram.
But the Save file is usually on the HD, but you could make the Save file on a
USB drive, then reboot Puppy with the USB drive specified as the HOME device.
Then the Save file isn't on the HD & sfs files can be copied to it.

However the Save file will still have the copied files in it after the next bootup.
The sfsInstaller keeps track of the copied files so they can be removed.
Now that I think about it... I think the sfsInstalled app. may work for this setup.

If you do this, make the Save file on the USB drive large (512MB to 1GB),
that way large sfs files will extract to a Save file with enough room for it.
The copied files are approximately 3 or more times the size of the sfs file,
so a 100MB sfs file would need approximately 300MB or more to extract to.

axel_schaber
Posts: 8
Joined: Sun 30 Oct 2005, 13:21

#5 Post by axel_schaber »

Hi sunburnt!

I've just played around a little with Puppy 2.16 running from CD.
My aim was using the content of an sfs file totally in ram, but not using too much of free memory (like when copying the whole sfs content to the "/" root)

Here is, how I've succeeded (this time trying openoffice):

1. starting Puppy with the option "pfix=ram"
2. # mkdir /sfstmp
3. mounting the CD using PMOUNT or MUT
4. # mount -r -o loop /mnt/path_to_sfsFiles_on_CD/openoffice.sfs /sfstmp
5. unionctl / --add --mode ro --after /initrd/pup_ro2 /sfstmp
6. fixmenus
7. restart JWM from menu

Now I can start the different programs included in openoffice by simply clicking the menu entries.
But there is a "little" side effect. The media utility managers are not working any more and there is also a shutdown problem.

For me this is not important, because running puppy totally in ram has the advantage, that in case one can shut down without affecting the harddisk's file system by pressing the poweroff button .

advantage:
+ ability to run a sfs content from CD (or wherever it is stored) in ram
+ its really fast
+ absolutely ok for temporary use

disadvantage:
- neither MUT nor PMOUNT are working after inclusion of sfs content
- clean shutdown not possible

Besides thank you for your suggestion of using an USB media, but there is still the need to create a save file, which takes a little time and can only be used after a reboot, right?

I think, if one could fix the problems of the afore mentioned method, an "sfs-temp-installer" like this would be a good option to get quick and temporary access to the content of an sfs file (e. g. the devx_216.sfs, when compiling).

John Doe
Posts: 1681
Joined: Mon 01 Aug 2005, 04:46
Location: Michigan, US

#6 Post by John Doe »

axel_schaber wrote:an "sfs-temp-installer" like this would be a good option to get quick and temporary access to the content of an sfs file (e. g. the devx_216.sfs, when compiling).
Mount Squash File System on the fly

Code: Select all

mkdir mntpt
losetup /dev/loop2 devx_004.sfs
mount -t squashfs /dev/loop2 mntpt
cp -a --remove-destination mntpt/* /
umount mntpt
Then type 'fixmenus' then restart X and you will have menu entries also.

More shell examples here:
http://www.puppylinux.org/wikka/ShellScriptsExamples
axel_schaber wrote:At my parents for instance I cannot use open office without touching the local harddisk (so in fact I don't use it) ...
Get a Flash Drive, there are SO inexpensive now:
http://www.tigerdirect.com/applications ... ?CatId=379

axel_schaber
Posts: 8
Joined: Sun 30 Oct 2005, 13:21

#7 Post by axel_schaber »

Hi John Doe,

I've just tried two options of accessing openoffice.sfs from live-CD. When copying the whole sfs content to "/" 469 M of memory were used, and 500 M when starting simpress. Contrary to that with the above described method it was only 161 M and 349 M, respectively.

So there is a huge difference.

Today at the puppy developer news I have also read about Barrys intention to include one of the tools that can add sfs content. I do not know how much memory these tools will consume and if someone thought about it ...

As you can see in the attached file, the first method (on the left hand side) consumed even 735 M of ram at some point of time ...


Best regards

Axel
Attachments
ram_compared.png
(8.67 KiB) Downloaded 442 times

User avatar
sunburnt
Posts: 5090
Joined: Wed 08 Jun 2005, 23:11
Location: Arizona, U.S.A.

#8 Post by sunburnt »

axel_schaber; Using unionctl crashes Puppy as union branches
can't be added or subtracted after bootup.
Using AUFS instead of UnionFS branches can be manipulated if there's
over 500 MB of ram available to the PC.
We don't know why this is so, but that's the case as far as I know.

No... an image file can be used as soon as it's made, no reboot needed.

Post Reply