LINUX.ORG.RU

RheaVFS — прямой доступ к содержимому архивов


0

0

Ярослав Сикора предложил набор патчей для ядра версии 2.6.23, позволяющий интерпретировать файл с именем оканчивающимся на символ "^", как скрытый каталог. Таким образом возможен прямой доступ к компонентам архивов: archive.tar.gz^/README или, например, secret.gpg^/phonebook. Непосредственно, доступ осуществляется используя модули FUSE.

В данный момент RheaVFS имеет поддержку zip, tar, bzip2, gzip, gpg

>>> Подробности

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

> домашнее заданее - узнать, что значит буква "U" в слове "fuse". потом начинать "аналлизировать" новость заново

Сначала неверно понял фразу в новости. Там говориться про патч ядра, который позволяет FUSE ... Сейчас бегло просмотрел содержание патча. Видимо вы правы, затронут только userspace.

skwish ★★
()

Любопытная вещь... Но думаю, что все же надежнее будет распаковать архив, да и скорость доступа к таким "каталогам" не будет выше, чем распаковка архива, наверное. Кто-нибудь уже опробовал сабж?

Demon37 ★★★★
()

Любопытная вещь... Но думаю, что все же надежнее будет распаковать архив, да и скорость доступа к таким "каталогам" не будет выше, чем распаковка архива, наверное. Кто-нибудь уже опробовал сабж?

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

> Имхо, сжатие должно быть фичей или модулем ФС, и выполняться > прозрачно для софта. Неудобно, когда почти весь /usr/share/doc/ > пожат gzip'ом (автораспаковка в vim/gimp/... есть кучка велосипедов/ > костылей).

как например tarfs? :) http://www.freebsd.org/news/status/report-2007-04-2007-06.html#tarfs:-A-tar-F...

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

как например tarfs? :)

Нет не так. FUSE давно уже позволяет _монтировать_ десятки типов файлов (а не только tar) и легко добавлять поддержку новых. Сейчас речь идет о _прозрачном доступе_ -- т.е. без mount

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

Чушь. По трудозатратам, что распакавать архив, что подмонтировать. Здесь же можно прямо указать имя компонента опуская один этап. Кроме, того он находится в естественном месте, а не в какой-то левой точке монтирования.

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

> потому, что tar - ___tape___ архивер. то есть, во времена оны, нужно было всё равно перемотать ленту до нужного места.

Типа сейчас ленту уже перематывать уже не надо? Или бекапы размером в дясятки терабайт сейчас держат на чем то другом?

anonymous
()

Теперь и в Линуксе можно будет залить на форум архив, зайти в него как в архив, и выполнить произвольный код на машине через багу в архиваторе. :-)

Или залить zip на форум и доставать оттуда картинки и HTML-ки как из каталога.

Или залить tar с cgi-ками и правом на исполнение скриптов.

Или DOS-ить файловый сервер.

Или играть в игру "угадай тип архива".

Короче, больше проблем хороших и разных на самом базовом уровне системы!

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

Просто вместо 10 разных слоев VFS (mc, gnome, kde, oo...) можно будет использовать один. Что проще в отладке. И безопасной. Потому, что флаг noexec будет устанавливаться в одном месте и администратором, а не в ста и пользователем.

Это общий момент. Если какие-то потенциально опасные функции не реализуются на базовом уровне, то возникает сотня костылей с десятками дыр.

Я тоже не тащусь от предложенного синтаксиса. Но именно для обеспечения безопасности системы это правильный шаг.

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

И еще. Мне кажется, что написать программу позволющую извлекать файлы из .tar.{gz.bz2} архива без полной декомпрессии можно. Не просто. Но можно. Средние коэффициенты сжатия известны. Плюс немного эвристики...

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

Может быть проще всё-таки разработать новый тип архива?

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

>> Имхо, сжатие должно быть фичей или модулем ФС, и выполняться прозрачно для софта. Неудобно, когда почти весь /usr/share/doc/ пожат gzip'ом (автораспаковка в vim/gimp/... есть кучка велосипедов/костылей).
а при копировании будет распаковка - запаковка снова ? + копирования в 10 раз большей информации ? ну ну

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

>>Создайте мне файл "." без кавычек. Или ".."

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

alex_custov ★★★★★
()

Любопытная функциональность.. Я полагаю, в любом случае, не помешает..

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

> а при копировании будет распаковка - запаковка снова ?

зачем их снова запаковывать, если вы ничего не поменяли? на диске все так и останется нетронутым.

> + копирования в 10 раз большей информации ? ну ну

Запакованые данные читаются с диска, а распакованые копируются из памяти в память.

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

ну мы же копируем не в пределах диска ?
и даже не в пределах одной физической машины ?
и ресурсы у нас очень ограничены ?
и мы не хотим сжимать несжимаемые данные ?
слишком много И получается :) для десктопа это возможно эффективно
для серверов / задач работающщих с большими объёмами информации - нет
либо потребует весьма тонкой настройки

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

> ресурсы у нас очень ограничены ?

ну вот, вечно не хватает этих ресурсов, и это при общепризнаной недогруженности процессоров на серверах :) При желании процессор можно избавить от компрессии, навесив последнюю на соответствующую (PCI) карточку.

> и мы не хотим сжимать несжимаемые данные ?

можно подобрать несложную эвристику, которая будет правильно распознавать сжимаемтость 80-90% от общей массы данных.

> для десктопа это возможно эффективно для серверов / задач работающщих c большими объёмами информации - нет

Это, скорее, психологические преграды :) Есть работающие решения, можете проверить их эффективность для больших объемов информации.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.