Soru Bir tar dosyası yerleştirin - mümkün değil mi?


Görünüşe göre bir katran dosyası (salt okunur), bir ISO görüntü dosyası gibi aynı şekilde monte edilemez. En azından hiç bir uygulama bulamadım.

Örneğin, bir bulmak içeride komut.

Bu gerçekten (ya da pratik olarak) uygulamak imkansız mı? Niye ya?

GÜNCELLEŞTİRME Cevap kabul edildiğinde, bu mevcut bir programın (mevcut dağıtımlarda yer almayan) kurulmasına rağmen mümkün olabilir. Benim için çalıştı. Senaryoyu kopyalayıp senaryodaki adımı kullanıyorum (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

7
2018-05-04 14:36


Menşei


tar -tf yourfile.tar | grep 'pattern' - Javier
Tam olarak bir cevap değil ama tar -tvf somefile.tar | Bir şey grep. Beni dövmek için oy kullandım. :) - egorgry
Bunu biliyorum, ama bulmak çok kriterler ve mantık (boyutları, zaman damgaları), tar + grep biraz kısa düşüyor belirtmek sağlar. - leonbloy
Yaratıcı bulmak ve bulmak için pipo yapabilirsin. - egorgry
Borular ve komut satırlarıyla oynamayı seviyorum ama bu burada geçerli değil. 'find', stdin'den değil, bazı dosya sistemindeki som yolundan beslenmiyor - leonbloy


Cevaplar:


Geleneksel olarak, hayır mümkün değil.

Ancak, bunu FUSE dosya sistemini kullanarak yapabilirsiniz. archivemount Linux altında.

IMNSHO bu biraz bir yenilik ve genellikle gerekli değil, ama bunun için birkaç kenar durumları görebiliyorum.


8
2018-05-04 14:39



Olası kullanım durumlarından biri benimdir - rsync tarafından artımlı yedekleme yapabilmek için uzak sunucuda arşivleri monte edebilmek istiyorum. Hızlı çalışıp çalışmadığından emin değil. - Illarion Kovalchuk


Paket Ubuntu 11.10, alas kırık olarak mevcuttur.

Biri üzerinden yükleyebilir bu geçici çözüm:

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

Son adım benim için çalışmadı, ben de

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

yerine.


1
2017-09-20 10:27