Я хочу сжать папку размером 16 ГБ, но какой метод лучше? tar.gz? tar.bz2 rar? 7z? Будет ли архив меньше, если я сначала сжимаю в методе, затем копирую сжатый архив в новую папку, затем повторно сжимаю другим способом? Мне нужно сделать так, чтобы он помещался на DVD (выход может быть 8,5 ГБ, не помню), но установка «4370 МБ» делает сжатый файл частью 2,5 ГБ.
Кстати, каков метод сжатия по умолчанию в Ubuntu?
compression
Аманда
источник
источник
/dev/urandom
: вы получите разные результаты при каждой попытке. Или попробуйте/dev/zero
: bzip2 - победитель (по соотношению).Этот вопрос очень старый, но, возможно, кто-то найдет это решение полезным:
Используйте
rzip
, послеtar
. Сначала он сжимает блоки данных размером 900 МБ с помощью словарного метода, а затем передает очищенные данныеbzip2
. Это намного быстрее, чем другие сильные инструменты сжатия (bzip2
,lzma
), а некоторые файлы сжимает даже лучше, чемbzip2
илиlzma
.Да,
gz
это инструмент сжатия по умолчанию в Linux. Это быстро, и, несмотря на его возраст, он дает очень хорошие результаты в сжатии текстовых файлов, таких как исходный код. Еще один стандартный инструментbzip2
, хотя он намного медленнее.Дополнение: lrzip новее и расширяет принцип rzip. Он даже поддерживает неограниченные размеры блоков и выбор методов сжатия (LZMA, Bzip2, Gzip, LZO, ZPAQ или нет). LZMA является стандартом. Для резервного копирования или если вы делитесь большим количеством данных с другими пользователями Linux / BSD, это может пригодиться.
источник
Я выбираю
LZMA
. Он имеет наименьший объем байтов и имеет высокую степень сжатия. Сравнение между ZIP и LZMA: я сгенерировал два файлаseq.txt
с кодом PHPкоторый содержит повторяющиеся блоки из 0,9 цифры ~ 1 МБ данных и
rnd.txt
с кодом PHPкоторый содержит случайные блоки из 0,9 цифры ~ 1 МБ данных.
Результаты сжатия:
Коэффициент сжатия:
Таким образом, LZMA сжимает последовательные данные на 0,2% эффективнее, чем ZIP,
и случайные данные на 2,8% эффективнее, чем ZIP.
Наверняка LZMA выигрывает!
источник