Чтобы ответить на вопрос в заголовке: tar.gz / tar.bz2 стал стандартом для распространения исходного кода Linux очень-очень-очень давно, как в течение более двух десятилетий, и, вероятно, еще пару. Существенно прежде, чем Linux даже появился.
На самом деле, tar обозначает (t) ape (ar) зубок чеснока. Подумайте, катушка , и вы поймете, сколько ему лет. ба-дум-шишка.
До того, как у людей были устройства для записи компакт-дисков, дистрибутивы программного обеспечения были помещены на дискеты 1,44 МБ. Сжатый tar-файл был нарезан командой на фрагменты размером с дискету split
, и эти фрагменты назывались tarballs . Вы бы присоединились к ним вместе cat
и распаковали архив.
Чтобы ответить на другой вопрос, почему не Zip или Rar, это просто. Архиватор tar поставляется из Unix, а два других - из MS-DOS / Windows. Tar обрабатывает метаданные файла Unix (права доступа, время и т. Д.), В то время как zip и rar сделали это совсем недавно (они хранили данные файла MS-DOS). Фактически, zip потребовалось некоторое время, прежде чем он начал правильно хранить метаданные NTFS (альтернативные потоки, дескриптор безопасности и т. Д.).
Многие из алгоритмов сжатия в PKZip являются проприетарными для оригинального производителя, и последний, добавленный к версиям для Dos / Windows, был Deflate (RFC 1951), который работал немного лучше, чем Implode, собственный алгоритм, обеспечивающий лучшее общее сжатие. , Gzip использует алгоритм Deflate.
Алгоритм сжатия RAR является проприетарным, но есть бесплатная реализация декомпрессора с открытым исходным кодом. Официальные релизы RAR и WinRAR от RARlab не являются бесплатными .
Gzip использует алгоритм deflate, и поэтому ничем не хуже PKZip. Bzip2 получает немного лучшие коэффициенты сжатия.
TL; DR версия:
tar.gz и tar.bz2 из Unix, поэтому Unix люди используют их. Zip и Rar из мира DOS / Windows, поэтому DOS / Windows люди используют их. tar
уже несколько десятилетий является стандартом для объединения архивов в * nix.