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 xz |
| Supported operating systems | Linux |
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 xz compression.[3]
Linux kernel 2.6.35 added support for Extended file attributes.[4]
Contents |
[edit] Uses
SquashFS is used by the Live CD versions of Arch Linux, Debian, Fedora, Gentoo Linux, Salix, Ubuntu and on embedded distributions such as the OpenWrt[5] and DD-WRT router firmware. 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.[6] In that process, the backward-compatibility code for older formats was removed.[7]
SquashFS is also used by Linux Terminal Server Project, Slax, and Splashtop. The tools unsquashfs and mksquashfs have been ported to Windows NT,[8] read access is also possible with 7-zip.
[edit] See also
- Comparison of file systems
- List of file systems
- Cloop is a compressed loopback device module for the Linux kernel
- Cramfs is another read-only compressed file system
- e2compr provides compression for ext2
[edit] References
- ^ Why Squashfs LZMA?
- ^ Linux 2.6.34 - Linux Kernel Newbies
- ^ Linux 2.6.38 - Linux Kernel Newbies
- ^ Linux 2 6 35 - Linux Kernel Newbies
- ^ http://wiki.openwrt.org/doc/techref/flash.layout#partitioning.of.squashfs-images
- ^ Btrfs and Squashfs merged into Linux kernel Jan 10, 2009
- ^ Re: BUG? SQUASHFS error: Major/Minor mismatch Tue, January 13, 2009
- ^ "Squashfs tools for Windows". tomas-m.com Slax blog. 2009. http://www.tomas-m.com/blog/482-Squashfs-tools-for-Windows.html. Retrieved 2011-07-23.
[edit] External links
- SquashFS website, squashfs.sourceforge.net
| This Linux-related article is a stub. You can help Wikipedia by expanding it. |