Revision [18888]

This is an old revision of squashfs made by coolpup on 2011-10-15 04:39:16.


HomePage > Components and HowTos > FileTypes


compressed read-only file systems

Explanation of the Squash file system: PDF

Puppy can make use of programs that have been packaged in the SFS format which consist of a single file with the file extension .sfs

Using SFS software packages within Puppy
Package installation: Program operation:

Lists of SFS software packages
Compatibility chart

How to make a SFS file of a software package

Copy or move all the directories and files that make up the software package into one single directory. Then issue the mksquashfs command:
# mksquashfs         
SYNTAX:mksquashfs source1 source2 ...  dest [options] [-e list of exclude dirs/files]

mksquashfs <path_to_directory> <path_to_directory>.sfs -noappend

Verify the installed version of mksquashfs with:
 mksquashfs -version
EditSFS Pup
Advantages of Squash file compression

"SFS-TCZ_Linker may be a good idea if you absolutely must run liveCD only (no rebooting, no session saving.) But running a standard frugal with pupsave, the Linker will add symlinks to the pupsave layer only--and later remove them, even if similarly named files or links were later added via PPM, Gslapt or other means. This is likely to adversely affect reliability and stability. With a full install any files removed would be gone forever, making it even riskier. So at least for now, if you are saving your session at shutdown I still recommend a frugal install and BootManager for adding SFS files."

Adding too many layers to AUFS reduces performance and slows down saving.

01micko writes "I made a tool (see my signature) that makes it super easy for anyone to make a pet or sfs out of debs, if you want you can try it and maybe suggest where I can make improvements. debs2pkg or alien2puppy, the former is what it says and the latter supports Slack tgz and txz formats."

Appendix (old entries)

This information is valid for puppy 1.0.7 and later puppy 1.0.* versions only. union structure is going to change in puppy2

pre-1.0.7 users can use it by renaming it to usr_more.sfs
1.0.7 users can do the following
edit your rc.local to add the following lines

echo "Making more loop devices..."
mknod /dev/loop5 b: 7 5
mknod /dev/loop6 b: 7 6
mknod /dev/loop7 b: 7 7

if [ ! "`ls /mnt/home/usr_packagex.sfs 2> /dev/null`" = "" ];then
mkdir /.usr_packagex
echo "Mounting /mnt/home/usr_packagex.sfs file on /.usr_packagex..."
losetup-FULL /dev/loop5 /mnt/home/usr_packagex.sfs
mount -r -t squashfs -o noatime /dev/loop5 /.usr_packagex
unionctl /usr --add --after /root/.usr --mode ro /.usr_packagex

if you are multiple .sfs files the increase then use the next /dev/loop that is empty i.e. the next usr*.sfs will go in /dev/loop6. If you run out of loops make new ones using mknod command as show above.
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki