1.2, BrainFucker (ok), 20:28, 08/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Хм, круто, интересно как шустро работает, а то я последнее время в качестве архивов просто стал использовать squashfs со встроенным сжатием.
| |
|
|
3.10, BrainFucker (ok), 20:45, 08/11/2024 [^] [^^] [^^^] [ответить]
| –2 +/– |
Неудобная утилита создания образов по сравнению с tar. Приходится использовать костыль 'tar | tar2sqfs'.
| |
|
4.27, Аноним (27), 22:25, 08/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Неудобная утилита создания образов по сравнению с tar. Приходится использовать
> костыль 'tar | tar2sqfs'.
Так alias'ом это и заколотить...
| |
|
5.39, BrainFucker (ok), 04:59, 09/11/2024 [^] [^^] [^^^] [ответить]
| –2 +/– |
Да причём тут алиасы, набрать команду руками не проблема, факт то что это дополнительный костыль, на других хостах эта утилита может быть не доступной, а tar есть почти всегда.
| |
|
6.47, Аноним (-), 07:41, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> на других хостах эта утилита может быть не доступной, а tar есть почти всегда.
Ну если применять эти стандарты к сабжу, так на других хостах и этого костыля точно так же быть не обязано. И профит наступает... где и в чем?
| |
|
|
8.77, Аноним (-), 07:59, 11/11/2024 [^] [^^] [^^^] [ответить] | +/– | На них не будет сабжа цепляюшего их как ФС А вот squashfs таки - зацепится обыч... текст свёрнут, показать | |
|
|
|
|
|
5.72, lucentcode (ok), 22:32, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> А tar точно сжимает, а не просто объединяет всё в один файл,
> который далее и требуется сжать ?
tar - это контейнер для файлов, разработанный для архивации данных на магнитную ленту. Он сам по себе ничего не сжимает. Сжатие не сжатого тарбола производится дополнительные компрессорами, упаковщиками. По сути, опции сжатия отвечают за упаковку контейнера(тарбола), но то же самое вы можете сделать и внешним компрессором сами, результат будет абсолютно такой же. У юниксовых архивов, как правило, нет контейнеров для файлов. В отличии от виндовых, где cab, rar, zip и 7z объединяют в себе контейнер, разработанный специально для архивов, с компрессором для сжатия. Unix way за то, чтобы одна утилита делала что-то одно, но делала хорошо. tar изначально делали именно под эту философию. Они только контейнером является, а сжатие любое можно выбрать, отдельно от контейнера. Можете его сжимать, можете шифровать, можете вначале сжать, потом зашифровать. Но, каждый слой будет отдельно от остальных. А не всё вместе, как у виндовых аривов.
| |
|
6.73, Аноним (73), 04:44, 10/11/2024 [^] [^^] [^^^] [ответить] | +1 +/– | А я на примере tar рассказываю о недостатках unix way, рассказываю причём то же ... большой текст свёрнут, показать | |
|
7.74, Аноним (73), 05:05, 10/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
* то пытались отказаться от tar
* tar - это tape archive
---
Добавлю, что других сферах lossless-сжатия разделение не прижилось (условно .wav.xz) и что архиваторы-компрессоры так же не мешают использовать внешний компрессор (отключаем сжатие и делаем .wim.zst).
| |
7.80, Аноним (80), 14:04, 11/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> от замены LZMA2 на BZip2 в 7z индексы не отвалятся
Жаль 7z ни права доступа файлов не хранит (POSIX), ни метадату (NTFS), т.ч. tar он заменить не в состоянии (rar для ntfs вроде бы может).
| |
|
|
|
4.67, Аноним (6), 20:11, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
Что ты там такого особенного делаешь что тебе не удобно? "mksquashfs folder folder.sqfs -comp zstd". Куда уж проще?
| |
|
5.68, BrainFucker (ok), 20:42, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Что ты там такого особенного делаешь что тебе не удобно? "mksquashfs folder
> folder.sqfs -comp zstd". Куда уж проще?
Во-первых, 'tar -cJvf /tmp/test.tar.xz /tmp/path/to/file1.txt' при добавлении файла в архив сохранит оригинальный путь к файлу, mksquashfs тупо бросит файл в корень.
Во-вторых, у тара привычнее работа с фильтрами по паттернам include/exclude.
| |
|
6.69, Аноним (6), 21:06, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
С опцией "-no-strip" mksquashfs так же будет сохранять пути. Да и с фильтрами проблем не заметил: -wildcards -e -- и перечисляешь всё что хочешь исключить из архива.
| |
|
7.71, BrainFucker (ok), 21:35, 09/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
Хм, интересно, в 'man mksquashfs' эта опция никак не упомянута, а в 'mksquashfs -help' есть, там даже обнаружилась ещё одна нужная мне опция '-one-file-system'.
И он даже может так же читать tar из stdin с опцией '-tar', тогда и 'tar2sqfs' не нужен.
Я так понял это появилось где-то в версии 4.5, но manpage не обновили (косяк мейнтейнеров?).
| |
|
|
|
|
3.32, Аноним (32), 22:58, 08/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
Дурацкий вопрос.
Тем что не позволяет, блин, монтировать уже существующий огромный rar–архив как файловую систему. А это питоноподелие — позволяет. И позволяет достаточно шустро с ним работать.
| |
|
4.43, Аноним (43), 05:26, 09/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
Почти все форматы архивов/сжатия поддерживают так называемое solid режим, в таком варианте все файлы архива "склеиваются" с друг другом и считаются одним большим блоком (или несколькими если архив по размеру большой, исходя из заданного размера блока в опциях).
Так вот в таком режиме как ты не выперживайся и не кхе-кхе-кай в микрофон, а распаковать из такого архива отдельно указанный файл, без распаковки всех впереди идущих данных - нельзя. Те кто заявляют что можно, вешают вам лапшу, либо это не solid архив.
| |
|
5.44, Аноним (43), 05:27, 09/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
Стоит добавить что в том же rar5 режим solid позволяет сжать данные ещё лучше. Но все зависит от типа данных и количества файлов.
| |
5.48, Аноним (-), 07:45, 09/11/2024 [^] [^^] [^^^] [ответить] | +/– | Ну вот да, solid RAR а это почти все RAR на минуточку распаковывать из середин... большой текст свёрнут, показать | |
5.55, Аноним (55), 13:29, 09/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Так вот в таком режиме как ты не выперживайся и не кхе-кхе-кай в микрофон, а распаковать из такого архива отдельно указанный файл, без распаковки всех впереди идущих данных - нельзя. Те кто заявляют что можно, вешают вам лапшу, либо это не solid архив.
Чел, TAR.GZ - это чисто по определению solid архив. Дальше открываем страницу поекта:
Care was taken to achieve fast random access inside compressed streams for bzip2, gzip, xz, and zstd and inside TAR files by building indices containing seek points
Что конкретно тебе непонятно?
| |
5.64, Аноним (32), 16:08, 09/11/2024 [^] [^^] [^^^] [ответить] | –1 +/– | Если архив solid 8212 это просто означает, что в нём нет индекса Это b не г... большой текст свёрнут, показать | |
|
|
|
2.11, Megacock (ok), 20:47, 08/11/2024 [^] [^^] [^^^] [ответить]
| –2 +/– |
А что? Есть какой-то иной способ погулять по tar.gz или по tar.bz2 кроме, как сперва распаковать tar ? чудес не бывает. по крайней мере с этими архивами она будет работать очень медленно и требовать место для распаковки. и чтобы проиндексировать содержимое надо будет как минимум прогуляться по всему tar. Там нет готового списка. С остальными может и проще. Но это очередной комбайн. ПО написанное под конкретную задачу с этим справится быстрее. Что только не делают админы чтобы не учить программирование.
Мне кажется, если бы другие архиваторы научились бы хранить права на файлы и xattr файловых систем linux, то tar бы постепенно умер.В прочем, и у других архиваторов хватает своих заморочек. Вангую, разработчики слепили некую как им кажется убервафлю, которая в нужном им направлении справляется лучше чем другие приложения, но когда дойдет до широкого использования, то скорее всего не быстрее а очень даже наоборот. Плюс python со всеми его версиями и зависимости, не только лишь все справятся с установкой, так что широкого распространения не получит.
| |
|
3.14, Аноним (14), 21:06, 08/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
> по крайней мере с этими архивами она будет работать очень медленно и требовать место для распаковки
Будет как раз быстро. В этом кау бы и суть проекта, не? Место для распаковки не нужно - при построении индекса она происходит на лету.
> Но это очередной комбайн. ПО написанное под конкретную задачу с этим справится быстрее.
Это и есть ПО, написанное под конкретную задачу - монтирование архивов в FS - с которой оно справояется отлично.
> Вангую, разработчики слепили некую как им кажется убервафлю
А можно не ванговать, а прочесть официалтную страницу проекта. Там подробно описано, как он работает:
Care was taken to achieve fast random access inside compressed streams for bzip2, gzip, xz, and zstd and inside TAR files by building indices containing seek points.
| |
3.15, BrainFucker (ok), 21:09, 08/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
По-моему, распаковывать архив совсем не нужно, его достаточно прочитать для составления индекса на лету, который можно сохранить в кеше на диске, а дальше уже по индексу обращаться в конкретные места архива за файлами на лету. gzip, xz и тому подобные вроде как не требуют декомпрессировать все данные, они сжимают отдельными блоками, насколько помню, поэтому имея индекс, должно быть можно обращаться почти в произвольное место архива.
| |
|
4.17, Megacock (ok), 21:25, 08/11/2024 [^] [^^] [^^^] [ответить]
| –1 +/– |
А дальше тебе к примеру надо изменить файл где-то в середине архива на 20 Gb. Как это сделать? Прилепить костыль с отдельным архивом где будут храниться измененные файлы? Индекс это сам по себе костыль. Я примерно так же писал в свое время ПО для архивации почты Mdaemon, где в sqlite записывал индекс файлов в архиве, от кого/ к кому/дата/тема/"имя файла в архиве", поскольку в тот момент мне слишком часто приходили запросы - у нас менеджер увольняется - поднимите всю его переписку за несколько лет. А там сотни тысяч файлов в eml-формате в двух папках. Входящие и исходящие, на другое этот почтовый сервер тогда был не готов. А так индекс - месячные архивы разложенные по папкам. Задаешь параметры поиска и оставляешь на пару суток для извлечения.
| |
|
5.20, Аноним (55), 21:37, 08/11/2024 [^] [^^] [^^^] [ответить]
| +3 +/– |
> А дальше тебе к примеру надо изменить файл где-то в середине архива на 20 Gb.
Очевилно, сабж сделан в первую очередь для чтения. Но если надо модификации, то он их тоже поддерживает:
https://github.com/mxmlnkn/ratarmount?tab=readme-ov-file#writable-mounting
Причем оно тоже будет быстрее, потому что ты можешь прозрачно для FS накопить изменения (удаления и добвления) ща несколько дней, а потом в конце сделать commit, тем чамым препесоздав архтв единожды, а не на каждый файл.
> Прилепить костыль с отдельным архивом где будут храниться измененные файлы? Индекс это сам по себе костыль.
Я смотрю, ты мастер ментальной акробатики: распаковывает архив - костыль, не распаковывает - костыль, пересоздать архив за раз, а не на каждый файл - тоже костыль. Ты по инерции споришь?
| |
|
6.22, Megacock (ok), 22:04, 08/11/2024 [^] [^^] [^^^] [ответить]
| –1 +/– |
>[оверквотинг удален]
> то он их тоже поддерживает:
> https://github.com/mxmlnkn/ratarmount?tab=readme-ov-file#writable-mounting
> Причем оно тоже будет быстрее, потому что ты можешь прозрачно для FS
> накопить изменения (удаления и добвления) ща несколько дней, а потом в
> конце сделать commit, тем чамым препесоздав архтв единожды, а не на
> каждый файл.
>> Прилепить костыль с отдельным архивом где будут храниться измененные файлы? Индекс это сам по себе костыль.
> Я смотрю, ты мастер ментальной акробатики: распаковывает архив - костыль, не распаковывает
> - костыль, пересоздать архив за раз, а не на каждый файл
> - тоже костыль. Ты по инерции споришь?
Все что не задумано как штатная функция - костыль. Очевидно tar не задумывался как архиватор позволяющий менять содержимое архива, и читать его иначе как последовательно. Все остальное - костыли. Костыли могут быть полезные(они помогают людям передвигаться), но это костыли. Человек на костылях рекордов не поставит. Разве что среди других людей на костылях.
Дав каждом языке, не только в питоне есть приложение или библиотека позволяющая монтировать tar через fuse. Или "гулять" по tar параллельно, тем не менее суммарное количество ллей которые ими пользуются гораздо меньше чем tar - узкая специализация этих приложений и заточенность на решение конкретной задачи. Тебе подходит? Повезло.
| |
|
7.28, Аноним (14), 22:25, 08/11/2024 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Все что не задумано как штатная функция - костыль. Очевидно tar не задумывался как архиватор позволяющий менять содержимое архива, и читать его иначе как последовательно. Все остальное - костыли.
Надеюсь, ты TAR читаешь сугубо с бобин магнитной ленты? Ведь TAR именно для этого задумывался (оттого и упомянутые тобой особенности), а не для хранения на жестком диске. Хранить его на жестком диске - это такой костыль!
| |
|
|
9.45, Аноним (43), 05:33, 09/11/2024 [^] [^^] [^^^] [ответить] | –1 +/– | tar это контейнер Как контейнер и дремучий формат zip абсолютно ничем не хуже ... текст свёрнут, показать | |
|
|
|
|
|
4.57, Аноним (55), 13:42, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> gzip, xz и тому подобные вроде как не требуют декомпрессировать все данные, они сжимают отдельными блоками, насколько помню, поэтому имея индекс, должно быть можно обращаться почти в произвольное место архива.
Все правильно, именно так сабж и работает. Но местные уникумы наставили тебе минусов, ибо про solid сжатие они слышали, а про размер словаря - нет.
| |
|
3.53, Аноним (53), 09:50, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> tar бы постепенно умер
Прежде чем желать ему смерти, умник, попробуй без него сжать gz*/bz*/lz*/zstd/etc директорию с файлами. Узнаешь много нового о сжатии файлов и том, какую роль в нём выполняет tar.
"Им бы понедельники взять да отменить..."
| |
|
4.75, Аноним (73), 05:46, 10/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
У тебя начало цитаты потерялось:
> Мне кажется, если бы другие архиваторы научились бы хранить права на файлы и xattr файловых систем linux, то tar бы постепенно умер.
.
| |
|
|
|
1.3, Аноним (3), 20:29, 08/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| –3 +/– |
Все подобные утилиты - зло, и удачи вам в открытии архива на несколько гигабайт.
> ratarmount для ускорения навигации по архиву заранее индексирует содержимое для эффективного случайного доступа к данным
Угу. По-русски при обращении к архиву он полностью распаковывается (скорее всего, куда-нибудь на винт). Жесть и ад.
| |
|
2.7, Аноним (7), 20:34, 08/11/2024 [^] [^^] [^^^] [ответить]
| +2 +/– |
Чем подобная утилита отличается от луп-образа udf, особенно при наличии индекса?
>скорее всего, куда-нибудь на винт
Зачем писать то, что можно хранить в памяти?
| |
2.12, Аноним (14), 20:54, 08/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
> удачи вам в открытии архива на несколько гигабайт
А что, по вашему, должно пойти не так? Естественно, при первом монтировании он должен прочитать весь TAR.GZ, дабы построить индекс. Но то же самое произойдет и при обычной распаковке.
> По-русски при обращении к архиву он полностью распаковывается (скорее всего, куда-нибудь на винт). Жесть и ад.
Только при первом обращении. И нет не на винт, а на лету.
Со страницы проекта:
Random Access: Care was taken to achieve fast random access inside compressed streams for bzip2, gzip, xz, and zstd and inside TAR files by building indices containing seek points.
| |
2.61, КО (?), 14:57, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
Неважно сколько гигабайт, важнее как сильно сжат
| |
|
|
2.9, Аноним (9), 20:44, 08/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
а в чём заключается необходимость похорон докера? Вас докеры обижают возле дома? Попробуйте познакомиться с podman, containerd и прочими альтернативами. Возможно, они помогут вам победить докеров.
| |
|
3.13, Аноним (14), 20:55, 08/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
> а в чём заключается необходимость похорон докера?
Да забей, персонаж не понимает, что несет.
| |
|
|
1.8, InuYasha (??), 20:38, 08/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Отключали эту ерунду в nc, отключали в far, отключали zipfldr.dll аж с win9x, теперь, нидайбох, ещё и в Линуксе...
| |
1.16, Аноним (6), 21:19, 08/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Чёт у меня не работает ничего... Архив вроде монтируется, но в точке монтирования пусто.
| |
1.19, Аноним (19), 21:28, 08/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| –4 +/– |
>Данные извлекаются по мере необходимости без предварительной распаковки всего архива.
удачи вам поработать с непрерывными архивами - без предварительного извлечения всего куда нибудь в темпы, для чтения одного файла каждый раз будет распаковываться весь архив заново
| |
|
2.21, Аноним (55), 21:43, 08/11/2024 [^] [^^] [^^^] [ответить]
| +1 +/– |
> для чтения одного файла каждый раз будет распаковываться весь архив заново
Вы когда-нибудь научитесь читать новости дальше заголовка?
В первом же параграфе: "Данные извлекаются по мере необходимости без предварительной распаковки всего архива. "
| |
|
3.34, Аноним (19), 01:08, 09/11/2024 [^] [^^] [^^^] [ответить]
| –4 +/– |
Давай, я угадаю - ты просто не знаешь что такое "непрерывный архив" и как с ними работать даже представления не имеешь?
| |
|
4.56, Аноним (55), 13:36, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> ты просто не знаешь что такое "непрерывный архив" и как с ними работать даже представления не имеешь
Ты наверное знатно удивишься, узнав, что TAR.GZ и прочие TAR.* являются непрерывными архивами чисто по определению.
Может, так будет понятней (с официальной страницы проекта):
Care was taken to achieve fast random access inside compressed streams for bzip2, gzip, xz, and zstd and inside TAR files by building indices containing seek points.
| |
|
5.65, Аноним (19), 19:22, 09/11/2024 [^] [^^] [^^^] [ответить]
| –1 +/– |
На, читай, неуч:
Непрерывный архив (англ. solid archive) — файловый архив, упакованный таким образом, что все сжимаемые файлы рассматриваются как один непрерывный поток данных. При упаковке каждого файла (кроме первого) используется информация, содержащаяся в предыдущих файлах. В обычных архивах каждый файл сжимается и хранится независимо от других.
| |
|
6.70, Аноним (55), 21:23, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
Молодец, ты привел в пример буквально описание сути TAR.* архивов. У тебя "смотрю в книгу - вижу фигу"?
| |
|
|
|
|
|
1.36, 270 (?), 02:15, 09/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Эта новость не альтовцы случаем сюда турнули?
А, то систему griggorii давал уже где то как несколько лет назад и да , там уже это было. А,те только проснулись
| |
|
2.42, BrainFucker (ok), 05:12, 09/11/2024 [^] [^^] [^^^] [ответить]
| –3 +/– |
> *Total commander вошёл в чат*
Да это не только Total Commander умел, Krusader тоже может. Это удобно только когда нужно быстро просмотреть содержимое архива. Но монтирование это другое, это позволяет произвольным приложениям иметь доступ к файлам.
Кстати, в KDE была утилита KIO Mount, кажется она тоже может монтировать архивы и многое другое.
| |
|
1.50, Аноним (50), 08:12, 09/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Вот интересно, а почему не делать tar, где первым файлом в /tmp/ идёт индекс этого архива? А в утилитах - проверять , что первый элемент - это архив, проверять соответствие первого элемента всему тарболу, и юзать?
| |
|
2.58, Аноним (55), 13:49, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
Потому что нафиг такие извращения не нужны.
TAR - это буквально про архивацию: раз целиком упаковал, пару раз в год целиком распаковал. А для постоянных модификаций или частичной распаковки есть ZIP и 7Z.
| |
|
3.59, Аноним (59), 14:24, 09/11/2024 [^] [^^] [^^^] [ответить]
| +3 +/– |
Собственно, поэтому НИКОГДА tar и не использую. Но ведь никто не мешает к чужим архивам приделывать этот заголовок банальной конкатенацией.
| |
3.66, Аноним (6), 20:07, 09/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Потому что нафиг такие извращения не нужны.
Но и мешать не будут
| |
|
2.78, Аноним (-), 08:03, 11/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Вот интересно, а почему не делать tar, где первым файлом в /tmp/
> идёт индекс этого архива?
Вроде в каком-то из (гнутых?) субформатах TAR даже есть как раз опция когда индекс таки - где-то в начале архива - все же пристроить можно. Но то что это все будет в взятом наобум .tar.gz или чем там - ниоткуда не следует.
| |
|
1.63, Аноним (9), 15:33, 09/11/2024 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Посоветуйте, пожалуйста, фс или формат архива с фичей WORM? UDF не работает, не смотря на свой собственный ман.
| |
|
2.79, Аноним (-), 08:04, 11/11/2024 [^] [^^] [^^^] [ответить]
| +/– |
> Посоветуйте, пожалуйста, фс или формат архива с фичей WORM? UDF не работает,
> не смотря на свой собственный ман.
Squashfs тут вон советуют. Оно так то файловая система, так что заодно и монтируется сразу без эвона каких мегакостылищ на питоне и рандомный доступ сразу нормальный.
| |
|
|