Змонтувати zip-файл як файлову систему лише для читання


24

Я шукаю спосіб встановити ZIP-архів як файлову систему, щоб я міг прозоро отримувати доступ до файлів в архіві. Мені потрібен лише доступ для читання - ZIP не буде змінено. Споживання оперативної пам’яті важливо, оскільки це стосується вбудованої системи (з обмеженими ресурсами). Які доступні варіанти?


Ви спробували mount -o loopваріант?
Sree

Так, питання полягає в тому, яку файлову систему використовувати.
Grodriguez

Якщо ви шукаєте стиснуту файлову систему лише для читання, подумайте про використання squashfs.
WGH

Я не шукаю «стиснуту файлову систему лише для читання» в загальному вигляді. Я спеціально шукаю спосіб монтажу zip-файлу як файлової системи лише для читання.
Grodriguez

Дивіться SU: 367540 для аналогічного запитання на WinNT.
n611x007

Відповіді:


26

fuse-zip є варіантом і претендує на швидкість, ніж конкуренція.

# fuse-zip -r archivetest.zip /mnt

archivemount інша:

# archivemount -o readonly archivetest.zip  /mnt

Обом, ймовірно, потрібно буде відкрити весь архів, тому не буде особливо швидким. Чи задумали ви попередньо витягнути ZIP на жорсткий диск або USB-накопичувач і просто встановите його лише для читання?


1
Швидкість не проблема, але споживання оперативної пам’яті є. USB або жорсткий диск не є альтернативою. Це вбудована система без портів HDD або USB.
Grodriguez

Я припускаю, що підсумок полягає в тому, що вам потрібно буде протестувати його у вашій конкретній ситуації і побачити, що, якщо є, найкраще для використання пам'яті. Я б подумав, що це залежить від того, наскільки великий ваш архів, а також скільки файлів у ньому. Якщо у вас є контроль над тим, як створюється ZIP-файл, ви можете розглянути інший формат, наприклад, необроблений образ диска, який може бути встановлений у циклі - що може зберегти оперативну пам’ять.
garethTheRed

Так, доведеться перевірити. Але перед цим я хотів знати, чи мають інші досвід, яким вони можуть поділитися :) (BTW Я не маю контролю над ZIP-файлом).
Grodriguez

2
@Grodriguez З внутрішнім файлом fuse-zip1 ГБ + використання пам'яті було 1 ГБ +. Для того ж, archivemountспоживання пам'яті було все ще низьким.
n611x007

7

Ви можете використовувати запобіжник-zip для монтажу zip лише для читання.

1 - Встановіть запобіжник на вашу систему.

УБУНТУ

sudo apt-get install fuse-zip

CENTOS / REDHAT / FEDORA

yum install fuse-zip

2 - Виконайте команду нижче, щоб змонтувати zip лише для читання.

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

3 - Використовуйте команду нижче, щоб відключити каталог

fusermount -u /path/to/mount/directory

Дякую. Чи є інформація про споживання пам'яті? Те, що добре працює для робочого столу, може не працювати так добре в обмежених ресурсами середовищах.
Grodriguez


Тут немає згадок про споживання пам'яті.
Grodriguez

Google Code закрито, посилання вище перейшло на bitbucket.org/agalanin/fuse-zip/wiki/PerformancePage
silpol
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.