Revision [18889]

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


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 for Puppy 1)

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