Назад | Перейти на главную страницу

Смонтировать tar-файл - невозможно?

Кажется, что нельзя смонтировать tar-файл (только для чтения), так же, как монтировать файл ISO-образа. По крайней мере, реализации я не нашел.

Было бы полезно, например, запустить найти команда внутри.

Это действительно (или практически) невозможно реализовать? Зачем?

ОБНОВИТЬ Согласно принятому ответу, это действительно возможно, хотя программа (не входящая в нынешние дистрибутивы) должна быть установлена. У меня это сработало. Я копирую установку и использую шаги своего сценария (Fedora 12).

  # yum install fuse fuse-libs fuse-devel 
  # yum install libarchive libarchive-devel
  # cd /tmp && wget http://www.cybernoia.de/software/archivemount/archivemount-0.6.0.tar.gz
  # tar xzf archivemount-0.6.0.tar.gz && cd archivemount-0.6.0
  # ./configure && make && make install
  # man archivemount
  #  archivemount -o ro /tmp/mytar.tgz /mnt/tt

Традиционно нет, это невозможно.

Однако вы можете сделать это с помощью файловой системы FUSE. архив под Linux.

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

Пакет доступен в Ubuntu 11.10, но, к сожалению, сломан.

Его можно установить через этот обходной путь:

mkdir -p ~/src
cd ~/src

sudo aptitude install build-essential devscripts debian-archive-keyring libfuse-dev libarchive-dev
apt-get source archivemount
gpg --keyring /usr/share/keyrings/debian-archive-keyring.gpg --verify *dsc

cd archivemount-0.6.1
cat << EOF | patch -p0
--- debian/control
+++ debian/control
@@ -8,7 +8,7 @@

 Package: archivemount
 Architecture: linux-any
-Depends: \${shlibs:Depends}, \${misc:Depends}, fuse (>=2.8.5-2)
+Depends: \${shlibs:Depends}, \${misc:Depends}, fuse-utils (>=2.8.4-1.4ubuntu1)
 Description: mounts an archive for access as a file system
  archivemount is a FUSE based file system for Unix variants, including Linux.
  Its purpose is to mount archives to a mount point where it can be read from
EOF
dch --nmu 'Depend on fuse-utils instead of fuse on Oneiric Ocelot.'
dpkg-buildpackage

cd ..
sudo dpkg -i archivemount_0.6.1-2.1_amd64.deb

Последний шаг у меня не сработал, поэтому я

cd archivemount-0.6.1./
configure && make && sudo make install

вместо.