SquashFS
Squashfs | |
---|---|
Desenvolvedor | Phillip Lougher, Robert Lougher |
Nome completo | Squashfs |
Lançamento | 2002 (Linux) |
Limites | |
Tamanho Máximo de arquivo | 16 EiB (264 bytes) |
Tamanho máximo do volume | 16 EiB (264 bytes) |
Recursos | |
Atributos | POSIX e Atributos estendidos |
Compressão transparente | gzip, LZMA, LZO, LZMA2 e LZ4 |
Sistemas operativos suportados | Linux, Android[1] |
Portal das Tecnologias de informação |
Squashfs é um sistema de arquivos compactado somente leitura para Linux. Squashfs comprime arquivos, inodes e diretórios, e suporta tamanhos de bloco de até 1 MB para maior compressão. Vários algoritmos de compressão são suportados. Squashfs também é o nome do software livre, licenciado sob a GPL, para acessar os sistemas de arquivos Squashfs.
Squashfs foi projetado para ser um sistema de arquivos somente leitura de uso geral e para uso em dispositivos que possuem sistema de armazenamento com capacidade limitada (por exemplo, sistemas embarcados), onde é necessária baixa sobrecarga.
Usos
[editar | editar código-fonte]Squashfs é usado pelas versões de Live CD do Arch Linux, Debian, Fedora, Gentoo Linux, Linux Mint, Salix, Ubuntu e em distribuições para dispositivos embarcados, como o OpenWrt[2] e o firmware do roteador DD-WRT. Também é usado no Chromecast[3] e para as partições do sistema do Android Nougat[4]. Muitas vezes, é combinado com um sistema de arquivos de montagem de união, como UnionFS, OverlayFS ou aufs, para fornecer um ambiente de leitura e gravação para distribuições Linux em Live CD. Com isso, aproveita-se a habilidade de compressão de alta velocidade do Squashfs juntamente com a habilidade de alterar o conteúdo da distribuição enquanto ela roda do Live CD. Distribuições como Debian Live, Mandriva One, Puppy Linux, Salix Live e Slax usam essa combinação.
Squashfs também é usado pelo Linux Terminal Server Project e Splashtop. As ferramentas unsquashfs e mksquashfs foram portadas para o Windows NT[5] - Windows 8.1[6]. 7-Zip também suporta Squashfs.[7]
História
[editar | editar código-fonte]Squashfs foi inicialmente mantido como um patch fora de árvore do Linux. A versão inicial 1.0 foi lançada em 23 de outubro de 2002.[8] Em 2009, o Squashfs foi incorporado na linha principal do Linux como parte do kernel Linux na versão 2.6.29.[9][10] Nesse processo, o código de retrocompatibilidade para os formatos mais antigos foi removido. Desde então, o código do espaço do kernel do Squashfs foi mantido na árvore principal do Linux, enquanto as ferramentas do espaço do usuário permanecem na página do projeto no Sourceforge.net.[11]
A versão original do Squashfs usou a compressão gzip, embora o kernel do Linux na versão 2.6.34 adicionou suporte para a compressão LZMA[12] e LZO[13], o kernel do Linux na versão 2.6.38 adicionou suporte para a compressão LZMA2 (que é usado por xz)[14] e o kernel do Linux na versão 3.19 adicionou suporte para a compressão LZ4.[15]
O kernel linux versão 2.6.35 adicionou suporte para atributos estendidos de arquivo.[16]
Ver também
[editar | editar código-fonte]Referências
- ↑ «Documentation/filesystems/squashfs.txt - kernel/common - Git at Google» (em inglês). android.googlesource.com. Consultado em 21 de setembro de 2017
- ↑ «The OpenWrt Flash Layout - OpenWrt Wiki» (em inglês). Wiki.OpenWRT.org. 25 de agosto de 2012. Consultado em 8 de novembro de 2012
- ↑ http://blog.gtvhacker.com/2013/chromecast-exploiting-the-newest-device-by-google/
- ↑ https://arstechnica.com/gadgets/2016/05/android-n-borrows-chrome-os-code-for-seamless-update-installation/
- ↑ «Squashfs tools for Windows» (em inglês). 23 de fevereiro de 2017. Consultado em 22 de setembro de 2017
- ↑ «Bestandssysteem – SquashFS Tools (Software)» (em neerlandês). Consultado em 22 de setembro de 2017
- ↑ «7-Zip». Consultado em 22 de setembro de 2017
- ↑ «Squashfs CHANGES file» (em inglês). 8 de agosto de 2014. Consultado em 19 de abril de 2017
- ↑ «Linux 2 6 29 -- Linux Kernel Newbies» (em inglês). Linux Kernel Newbies. 10 de junho de 2009. Consultado em 19 de abril de 2017
- ↑ «Btrfs and Squashfs merged into Linux kernel - The H Open: News and Features» (em inglês). The H Open. 10 de janeiro de 2009. Consultado em 19 de abril de 2017
- ↑ «Squashfs README file» (em inglês). 5 de maio de 2014. Consultado em 19 de abril de 2017
- ↑ «Official Squashfs LZMA» (em inglês). Squashfs-LZMA.org. Consultado em 8 de novembro de 2012
- ↑ «Linux 2 6 34 - Linux Kernel Newbies» (em inglês). KernelNewbies.org. Consultado em 8 de novembro de 2012
- ↑ «Linux 2 6 38 - Linux Kernel Newbies» (em inglês). KernelNewbies.org. Consultado em 8 de novembro de 2012
- ↑ Merge of LZ4 Squashfs support to Linus Torvalds tree.
- ↑ «Linux 2 6 35 - Linux Kernel Newbies» (em inglês). KernelNewbies.org. Consultado em 8 de novembro de 2012
Ligações externas
[editar | editar código-fonte]- «Website oficial no Sourceforge.Net» (em inglês)