Squashfs

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Updated FormatInfo, added Identification section, added discmaster.textfiles.com search results to Sample files section.)
(Added link for magic bytes, only for FormatInfo. Added magic bytes for both little-endian and big-endian, depending on source machine. Fixed typo where magic was missing one byte at the end for little-endian.)
Line 5: Line 5:
 
|wikidata={{wikidata|Q389314}}
 
|wikidata={{wikidata|Q389314}}
 
|compression=lossless, mandatory
 
|compression=lossless, mandatory
|magic=68 73 71
+
|magic=[https://github.com/file/file/blob/master/magic/Magdir/filesystems#L2194 68 73 71 73] (little-endian)<br />[https://github.com/file/file/blob/master/magic/Magdir/filesystems#L2191 73 71 73 68] (big-endian)
 
|released=2002
 
|released=2002
 
}}
 
}}
Line 13: Line 13:
  
 
== Identification ==
 
== Identification ==
SquashFS files begins with hexadecimal {{magic|68 73 71}}, which translates to "hsqs" in ASCII.
+
SquashFS files created on little-endian machines begins with hexadecimal {{magic|68 73 71 73}}, which translates to "hsqs" in ASCII. SquashFS files created on big-endian machines with hexadecimal {{magic|73 71 73 68}}, which translates to "sqsh" in ASCII.
  
 
== Examples ==
 
== Examples ==

Revision as of 11:18, 16 August 2025

File Format
Name Squashfs
Ontology
Extension(s) .sfs[1]
Wikidata ID Q389314
Compression lossless, mandatory
Magic Bytes 68 73 71 73 (little-endian)
73 71 73 68 (big-endian)
Released 2002

Squashfs is a compressed read-only filesystem for Linux. Typically used as a "live image" for booting Linux off a removable storage (e.g. USB, CD/DVD), minus components like the bootloader, kernel and initramfs.[2] It is also used in modern AppImage,[3], or Snap[4] as a way portable software distribution on Linux. Squashfs can also be used to store other data, such as disk images.[5] Under Windows, Squashfs contents can be opened/extracted via 7-Zip.[6]

See also cramfs.

Contents

Identification

SquashFS files created on little-endian machines begins with hexadecimal 68 73 71 73, which translates to "hsqs" in ASCII. SquashFS files created on big-endian machines with hexadecimal 73 71 73 68, which translates to "sqsh" in ASCII.

Examples

Create a Squashfs (file system) image from current/present directory and output it into its parent directory:

 $ mksquashfs . ../example.squashfs -b 1048576 -comp xz -Xdict-size 100%

Open a Squashfs image (as root) from present directory and have its contents visible in /mnt:

 # mount example.squashfs /mnt

Open a Squashfs image (as user) from present directory and have its contents visible in /mnt/temp:

 $ squashfuse example.squashfs /mnt/temp

Software

Sample files

Links

References

  1. What are the commonly accepted file name extension for squashfs? #259 - GitHub
  2. EROFS For Live Media - Fedora Project
  3. History of AppImage - Wikipedia
  4. Snap - support section - Wikipedia
  5. Squashfs As a Forensic Container - foo.be
  6. python2.7 How to handle squashfs in Windows - StackOverflow
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox