Архив произвольного доступа для использования Unix - PullRequest
3 голосов
/ 29 мая 2010

Я ищу хороший формат для архивирования целых файловых систем старых компьютеров с Linux.

TAR.GZ
Формат tar.gz отлично подходит для архивирования файлов с атрибутами в стиле UNIX, но поскольку сжатие применяется ко всему архиву, проект исключает произвольный доступ. Вместо этого, если вы хотите получить доступ к файлу в конце архива, вы должны начать с самого начала и распаковать весь файл (который может быть несколько сотен ГБ) до точки, где вы найдете нужную запись .

ZIP
И наоборот, одним из преимуществ формата ZIP является то, что он хранит индекс архива: имена файлов хранятся отдельно с указателями на место внутри архива, в котором они находят данные. Если я хочу извлечь файл в конце, я просматриваю позицию этого файла по имени, ищу местоположение и извлекаю данные. Однако в нем не хранятся такие атрибуты файлов, как владение, разрешения, символические ссылки и т. Д.

Другие варианты?
Я пытался использовать squashfs , но он не предназначен для этой цели. Формат файла не согласован между версиями, а сборка архива занимает много времени и места.

Какие другие варианты могут подойти для этой цели лучше?

Ответы [ 2 ]

1 голос
/ 30 мая 2010

Вы можете проверить duplicty. Это позволяет вам делать сжатые и зашифрованные резервные копии и обеспечивает произвольный доступ к файлу. Здесь вы можете найти больше информации об этом проекте: http://duplicity.nongnu.org/new_format.html.

Если вы хотите использовать его, вы также можете проверить скрипт duply. Является ли оболочка внешнего интерфейса для duplicty. Дополнительная информация: http://sourceforge.net/projects/ftplicity/

1 голос
/ 29 мая 2010

zip (вы можете использовать http://www.info -zip.org / ) хранит атрибуты файла - см. Wiki

Каждая запись вводится местным заголовок с информацией о файле такие как комментарий, размер файла и имя файла с последующим необязательным «Дополнительные» поля данных, а затем возможно сжатый, возможно зашифрованные данные файла. «Дополнительные» данные поля являются ключом к расширяемость формата ZIP. «Дополнительные» поля используются для поддержка формата ZIP64, WinZip-совместимое шифрование AES, файл атрибуты и NTFS с более высоким разрешением или временные метки файла Unix. Другой Расширения возможны через Поле «Extra». Необходимы инструменты ZIP по спецификации игнорировать Extra поля, которые они не распознают.

...