#1
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Eugene Muzychenko написал(а) к All в Nov 16 14:35:22 по местному времени:
Привет! Добыв бинарник GNU tar 1.26 под ARM, и попытавшись сделать им многотомный архив со сжатием, очень удивился, обнаружив, что tar не умеет жать многотомные архивы. Это какая-то принципиальная залупа разработчиков? Даже досовские архиваторы начала 90-х чуть ли не поголовно делали сжатые многотомные архивы. Мне это нужно для скрипта бэкапа внутренней памяти гуглофона. По причине какого-то очень альтернативного мышления все существующие бэкаперы разделов обходят ветку /data/media (на которую отображается /sdcard), где лежат карты навигаторов, словари, документы и прочее. Соответственно, приходится это бэкапить вручную. Простое сворачивание tar'ом из busybox не годится, поскольку получается файл размером больше 2 Гб, не лезущий на карту памяти, форматированную в FAT32 (чтобы можно было ее читать под виндой). В обсуждениях предлагается использовать split, но он добавляет суффиксы aa/ab и так далее, а разархиваторы автоматически этого не понимают - нужно сперва склеить куски в один, а при объеме в десяток гигабайт это слегка неудобно. Всего доброго! Евгений Музыченко eu-gene@muzy-chen-ko.net (все дефисы убрать) --- GoldED+/W32-MSVC 1.1.5-b20160322 |
#2
|
|||
|
|||
Re: Почему GNU tar не жмет многотомные архивы?
Dmitry E. Oboukhov написал(а) к Eugene Muzychenko в Nov 16 12:18:19 по местному времени:
> Добыв бинарник GNU tar 1.26 под ARM, и попытавшись сделать им многотомный > архив со сжатием, очень удивился, обнаружив, что tar не умеет жать многотомные > архивы. для начала tar не умеет и сжимать тоже от слова вообще. для сжатия используются другие утилиты - gzip, bzip2 и так далее. а tar - это утилита при помощи которой можно собрать n файлов/каталогов в один (вместе с правами и метаданными) > Это какая-то принципиальная залупа разработчиков? это unix way. Для деланья многотомного архива посмотрите man на split > В обсуждениях предлагается использовать split, но он добавляет суффиксы aa/ab > и так далее, а разархиваторы автоматически этого не понимают - нужно сперва > склеить куски в один, а при объеме в десяток гигабайт это слегка неудобно. суффиксы что split добавляет позволяют сортировать в алфавитном порядке а далее можно распаковывать как-то так cat .tar.{gz|bz2}.|{bunizp2|gunzip}|tar -xv ... Гуманизм породил геноцид --- Mutt/1.5.21 (2010-09-15) |
#3
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Sasha Shost написал(а) к Eugene Muzychenko в Nov 16 13:11:36 по местному времени:
Нello Eugene! EM> многотомный архив со сжатием, очень удивился, обнаружив, что tar не EM> умеет жать многотомные архивы. проснулся, проспав 200 лет тар - это для магнитофонной ленты формат, какой такой многотомный архив мог быть с ней? .tar.gz - видел? вот гзип и есть архиватор, а тар просто в одну сосиску все файлы собирает, что бы на ленте одним файлом лежало, меньше рыскать туда-сюда что бы из пачки файлов скачать одну прогу в итоге, с одного места подряд списали - в кучу раз быстрей и износа меньше лпм тар - не архиватор, совсем http://help.ubuntu.ru/wiki/tar Sasha http://dr-shost.com http://shostatsky.narod.ru [Team OS/2][Team EDSMO] --- GoldED-NSF/LNX 1.1.5-20090710 |
#4
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Eugene Muzychenko написал(а) к Dmitry E. Oboukhov в Nov 16 17:27:52 по местному времени:
Привет! 14 Nov 16 12:18, you wrote to me: DO> для начала tar не умеет и сжимать тоже от слова вообще. Именно поэтому он предлагает несколько ключей для выбора метода сжатия? :) Может, какой-нибудь очень древний tar действительно не умел сжимать, но последние лет десять они все умеют. DO> Для деланья многотомного архива посмотрите man на split Который убог до невозможности, не позволяя даже задать вид суффикса. В итоге везде, где используются таровские форматы, тома нумеруются цифрами, а split делает только буквы. Главный вопрос несколько о другом: GNU tar умеет и сжимать, и резать. По какой причине он отказывается это делать одновременно? Всего доброго! Евгений Музыченко eu-gene@muzy-chen-ko.net (все дефисы убрать) --- GoldED+/W32-MSVC 1.1.5-b20160322 |
#5
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Anton Poletayev написал(а) к Eugene Muzychenko в Nov 16 14:00:40 по местному времени:
Нi, Eugene! Понедельник 14 Ноября 2016 17:27, ты писал(а) Dmitry E. Oboukhov, в сообщении по ссылке area://ru.linux?msgid=2:5000/14+58299308: EM> Именно поэтому он предлагает несколько ключей для выбора метода EM> сжатия? :) EM> Может, какой-нибудь очень древний tar действительно не умел сжимать, EM> но последние лет десять они все умеют. Формат tar не имеет компрессии. Компрессии подвергается готовый архив, который для программы сжатия (к примеру, gzip) есть просто-напросто один файл. Точно так же вы можете пожать дамп базы данных .sql или .log, получив на выходе .sql.gz, к примеру. Выбор метода компрессии в ключах конкретной утилиты tar - это всего-лишь рукоятка для удобство вызова внешнего обработчика, для сжатия готового архива. Без внешнего обработчика она ничего пожать не сможет (если вы удалите из системы, к примеру gzip). --- |
#6
|
|||
|
|||
Re: Почему GNU tar не жмет многотомные архивы?
Dmitry E. Oboukhov написал(а) к Eugene Muzychenko в Nov 16 14:58:25 по местному времени:
DO>> для начала tar не умеет и сжимать тоже от слова вообще. > Именно поэтому он предлагает несколько ключей для выбора метода сжатия? :) эти ключи добавили в GNU tar и они делают тот же самый pipe по сути. в общем случае этих ключей может не оказаться в какой-либо другой системе. > Может, какой-нибудь очень древний tar действительно не умел сжимать, > но последние лет десять они все умеют. вполне возможно что скажем в BSD тоже есть ключи но с другим названием ... Терпеть не могу Умку, Броневичок и прочих мажоров. --- Mutt/1.5.21 (2010-09-15) |
#7
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Eugene Muzychenko написал(а) к Sasha Shost в Nov 16 19:26:41 по местному времени:
Привет! 14 Nov 16 13:11, you wrote to me: SS> тар - это для магнитофонной ленты формат Да я, как бы, в курсе. SS> какой такой многотомный архив мог быть с ней? Если ты никогда не видел архивов на нескольких лентах, это не значит, что их не существует. :) Просто в ранних юниксах все было настолько мелким, что вопросов об использовании нескольких лент не возникало в принципе. Что не означает отсутствия этих вопросов в более серьезных системах. SS> тар - не архиватор, совсем Вообще-то, он как раз именно архиватор. Функция сжатия у любого архиватора опциональна. Всего доброго! Евгений Музыченко eu-gene@muzy-chen-ko.net (все дефисы убрать) --- GoldED+/W32-MSVC 1.1.5-b20160322 |
#8
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Eugene Muzychenko написал(а) к Anton Poletayev в Nov 16 19:26:45 по местному времени:
Привет! 14 Nov 16 14:00, you wrote to me: AP> Выбор метода компрессии в ключах конкретной утилиты tar - это AP> всего-лишь рукоятка для удобство вызова внешнего обработчика А, вона как... Я-то думал, он научился жать самостоятельно, а тогда мог бы и резать... Всего доброго! Евгений Музыченко eu-gene@muzy-chen-ko.net (все дефисы убрать) --- GoldED+/W32-MSVC 1.1.5-b20160322 |
#9
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Alexey Vissarionov написал(а) к Eugene Muzychenko в Nov 16 20:42:04 по местному времени:
Доброго времени суток, Eugene! 14 Nov 2016 14:35:22, ты -> All: EM> Добыв бинарник GNU tar 1.26 под ARM, и попытавшись сделать им EM> многотомный архив со сжатием, очень удивился, обнаружив, что EM> tar не умеет жать многотомные архивы. Я тебе более того скажу: он в принципе жать не умеет - за него это делают внешние программы. EM> Это какая-то принципиальная залупа разработчиков? Даже досовские EM> архиваторы начала 90-х чуть ли не поголовно делали сжатые EM> многотомные архивы. Если тебе так понятнее - да: tar создает контейнер для содержимого файлов и метаданных, gzip (bzip2, xz) сжимает этот контейнер, а split нарезает на фрагменты. EM> В обсуждениях предлагается использовать split, но он добавляет EM> суффиксы aa/ab и так далее, а разархиваторы автоматически этого EM> не понимают - нужно сперва склеить куски в один, а при объеме в EM> десяток гигабайт это слегка неудобно. Offtopic-thinking detected. cat backup.tar.gz.* | gzip -cd | tar -x Каждая из этих программ выполняет свою функцию, причем делает это наиболее универсальным способом, что позволяет комбинировать их практически любым потребным пользователю способом. -- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii ... Кто с чем к нам зачем - тот от того и того --- /bin/vi |
#10
|
|||
|
|||
Почему GNU tar не жмет многотомные архивы?
Alexey Vissarionov написал(а) к Sasha Shost в Nov 16 21:01:00 по местному времени:
Доброго времени суток, Sasha! 14 Nov 2016 13:11:36, ты -> Eugene Muzychenko: EM>> очень удивился, обнаружив, что tar не умеет жать многотомные архивы. SS> проснулся, проспав 200 лет SS> тар - это для магнитофонной ленты формат, какой такой многотомный SS> архив мог быть с ней? LMD. RTFM: man tar /-L -- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii ... Кликайте, и вам откликнется! --- /bin/vi |