Zamontuj plik zip jako system plików tylko do odczytu


24

Szukam sposobu na zamontowanie archiwum ZIP jako systemu plików, aby uzyskać przejrzysty dostęp do plików w tym archiwum. Potrzebuję tylko dostępu do odczytu - plik ZIP nie zostanie zmodyfikowany. Zużycie pamięci RAM jest ważne, ponieważ dotyczy to systemu osadzonego (z ograniczonymi zasobami). Jakie są dostępne opcje?


Próbowałeś już mount -o loopopcji?
Sree

Tak, pytanie brzmi, którego systemu plików użyć.
Grodriguez

Jeśli szukasz skompresowanego systemu plików tylko do odczytu, rozważ użycie squashfs.
WGH

Nie szukam „skompresowanego systemu plików tylko do odczytu” w sposób ogólny. Szczególnie szukam sposobu na zamontowanie pliku zip jako systemu plików tylko do odczytu.
Grodriguez

Zobacz SU: 367540, aby uzyskać podobne pytanie dotyczące WinNT.
n611x007,

Odpowiedzi:


26

fuse-zip jest opcją i twierdzi, że jest szybszy od konkurencji.

# fuse-zip -r archivetest.zip /mnt

archivemount jest inny:

# archivemount -o readonly archivetest.zip  /mnt

Oba będą prawdopodobnie musiały otworzyć całe archiwum, dlatego nie będzie to szczególnie szybkie. Czy zastanawiałeś się wcześniej nad wyodrębnieniem pliku ZIP na dysk twardy lub pamięć USB i po prostu zamontowaniem tego pliku tylko do odczytu?


1
Szybkość nie jest problemem, ale zużycie pamięci RAM jest. USB lub HDD nie jest alternatywą. Jest to system osadzony bez portów HDD lub USB.
Grodriguez,

Podejrzewam, że najważniejsze jest to, że musisz to przetestować w konkretnej sytuacji i sprawdzić, które z nich jest najlepsze do wykorzystania pamięci. Myślałem, że to zależy od tego, jak duże jest twoje archiwum, a także od liczby plików w tym archiwum. Jeśli masz kontrolę nad sposobem tworzenia pliku ZIP, możesz rozważyć inny format, taki jak surowy obraz dysku, który można zamontować w pętli - co może zaoszczędzić pamięć RAM.
garethTheRed

Tak, będę musiał przetestować. Ale wcześniej chciałem wiedzieć, czy inni mieliby jakieś doświadczenia, którymi mogliby się podzielić :) (BTW, nie mam kontroli nad plikiem ZIP).
Grodriguez

2
@Grodriguez Z 1 GB + wewnętrznego pliku, fuse-zipużycie pamięci wynosiło 1 GB +. Z tego samego powodu archivemountużycie pamięci było nadal niskie.
n611x007,

7

Możesz użyć bezpiecznika do zamontowania zamka jako tylko do odczytu.

1 - Zainstaluj bezpiecznik w systemie.

UBUNTU

sudo apt-get install fuse-zip

CENTOS / REDHAT / FEDORA

yum install fuse-zip

2 - Uruchom polecenie poniżej, aby zamontować zip jako tylko do odczytu.

fuse-zip -o ro /path/abcd.zip /path/to/mount/directory

3 - Użyj polecenia poniżej, aby odmontować katalog

fusermount -u /path/to/mount/directory

Dziękuję Ci. Czy są dostępne jakieś informacje na temat zużycia pamięci? To, co działa dobrze na pulpicie, może nie działać tak dobrze w środowiskach o ograniczonych zasobach.
Grodriguez,


Brak wzmianek o zużyciu pamięci.
Grodriguez

Kod Google został zamknięty, powyższy link przeniesiono na bitbucket.org/agalanin/fuse-zip/wiki/PerformancePage
silpol
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.