Я знаю, что уже поздно, не знаю, чем закончился ФП, но вот несколько советов:
Вы можете создать новый раздел, используя выбранную вами файловую систему, и скопировать все, что вы хотите сохранить, в этот раздел. Затем уменьшите раздел как можно меньше, чтобы сэкономить место. Затем вы можете использовать, например, dd
для создания образа раздела, скажем, это /dev/sdc3
, в самом простом:
dd if=/dev/sdc3 of=backup_image.bin
Для Windows Google для "dd for windows" или найдите эквивалентную программу, которая может сделать побайтное изображение раздела или устройства.
Затем этот файл изображения может быть помещен в долговременное хранилище. Если у вас есть доступ к файлу и ваш носитель долгосрочного хранения поддерживает произвольный поиск, вы можете просто подключить файл напрямую, например:
sudo mkdir /media/backup
sudo mount /path/to/backup_image.bin /media/backup
Для Windows, Google для "образа раздела монтирования Windows".
У вас будет полный доступ к данным, и будет выполняться только минимальное количество операций чтения, необходимых для поддержки навигации по файловой системе и доступа к этому файлу.
Другой, более очевидный вариант - просто не объединять ваши файлы в один архивный файл. Создайте обычную файловую систему в вашем долговременном хранилище и просто скопируйте в нее файлы. Файловые системы уже предоставляют средства для доступа к определенным файлам без доступа к ненужным данным, вам, возможно, не придется изобретать велосипед.
Также существуют проприетарные форматы, подобные описанному вами, например, программное обеспечение для резервного копирования, такое как Acronis, может выполнять резервное копирование данных на сетевые диски или куда угодно, в ».TIB "файлы, которые можно просматривать (и извлекать данные), не требуя чтения всего файла. Я не знаю, поддерживает ли Acronis просмотр резервных копий файловой системы Linux/OSX, но я знаю, что он поддерживает этот тип просмотра для резервных копий FAT32 и NTFS. Я уверен, что есть другие.