SquashFS

From Wikipedia, the free encyclopedia
SquashFS
Developer Phillip Lougher, Robert Lougher
Introduced 2009 (Linux 2.6.29)
Limits
Max. file size 16 EiB
Max. volume size 16 EiB
Features
Transparent compression gzip LZMA LZO LZMA2
Supported operating systems Linux
Other
Website on sourceforge

SquashFS is a compressed read-only file system for Linux. SquashFS compresses files, inodes and directories, and supports block sizes up to 1 MB for greater compression. SquashFS is also the name of free/open software, licensed under the GPL, for accessing SquashFS filesystems.

SquashFS is intended for general read-only file system use and in constrained block device/memory systems (e.g. embedded systems) where low overhead is needed. The original version of SquashFS used gzip compression, although Linux kernel 2.6.34 added support for LZMA[1] and LZO compression,[2] and Linux kernel 2.6.38 added support for LZMA2 compression (which is used by xz).[3]

Linux kernel 2.6.35 added support for Extended file attributes.[4]

Uses

SquashFS is used by the Live CD versions of Arch Linux, Debian, Fedora, Gentoo Linux, Linux Mint, Salix, Ubuntu and on embedded distributions such as the OpenWrt[5] and DD-WRT router firmware. It is also used in Chromecast.[6] It is often combined with a union mount filesystem, such as UnionFS or aufs, to provide a read-write environment for live Linux distributions. This takes advantage of both the SquashFS's high speed compression abilities and the ability to alter the distribution while running it from a live CD. Distributions such as Debian Live, Mandriva One, Puppy Linux, Salix Live and Slax use this combination.

The on-disk format of SquashFS has stabilized enough that it has been merged into the 2.6.29 version of the Linux kernel.[7] In that process, the backward-compatibility code for older formats was removed.

SquashFS is also used by Linux Terminal Server Project, Slax, and Splashtop. The tools unsquashfs and mksquashfs have been ported to Windows NT.[8] 7-Zip claims to support SquashFS, although it is unsupported in the current 9.20 release; there is some support in alpha/beta versions.

See also

References

  1. "Official Squashfs LZMA". Squashfs-lzma.org. Retrieved 2012-11-08. 
  2. "Linux 2 6 34 - Linux Kernel Newbies". Kernelnewbies.org. Retrieved 2012-11-08. 
  3. "Linux 2 6 38 - Linux Kernel Newbies". Kernelnewbies.org. Retrieved 2012-11-08. 
  4. "Linux 2 6 35 - Linux Kernel Newbies". Kernelnewbies.org. Retrieved 2012-11-08. 
  5. "The OpenWrt Flash Layout - OpenWrt Wiki". Wiki.openwrt.org. 2012-08-25. Retrieved 2012-11-08. 
  6. http://blog.gtvhacker.com/2013/chromecast-exploiting-the-newest-device-by-google/
  7. "Btrfs and Squashfs merged into Linux kernel - The H Open: News and Features". Heise-online.co.uk. 2009-01-10. Retrieved 2012-11-08. 
  8. "Squashfs tools for Windows; Forum Thread". Retrieved 2012-12-16. 

External links


This article is issued from Wikipedia. The text is available under the Creative Commons Attribution/Share Alike; additional terms may apply for the media files.