Открыть сервис

Многотомный архив

Многотомный архив — это структура данных, используемая в операционных системах (прежде всего в семействе Unix) и программном обеспечении для объединения нескольких файлов (томов) в один логический архивный файл или для представления одного большого архива в виде последовательности файлов фиксированного размера. В отличие от обычных архивов (например, ZIP или RAR), многотомные архивы не обязательно сжимают данные, а их основная цель — преодоление ограничений файловых систем на максимальный размер файла, удобство переноса на сменных носителях (например, дискетах, CD-R, DVD) или передача по сетям с ограничениями на размер сообщения. Термин также может относиться к историческим форматам хранения данных, таким как многотомные библиотеки лент или дисковые массивы, где том — это физический носитель.

История

Ранние системы хранения

В 1960–1970-х годах, когда операционные системы (например, UNIX) работали с ленточными накопителями, понятие «том» было физическим. Архив на ленте мог состоять из нескольких катушек, каждая из которых была отдельным томом. Для объединения данных использовались специальные утилиты, такие как tar (Tape ARchive), которая могла записывать данные на несколько лент, требуя от оператора смены катушек. Размер тома был ограничен ёмкостью ленты.

Эпоха дискет и жёстких дисков

С распространением персональных компьютеров в 1980-х годах и появлением дискет (ёмкостью 360 КБ, 720 КБ, 1,44 МБ) возникла необходимость архивировать файлы, превышающие ёмкость одного носителя. Программы-архиваторы, такие как ARC (1985), PKZIP (1989) и RAR (1993), ввели поддержку многотомных архивов. Пользователь мог указать размер тома (например, 1,44 МБ), и архиватор автоматически разбивал архив на несколько файлов, которые можно было записать на отдельные дискеты. При распаковке требовалось последовательно считывать все тома.

Современные системы

В 2000-х годах, с ростом ёмкости жёстких дисков и распространением файловых систем, поддерживающих большие файлы (FAT32 — до 4 ГБ, NTFS — до 16 ЭБ), многотомные архивы стали менее востребованы для повседневного использования. Однако они остаются актуальными для:

  • Передачи больших файлов через интернет с ограничениями на размер вложения (например, почтовые серверы часто ограничивают 25–50 МБ).
  • Резервного копирования на сменные носители (например, Blu-ray диски ёмкостью 25–50 ГБ).
  • Работы с файловыми системами, которые не поддерживают файлы большого размера (например, FAT32 на флеш-накопителях).

Типы многотомных архивов

По способу создания

  • Программные архиваторы: Создаются специализированными программами (RAR, 7-Zip, WinZip, tar). Пользователь задаёт размер тома (в байтах, килобайтах, мегабайтах или гигабайтах) или выбирает опцию «автоматический» (например, для дискет).
  • Системные утилиты: В Unix-подобных системах команда split может разбить любой файл на части, а cat — собрать обратно. Однако это не создаёт полноценный архив с метаданными (именами файлов, правами доступа), а лишь разделяет поток байтов.
  • Специализированные форматы: Например, формат TAR с опцией --multi-volume (или -M) позволяет создавать многотомные архивы на ленточных накопителях.

По способу именования

  • Последовательное расширение: Тома получают расширения, указывающие на порядковый номер. Например, в RAR это .part1.rar, .part2.rar и т. д. В 7-Zip — .7z.001, .7z.002.
  • Фиксированное расширение с заменой: В некоторых старых архиваторах (например, ARJ) тома могли называться archive.arj, archive.a01, archive.a02.
  • Именование по носителю: В системах, где том — это физический носитель (например, лента), имя тома может быть задано пользователем или сгенерировано автоматически (например, backup_vol1, backup_vol2).

По способу хранения метаданных

  • С единым индексом: Метаданные (список файлов, их размеры, контрольные суммы) хранятся только в первом томе. Если первый том утерян, восстановить остальные невозможно без специальных инструментов (например, RAR).
  • С распределённым индексом: Каждый том содержит копию метаданных или информацию о соседних томах. Это повышает надёжность, но увеличивает размер.
  • Без индекса: В простейших случаях (например, split) метаданные отсутствуют, и восстановление возможно только при полном наборе томов.

Форматы и программы

RAR (WinRAR)

  • Разработчик: Евгений Рошаль (Россия). Первая версия — 1993 год.
  • Особенности: Поддерживает многотомные архивы с расширениями .part01.rar (или .part1.rar). Размер тома задаётся в байтах или выбирается из списка (дискета 1,44 МБ, CD 700 МБ, DVD 4,7 ГБ). Возможно создание архивов с непрерывным (solid) сжатием, что увеличивает степень сжатия, но замедляет доступ к отдельным файлам.
  • Ограничения: Максимальный размер одного тома — 2^63 байт (9,22 ЭБ). Количество томов — до 2^32 (4,3 миллиарда).

7-Zip (7z)

  • Разработчик: Игорь Павлов (Россия). Первая версия — 1999 год.
  • Особенности: Формат .7z поддерживает многотомные архивы с расширениями .7z.001, .7z.002 и т. д. Размер тома задаётся в байтах. Поддерживает сжатие LZMA, LZMA2, PPMd, BZip2.
  • Преимущества: Высокая степень сжатия, открытый исходный код, поддержка шифрования AES-256.

ZIP (PKZIP, WinZip, Info-ZIP)

  • Разработчик: Phil Katz (США). Первая версия — 1989 год.
  • Особенности: Формат ZIP поддерживает многотомные архивы, но реализация зависит от программы. В классическом PKZIP тома назывались archive.zip, archive.z01, archive.z02. В современных версиях (например, WinZip) тома могут иметь расширения .zip, .z01, .z02.
  • Ограничения: Максимальный размер файла в ZIP — 4 ГБ (для ZIP32), для ZIP64 — до 16 ЭБ. Многотомные ZIP-архивы менее распространены, чем RAR или 7z.

TAR (Unix/Linux)

  • Разработчик: AT&T Bell Labs. Первая версия — 1979 год.
  • Особенности: Утилита tar с опцией --multi-volume (или -M) создаёт многотомные архивы на ленточных накопителях. При использовании с файлами (например, tar -M -cvf archive.tar largefile) программа запрашивает имя следующего тома после заполнения текущего. Для автоматизации используется скрипт или опция --new-volume-script.
  • Преимущества: Сохраняет права доступа, владельцев, временные метки. Поддерживается во всех Unix-подобных системах.

Другие форматы

  • ARJ: Популярен в 1990-х годах. Тома именовались archive.arj, archive.a01, archive.a02.
  • CAB: Формат Microsoft, используемый в установщиках Windows. Поддерживает многотомные архивы, но редко применяется вне этой среды.
  • ISO: Образы дисков (например, CD, DVD) могут быть разбиты на несколько файлов, но это не является стандартным многотомным архивом — это скорее разделение образа.

Применение

Резервное копирование

Многотомные архивы используются для создания резервных копий на сменных носителях (ленты, диски). Например, утилита tar на ленточных накопителях позволяет автоматически переключать ленты при заполнении. В Windows программы, такие как Acronis True Image, могут создавать многотомные образы на несколько DVD.

Передача данных

При отправке больших файлов по электронной почте или через мессенджеры с ограничениями на размер вложения (например, Gmail — 25 МБ, Telegram — 2 ГБ) архиватор разбивает файл на тома нужного размера. Получатель должен собрать все тома и распаковать их.

Совместимость с файловыми системами

На флеш-накопителях, отформатированных в FAT32 (максимальный размер файла — 4 ГБ), многотомные архивы позволяют хранить данные, превышающие это ограничение. Например, файл размером 10 ГБ можно разбить на три тома по 3,5 ГБ.

Архивация на носителях с ограниченной ёмкостью

В историческом контексте (1980–1990-е годы) многотомные архивы были единственным способом переноса больших программ или баз данных на дискетах. Например, операционная система Windows 95 распространялась на 13 дискетах, каждая из которых была отдельным томом.

Критика и ограничения

Потеря одного тома

Если один из томов многотомного архива утерян или повреждён, восстановить данные из оставшихся томов невозможно (за исключением форматов с избыточностью, таких как RAR с опцией восстановления). Это делает многотомные архивы менее надёжными, чем единый файл.

Сложность управления

Для распаковки многотомного архива необходимо иметь все тома в одной папке или последовательно их загружать. Это может быть неудобно при передаче по сети или хранении на нескольких носителях.

Избыточность

При разбиении на тома фиксированного размера последний том часто оказывается неполным, что приводит к потере дискового пространства (например, если размер тома 1,44 МБ, а последний том занимает 100 КБ, остаток в 1,34 МБ не используется).

Скорость

Создание и распаковка многотомных архивов может быть медленнее, чем работа с единым файлом, из-за необходимости открывать и закрывать множество файлов.

Интересные факты

  • В 1990-х годах были популярны архиваторы, которые могли создавать многотомные архивы, автоматически записывая их на дискеты. Например, программа DiskDupe для DOS.
  • В операционной системе Linux команда dd может использоваться для создания образов дисков, которые затем разбиваются с помощью split на тома для переноса на CD-R.
  • Формат RAR поддерживает создание архивов с томами, которые могут быть восстановлены даже при повреждении одного из томов, если включена опция «добавить информацию для восстановления» (recovery volumes).

Источники

  • Рошаль, Е. (1993). RAR Technical Specification. WinRAR.
  • Павлов, И. (1999). 7-Zip User Manual. 7-Zip.
  • Free Software Foundation. (2000). GNU Tar Manual. GNU Project.
  • Microsoft Corporation. (1995). Windows 95 Installation Guide.
  • PKWare Inc. (1989). PKZIP User Guide.

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →