Возможно ли интегрировать файлы zip и tar.gz в качестве каталога в файловую систему

Интересно, есть ли способ интегрировать (это немного отличается от установки, я думаю) сжатые файлы в качестве каталогов в файловую систему?

Например, можно загрузить compressed-file.tar.gz на его локальный жесткий диск, затем выполнить cd compressed-file.tar.gz и запустить сценарий из сжатой папки или сделать cp some-file .. чтобы извлечь один из файлы.

Я знаю, что Btrfs поддерживает сжатие, но я не хочу менять файловую систему, которая у меня есть (ext3), чтобы поддерживать эту функцию.

2 Solutions collect form web for “Возможно ли интегрировать файлы zip и tar.gz в качестве каталога в файловую систему”

Вы можете использовать команду archivemount для монтирования архивов, таких как .tar.gz .

 $ ls files.tgz mnt/ $ archivemount files.tgz mnt $ ls mnt file1 file2 [... Perform desired read/write operations on the archive via mnt/ ...] $ umount mnt [... Any changes are saved to the archive ...] 

Дополнительную информацию см. На странице man для archivemount . Часто не устанавливается, поэтому вам, вероятно, потребуется установить пакет. Он также называется archivemount . Например, на Fedora 19:

 $ sudo yum install archivemount 

Рекомендации

  • Как монтировать архив для доступа в виде файловой системы

Вы либо говорите о файловой системе FUSE (файловая система в пользовательском пространстве – Linus называет их игрушками ), либо пользовательском скомпилированном ядре ИЛИ squashfs. Squash squashfs. Squash не совсем так, как вы описали – вы не можете просто монтировать tarball, например, не с поддерживаемым ядром VFS, но вы можете, конечно, mksquash любое количество файлов или каталогов и монтировать полученный архив только для чтения. У вас есть выбор сжатия xz, lzma, or gz . Squash используется все время – если вы когда-либо использовали живое изображение linux, все очень хорошо, он был squashed.

Я скажу вам один трюк, который я использую с squashfs. Мне нравится создавать файл изображения btrfstune -S 1 и использовать btrfstune -S 1 чтобы сделать его seed томом . Затем я помещаю это изображение в архив squashfs . Оттуда я могу mount -o loop image.sfs и изнутри этого mount -o loop btrfs образ btrfs .

Объем btrfs seed изначально будет монтироваться как read-only что можно ожидать, учитывая, что он содержится в squashed контуре. Но если я тогда сделаю:

 GB_tmp_loop=$( fallocate -l $((1024*1024*1024)) /tmp/1GB_tmp.img && losetup -f --show $_ ) btrfs device add "$GB_tmp_loop" "${btrfs_seed=/path/to/btrfs_image_mount}" umount "$btrfs_seed" mount -o compress-force=lzo,autodefrag,rw "$GB_tmp_loop" "$btrfs_seed" 

Внезапно я использую функции btrfs s copy-on-write и автоматическое сжатие записи, а squashfs превосходное сжатие в RAM и in-kernel.

  • Как закрепить файл и сохранить его в другом каталоге
  • Найти рекурсивно все архивные файлы различных форматов архивов и искать их для шаблонов имен файлов
  • Раскройте архив gz с расширением zip
  • Как создать несколько почтовых индексов из каталога, содержащего миллион XML-файлов?
  • Как использовать `ожидать` с` zipcloak`?
  • Bash: Zipping / группировка файлов по общей подстроке
  • архивирование файлов без изменений
  • Crack zip-файл с известными частями паролей
  • распаковать вложенные .zip-файлы по сценарию оболочки
  • Объект AIX для ZIP-списка файлов
  • Использование zip-пакета для debian с паролем
  • Как узнать путь к определенному файлу в zip-архиве, не извлекая его?
  • Interesting Posts

    Проблемы подключения с KVM на RHEL6.5 на сервер лицензий

    Как обновить мою установку Debian Linux?

    Используйте `ln` для создания отсутствующего каталога

    Unix bash / ksh: выбор первого непространственного символа из файла из определенной строки

    Синхронизировать IMAP с папками maildir – быстрое и полное решение с поддержкой IDLE?

    Проблема с клавиатурой с кнопкой Ctrl в X11

    Отправка файла в открытый редактор с помощью командной строки

    Интерфейс pf out?

    Vim: заменить на другой матч в строке

    Документ с отступом здесь вызывает синтаксическую ошибку

    Запуск программы с использованием X, когда другой пользователь регистрируется с помощью оболочки gnome

    Выполнение команд с PHP: с использованием обычного пользователя, но его домашний каталог / root

    проверьте, присутствует ли строка в списке и выдает третий файл, если строка присутствует

    Stop / sbin / agetty и выйти из сеанса

    Почему bash добавляет одинарные кавычки к неуказанным неудачным расширениям имени пути в команде перед ее выполнением?

    Linux и Unix - лучшая ОС в мире.