Unix

掛載 tar 文件 - 不可能?

  • September 20, 2012

似乎無法掛載 tar 文件(只讀),就像掛載 ISO 映像文件一樣。至少,我還沒有找到任何實現。

它會很有用,例如在裡面執行一個find命令。

這真的(或實際上)不可能實現嗎?為什麼?

更新通過接受回答,這確實是可能的,儘管必須安裝一個程序(不包括在目前發行版中)。它對我有用。我複制了我的場景(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

傳統上,不,這是不可能的。

但是,您可以使用 Linux 下的 FUSE 文件系統歸檔掛載來執行此操作

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

反而。

引用自:https://serverfault.com/questions/138403