Обсуждение архиваторов

Софт под Linux, разные программы, но только связанные с Linux

Модератор: /dev/random

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

InterChaynik писал(а):
08.01.2010 18:56
а tar так вообще, по-моему, вообще не сжимает

угу. так и есть - tar собирает файлы в архив, а потом этот архив (1 файл) сжимается например bzip2.
попробуйте более новый lzma - он лучше жмёт.
InterChaynik писал(а):
08.01.2010 18:56
7Zip (грубо говоря) - это не то только архив, но и программа такая

так и есть. установите его на свой Linux, у вас он в репах должен быть...
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
petyanamlt
Сообщения: 1773
ОС: Kubuntu 16.04(x86-64)KDE 5.8.7

Re: Обсуждение архиваторов

Сообщение petyanamlt »

Виндовс 7Zip (грубо говоря) - это не то только архив, но и программа такая, а есть ли аналогичная под Линукс, чтоб как в Винде могла похвастаться мощью, всеядностью (поддерживает очень много форматов) и функционалом?


Для себя альтернативы не нашел, win 7zip это еще и не плохой файл мэнэджер, что при создании архивов очень иногда удобно.
Это единственная программа которую я использую в wine.
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Обсуждение архиваторов

Сообщение rm_ »

7Zip (грубо говоря) - это не то только архив, но и программа такая, а есть ли аналогичная под Линукс, чтоб как в Винде могла похвастаться мощью, всеядностью (поддерживает очень много форматов) и функционалом?

В *никс-системах программы для работы с архивами делятся на собственно архиваторы (с интерфейсом командной строки) и менеджеры архивов (GUI).
Вам нужен именно последний. Для GNOME ставьте file-roller, для KDE - ark, для Xfce - xarchiver.
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

rm_ писал(а):
08.01.2010 19:33
В *никс-системах программы для работы с архивами делятся на собственно архиваторы (с интерфейсом командной строки) и менеджеры архивов (GUI).

В Windows в данном случае также. Так называемый пакет 7zip включает в себя собственно 7z, консольный архиватор, и файловый менеджер к нему.

InterChaynik писал(а):
08.01.2010 18:56
1) bzip2 и .tar.bz2 что-то слабо как-то сжимают, а tar так вообще, по-моему, вообще не сжимает, а иногда, архив tar размером даже больше чем сам файл;

bzip2 мне вообще не очень нравится... Может, раньше было актуально, до lzma. Плохо, что в portage бинарные пакеты им и сжимаются, пора бы уже переходить на lzma =)
lzma хорош тем, что он хорошо сжимает (правда, долго), и при этом относительно быстро распаковывает.
gzip распаковывает ещё быстрее, сжимает тоже быстро, но, к сожалению, хуже сжимает (файлы больше весят в результате). и тоже устарел наверное, как и bzip2, а то и больше.

Да, кстати, и у gzip/bzip2/lzma есть параметры - степень сжатия. Можно увеличить до посинения, пожертвовав скоростью (если у вас мощная машина), либо уменьшить, если вам не столь критичен размер.

А tar - это архиватор, он вообще не сжимает, его задача объединить каталог в один файл, и он с ней замечательно справляется. :)
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Обсуждение архиваторов

Сообщение rm_ »

В *никс-системах программы для работы с архивами делятся на собственно архиваторы (с интерфейсом командной строки) и менеджеры архивов (GUI).

В Windows в данном случае также. Так называемый пакет p7zip (если не ошибся в названии) включает в себя собственно 7z, консольный архиватор, и файловый менеджер к нему.

Какая каша. :(
Если не уверены в чём-то, то лучше наберите в гугле, это ведь всего секунду занимает, или не пишите.
1) p7zip - это "A command line port of the 7zip utility to Unix, Mac OS X and BeOS.", т.е. p7zip - это никак не "в Windows", да и графическую оболочку на *nix этот проект не портирует.
2) Да, хотя Windows-версия 7-Zip и включает в себя как текстовый (7z.exe/7za.exe), так и графический (7zFM.exe) варианты архиватора, графический интерфейс текстовыми экзешниками не пользуется, вместо этого напрямую подключая и вызывая соответствующие библиотеки (DLL) с функциями сжатия и распаковки. Это легко можно увидеть в менеджере задач во время его работы.

P.S. http://xkcd.com/386/ :D
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

Flaming писал(а):
08.01.2010 19:45
Да, кстати, и у gzip/bzip2/lzma есть параметры - степень сжатия. Можно увеличить до посинения, пожертвовав скоростью (если у вас мощная машина), либо уменьшить, если вам не столь критичен размер.

параметр-то есть, но для bzip2 там стоит по дефолту -9 (макс), и больше не сделать. для bzip2 и lzma всё упирается в размер блока для алгоритма BWT, что у bzip2 -9 всего-лишь 900К - по нынешним меркам - ужасно мало.
gzip использует совсем другой алгоритм, а именно LZ77/78, тот-же что и в zip, потому примерно так-же работает (быстро, за то плохо жмёт).
rar (и если не ошибаюсь 7z) используют PPMD, это жутко медленно (причём как на распаковке, так и на запаковке), однако даёт несколько процентов ужатия по сравнению с BWT. ИМХО - не стОит оно того.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
Иван Шихалев
Сообщения: 167
Статус: принципиальный дилетант
ОС: Gentoo Linux

Re: Обсуждение архиваторов

Сообщение Иван Шихалев »

3) Для Linux есть еще q7z — что-то типа GUI-Wizard'а, чтобы выбрать параметры сжатия и прочее для p7zip.
Иван Шихалев
shikhalev.org
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Обсуждение архиваторов

Сообщение rm_ »

7z) используют PPMD, это жутко медленно (причём как на распаковке, так и на запаковке),

7-Zip использует PPMD только для текстовых файлов, именно на них этот алгоритм даёт наиболее впечатляющий эффект.
В остальных случаях, он сжимает с помощью LZMA.

Вообще, для меня выбор архиваторов выглядит так:
- tar.lzo (lzop), если нужна максимальная скорость;
- tar.lzma (раньше) с помощью lzma-utils, tar.xz с помощью xz-utils (теперь), если нужно максимальное сжатие;
- 7z, если результирующие архивы нужно отправлять в другие ОС (на винду);
- tar.gz в остальных случаях, когда всё вышеперечисленное не волнует.
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

Исправил. :) действительно перепутал.

rm_ писал(а):
08.01.2010 19:50
2) Да, хотя Windows-версия 7-Zip и включает в себя как текстовый (7z.exe/7za.exe), так и графический (7zFM.exe) варианты архиватора, графический интерфейс текстовыми экзешниками не пользуется, вместо этого напрямую подключая и вызывая соответствующие библиотеки (DLL) с функциями сжатия и распаковки. Это легко можно увидеть в менеджере задач во время его работы.

Не знал... Зато по-моему, тотал коммандир как раз консольную версию архиватора запускает в фоне. По крайней мере в процессах такое висит, может, просто называется также, не копал.
Не важно всё это. :)
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

rm_ писал(а):
08.01.2010 20:16
7-Zip использует PPMD только для текстовых файлов, именно на них этот алгоритм даёт наиболее впечатляющий эффект.
В остальных случаях, он сжимает с помощью LZMA.

а как он определяет, что файл текстовый? а какой процент ошибок? а русский текст текстом считает?
кстати, на многих текстах BWT (из LZMA) даёт намного более лучший результат, нежели PPMD, т.ч. выбор спорен... У меня нет под рукой 7z, потому не могу проверить.
rm_ писал(а):
08.01.2010 20:16
Вообще, для меня выбор архиваторов выглядит так:
- tar.lzo (lzop), если нужна максимальная скорость;
- tar.lzma (раньше) с помощью lzma-utils, tar.xz с помощью xz-utils (теперь), если нужно максимальное сжатие;
- 7z, если результирующие архивы нужно отправлять в другие ОС (на винду);
- tar.gz в остальных случаях, когда всё вышеперечисленное не волнует.

хм... а у меня так:
tar.bz2 почти всегда.
(tar.|).gz если очень важна скорость упаковки.
tar если очень важна скорость, либо я в архив планирую добавлять/удалять (причём быстро).
все эти lzma и 7z дают копеечную экономию (вот только не надо примеров! да, есть файлы которые жмутся лучше в полтора раза, но их очень мало).
tar.bz2 отлично открывается в венде, не вижу смысла в 7z.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
strephil
Сообщения: 47
ОС: GNU

Re: Обсуждение архиваторов

Сообщение strephil »

чаще использую gzip, потому что xzf написать очень просто… xjf — как-то уже сложнее, двумя руками…
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

strephil писал(а):
08.01.2010 20:40
чаще использую gzip, потому что xzf написать очень просто… xjf — как-то уже сложнее, двумя руками…

хм... мне как раз проще и быстрее xjf ;)
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

Кстати, ещё такой момент по поводу архивов. Мне кажется немного неудобным система того, что сначала файлы упаковываются в архив, а потом этот архив сжимается. Это просто в реализации, но из-за этого тяжелее просмотреть архив, или распаковать один-два файла оттуда.
Было бы интереснее сжать каждый файл отдельно, а потом ВСЁ ЭТО упаковать в архив. Конечно, так можно сделать скриптом, использую те же lzma и tar, а вот, похоже, команды наподобие tar cjvf, только для этого, не существует. :( или я не прав?
Да, и 7zip, rar как вообще делают? Как в первом способе, или как во втором?

К примеру, для бекапов всё удобнее хранить в одном архиве, и чтобы была возможность быстро распаковать часть файлов. не трогая при этом все остальные.

strephil писал(а):
08.01.2010 20:40
чаще использую gzip, потому что xzf написать очень просто… xjf — как-то уже сложнее, двумя руками…

Вот уж не думал, что это будет ложка дёгтя/мёда. :) Мне как-то пофик, что писать.
Неудобно разве писать tar -cvf --lzma бла-бла-бла, это да, с этим соглашусь :(
Спасибо сказали:
strephil
Сообщения: 47
ОС: GNU

Re: Обсуждение архиваторов

Сообщение strephil »

Flaming,
RAR, насколько мне известно (основной источник — Википедия) каждый файл сжиммает отдельно, потом уже объединяет, при этом метод сжатия может варьироваться в зависимости от типа файла.

для больших бэкапов, наверное, удобно использовать squashfs или что-то подобное? (если не требуется дописывать, добавлять)
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Обсуждение архиваторов

Сообщение bormant »

rar умеет и сжатие+объединение, и объединение+сжатие (solid архивы, задаётся параметром при создании архива).
Спасибо сказали:
Аватара пользователя
Иван Шихалев
Сообщения: 167
Статус: принципиальный дилетант
ОС: Gentoo Linux

Re: Обсуждение архиваторов

Сообщение Иван Шихалев »

strephil писал(а):
08.01.2010 22:32
RAR, насколько мне известно (основной источник — Википедия) каждый файл сжиммает отдельно, потом уже объединяет, при этом метод сжатия может варьироваться в зависимости от типа файла.

Вроде бы я где-то читал, что он файлы объединяет в группы (по маске), и вот они уже сжимаются каждая отдельно... Но источник сейчас не вспомню.
Иван Шихалев
shikhalev.org
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

Иван Шихалев писал(а):
08.01.2010 22:35
Вроде бы я где-то читал, что он файлы объединяет в группы (по маске), и вот они уже сжимаются каждая отдельно... Но источник сейчас не вспомню.

нет, не так. рар сортирует по расширениям, из-за чего растёт степень сжатия солидных архивов.
кто мешает это сделать нам? man sort
в том году уже был разбор полётов.
я привёл 2 решения не непрерывных архивов:
1) bzip2 * |tar
2) просто bzip2 *, без tar'а, так храним. например я храню ~600 бекап-файлов, не напрягает.
strephil писал(а):
08.01.2010 22:32
RAR, насколько мне известно (основной источник — Википедия) каждый файл сжиммает отдельно, потом уже объединяет, при этом метод сжатия может варьироваться в зависимости от типа файла.

ага. это поведение по умолчанию. и его можно изменить.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
InterChaynik
Сообщения: 345
ОС: Windows/Linux

Re: Обсуждение архиваторов

Сообщение InterChaynik »

petyanamlt писал(а):
08.01.2010 19:28
Для себя альтернативы не нашел, win 7zip это еще и не плохой файл мэнэджер, что при создании архивов очень иногда удобно.
Это единственная программа которую я использую в wine.

А у меня 7zip под wine чего то не пошёл...
Линукс люблю, но Гейтса уважаю.
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Обсуждение архиваторов

Сообщение rm_ »

нет, не так. рар сортирует по расширениям, из-за чего растёт степень сжатия солидных архивов.
кто мешает это сделать нам? man sort

Вот что придумалось:

Код: Выделить всё

find $* | tar --no-recursion -T - -cO | xz -c  > unsorted.tar.xz
find $* | rev | sort | rev | tar --no-recursion -T - -cO | xz -c  > sorted.tar.xz

И результат:

Код: Выделить всё

-rw-r--r-- 1 rm rm 431M 2010-01-09 01:55 sorted.tar.xz
-rw-r--r-- 1 rm rm 433M 2010-01-09 01:55 unsorted.tar.xz

Исходные файлы - 1 гигабайт виндовых программ (установленных).
Спасибо сказали:
Аватара пользователя
petyanamlt
Сообщения: 1773
ОС: Kubuntu 16.04(x86-64)KDE 5.8.7

Re: Обсуждение архиваторов

Сообщение petyanamlt »

А у меня 7zip под wine чего то не пошёл...


Какая версия? Надеюсь не x86_64? Все остальные работают без проблем. Можно даже сказать, как родные.
Да, и надо качать .exe а не .msi
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

drBatty писал(а):
08.01.2010 23:09
в том году уже был разбор полётов.
я привёл 2 решения не непрерывных архивов:
1) bzip2 * |tar
2) просто bzip2 *, без tar'а, так храним. например я храню ~600 бекап-файлов, не напрягает.
Цитата(strephil @ 8th January 2010 - в 23:32) *

Ага, я тоже так подумал, возможно, реализую для бекапов. Лучше lzma.tar, чем tar.lzma. Наверное.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

rm_ писал(а):
09.01.2010 00:03
Исходные файлы - 1 гигабайт виндовых программ (установленных).

ага. этот приём обычно даёт ничтожный результат. можно сгруппировать файлы хитрее:
отсортировать так, что-бы рядом были txt, htm, html
за ними c, cpp
где-то потом не сортируемые...
а не просто как у вас - сортировка с конца имени. в раре это реализовано, однако так-же не даёт особого выигрыша.
хотя, во первых у вас c и cpp файлы совсем не рядом - что очень плохо. рядом с ними должны быть h и hpp, а вы их раскидали, но даже если по расширению, то между ними будут jpg.
Если-бы у вас были-бы разнородные файлы, толком названные (а расширения в вендовых программах ужасные)...

В любом случае, практический выигрыш не велик, и не стОит извращаться. ИМХО.

Flaming писал(а):
09.01.2010 01:25
Ага, я тоже так подумал, возможно, реализую для бекапов. Лучше lzma.tar, чем tar.lzma. Наверное.

какой размер бекапа, и какой размер блока для BWT у LZMA? если у вас в один блок влезет два бекапа (практически идентичные), то этот блок будет сжат вдвое. если влезет 20 бекапов в блок - в 20 раз. но только если архив непрерывный, а бекапы похожие.

PS: Вот как! Оказывается LZMA это модификация LZ (как не странно), тогда всё совсем иначе...
А я думал там BWT...
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
rm_
Сообщения: 3340
Статус: It's the GNU Age
ОС: Debian

Re: Обсуждение архиваторов

Сообщение rm_ »

Ещё провёл эксперимент, раз уж офтопим.
Почтовый каталог (55 мегабайт писем) сжал разными методами:

Код: Выделить всё

38833422 байт = mail.tar.lzo
28818421 байт = mail.tar.gz
26124786 байт = mail.tar.bz2
18628747 байт = mail.7z
18207152 байт = mail.tar.xz
18157911 байт = mail.tar.lzma

Похоже всё идёт к тому, что новым стандартом де-факто становится xz. Его поддержку добавили в GNU tar, в виде ключа -J.
--lzop и --lzma там тоже поддерживаются, но только вот так, без короткого варианта ключа.
Мне нравится, что tar.xz можно сократить до .txz, и это ни с чем не спутаешь (в отличие от tlz, который непонятно кому из lzip/lzop/lzma принадлежит).
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Обсуждение архиваторов

Сообщение drBatty »

rm_ писал(а):
09.01.2010 03:28
Похоже всё идёт к тому, что новым стандартом становится xz.

Код: Выделить всё

109092 db.sql
 28828 db.sql.6.gz
 28440 db.sql.9.gz
 22484 db.sql.bz2
 19240 db.sql.6.xz

размер в блоках по 1К.
как видно, xz несколько лучше сжимает чем bz2, но какой ценой!! Оно жрёт 100Мб памяти, и тратит в разы больше времени чем bzip2! bzip2 затрачивает 7.6Мб. Проверить xz с ключом -9 не удалось: он запросил почти 700Мб, а у меня всего 504, потому всё стало жутко свопится и тормозиться.

ЗЫЖ пойду, напишу свой сжиматель на BWT, если он будет жрать те-же сотни метров памяти, то, видимо, сжимать будет покруче xz.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

drBatty, а bzip2 почти не отличается от gzip, даёт мизерную экономию. Не лучше ли тогда gzip использовать? Он таки побыстрее.
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5456
ОС: Gentoo

Re: Обсуждение архиваторов

Сообщение /dev/random »

iУведомление от модератора
Тема переименована. Возможно, в будущем будет перенесена в один из разговорных разделов - смотря в какую сторну обсуждение повернётся.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 21432
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Обсуждение архиваторов

Сообщение Bizdelnick »

petyanamlt писал(а):
09.01.2010 00:44
А у меня 7zip под wine чего то не пошёл...


Какая версия? Надеюсь не x86_64? Все остальные работают без проблем. Можно даже сказать, как родные.
Да, и надо качать .exe а не .msi

Ну вы даёте, люди... А Q7zip не пробовали?
Вот только в 7z, как я понимаю, атрибуты файлов не сохраняются, в отличие от tar.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
petyanamlt
Сообщения: 1773
ОС: Kubuntu 16.04(x86-64)KDE 5.8.7

Re: Обсуждение архиваторов

Сообщение petyanamlt »

Ну вы даёте, люди... А Q7zip не пробовали?

Да пробовал, ничо конечно, но по мне удобней двух панельный архиватор, привычка.
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
Спасибо сказали:
Flaming
Сообщения: 2579

Re: Обсуждение архиваторов

Сообщение Flaming »

А krusader? :)
Спасибо сказали:
Аватара пользователя
petyanamlt
Сообщения: 1773
ОС: Kubuntu 16.04(x86-64)KDE 5.8.7

Re: Обсуждение архиваторов

Сообщение petyanamlt »

А krusader?

A rar архивы? Больно часто такие попадаются.
MSI 990FXA-GD80 SocketAM3+ / FX 8350 / Geforce gtx670 4GB / 4xHDD - 2000 -2х500 (Velociraptor) - 240ssd под Kubuntu / 16Gb RAM DDR3 1600 / TV TBS 6281. Ну и разгон естественно, жить без этого не могу.
(mail agent) petyanamlt собака маил.ру
Спасибо сказали: