Partes diferentes do sistema usam diferentes formatos de compactação e formatos de arquivo:
gzip (compactação):
$ file - < /initrd.img
/dev/stdin: gzip compressed data, last modified: Wed Feb 22 01:10:21 2017, from Unix
cpio (arquivo):
$ gunzip < /initrd.img | file -
/dev/stdin: ASCII cpio archive (SVR4 with no CRC)
bzip2 (compressão):
$ sudo cat /vmlinuz | file -
/dev/stdin: Linux kernel x86 boot executable bzImage, version 4.4.0-64-generic (buildd@lgw01-56) #85-Ubuntu SMP Mon Feb 20 11, RO-rootFS, swap_dev 0x6, Normal VGA
ar
(archive): os pacotes Debian são na verdade ar
archives, eles mesmos contendo vários arquivos compactados:
$ ar t /var/cache/apt/archives/zlib1g-dev_1%3a1.2.8.dfsg-2ubuntu4_amd64.deb
debian-binary
control.tar.gz
data.tar.xz
tar (arquivo): Os control.tar.gz
e data.tar.xz
são, naturalmente, tar
archives, gzip-compacted e xz-compacted respectivamente.
O formato de compressão por trás do xz é o LZMA, que também é usado pelo 7z, daí você obtém 7z de graça (mas não 7z de leitura).
Assim, o Ubuntu vem com suporte para vários formatos de compactação (como a maioria das distribuições), porque eles são todos de uso comum.
Por que tudo isso está em uso?
Passas Hysterical.
(razões históricas.)
Por que todos esses componentes devem passar a usar outra coisa, potencialmente quebrando a compatibilidade com versões anteriores e causando uma tremenda dor de cabeça, para o que poderia ser um benefício mínimo?
Em uma nota lateral, o próprio Windows suporta vários formatos de compactação e compactação:
- Zip (claro)
- LZX (compactação)
- Gabinete (arquivo)
- MSI (arquivo)