LINUX.ORG.RU

Ответ на: комментарий от s18woldemar

man dd:

       of=FILE
              write to FILE instead of stdout

Соотв., не указываешь of — получаешь вывод в stdout.

И да, научись гуглить и/или читать маны перед походом на форум; маленький, что ли?

post-factum ★★★★★
()
Последнее исправление: post-factum (всего исправлений: 1)

7z не стоит, почитай про его недостатки для начала. К тому же тебе не нужен архиватор, только компрессор. Лучше заюзай такое:

dd if=/dev/sda5 conv=sync,noerror bs=32768K | xz -9 -c  > sda5.img.xz

Можно в несколько потоков жать но конечный файл будет хуже размером (во всяком случае с какими-то компрессорами).

anonymous
()
Ответ на: комментарий от anonymous

На практике это тупняк конечно, gzip за глаза и работает быстро. Только занули свободное пространство сначала. Лучше вообще так не делать, но для виртуалок вполне сойдёт.

anonymous
()
Ответ на: комментарий от s18woldemar

что-то вроде

unxz -c sda5.img.xz | dd of=/dev/sda5

anonymous
()
Ответ на: комментарий от greenman

Может быть, никогда не использовал. Вообще у xz есть ещё такое, но на практике это никого не волнует особо http://www.nongnu.org/lzip/xz_inadequate.html там ещё где-то было про несовместимость версий.

У zstd что-то подобное?

anonymous
()
Ответ на: комментарий от anonymous

7z не стоит, почитай про его недостатки для начала.

Не слушай его, 7z так же хорош как компрессор. xz только теоретически использует тот же алгоритм сжатия, фактически более совершенный lzma2 (более 2-х потоков, и никогда не увеличивает размер по сравнению с исходником) доступен только в 7z более-менее современной версии. Также xz может настраивать сжатие только уровнем (от 1 до 9), а для 7z доступны (через задницу конечно, но откопать можно) все те же опции алгоритма, размера словаря, слова и уровня, что и в версии под винду. Можно задействовать более 2-х ядер и более 700М памяти и выиграть время или лишние проценты сжатия.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Ты говоришь, что при очень большом желании и если обмазаться никому неизвестными ключами, 7z будет почти так же хорош, как и xz, любые параметры которого конфигурируются легко и непринуждённо? Зачем тогда семипроприетарный 7z? Ты говоришь загадками.

anonymous
()
Ответ на: комментарий от anonymous

Нет, я говорю что если обмазаться ключами из непонятного официального мануала 7zip, то 7z станет не чуть-чуть хуже xz, а значительно лучше. И да, это не для любой задачи, а в зависимости от того, какой уровень сжатия надо получить и какое железо использовать. А если нужно просто и везед, то есть gzip (и его паралельная версия) для быстрого сжатия и bzip2 (и его паралельная версия) для более-менее качественного сжатия.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Про ядра вообще что-то непонятно, я не помню чтобы у 7z были такие серьёзные ограничения. Там только требования по памяти растут экспоненциально.

anonymous
()
Ответ на: комментарий от kirill_rrr

Зачем это всёб если xz-utils есть на любой сколько-нибудь системе? Вот 7z там точно нет. https://tukaani.org/xz/

anonymous
()
Ответ на: комментарий от kirill_rrr

7z так же хорош как компрессор

Нифига он не хорош. Особенно на подобных задачах. В данном случае zstd будет минимум в два-три раза быстрее при схожем уровне компрессии. И да, я часто пакую виртуалки и знаю о чем говорю.

Или lz4, как вариант: компрессия gzip'а, скорость lzop'a.

ShizuShidou
()
Ответ на: комментарий от anonymous

Алгоритм lzma первой версии, используется в утилитах lzma и xz, может использовать только 2 потока и использует только предустановленные уровни сжатия. Используя lzma2 в 7z я могу или жать в 4 потока на стандартном 4-5-6 уровне на RaspberryPi3, и это примерно в 2 раза быстрее чем в 2 потока. Или я могу задействовать 4,3 Гб памяти на ноуте и это даёт чуть больший коэфицент сжатия - я это использую для длительного хранения.

kirill_rrr ★★★★★
()
Ответ на: комментарий от ShizuShidou

lzma2 всё ещё второй по коэфициенту сжатия при использовании памяти от 700Мб. Не помню как называется самый лучший алгоритм, но памяти и времени ему нужно на порядок больше, так что если 32Гб нет, а 8 есть, то для длительного хранения лучше lzma2. Он не такой уж и медленный, не более двух раз по сравнению с bzip2, а bzip2 вполне приемлим.

А если паковать и распаковывать надо быстро, а лишний процент сжатия не принципиален, тогда да, нужен другой алгоритм.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

Извини, у меня только шестипоточный.

anonymous
()
Ответ на: комментарий от kirill_rrr

У меня такое чувство, что ты просто не пробовал zstd, честно. А bzip уже даже в варианте lbzip2 никуда не годится. Разве что в целях совместимости.

ShizuShidou
()
Ответ на: комментарий от greenman

Там неправда, распаковка в несколько тредов была добавлена много лет назад. Упаковка ещё дольше.

anonymous
()
Ответ на: комментарий от anonymous
   2 XZ Utils Release Notes
   3 ======================

...

5.2.2 (2015-09-29)

...

  94     * Documented that threaded decompression hasn't been implemented
  95       yet. A 5.2.0 NEWS entry describing multi-threading support had
  96       incorrectly said "decompression" when it should have said
  97       "compression".
greenman ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.