Jump to content

архив

архив
Расширение имени файла
.par, .par2, .p??, (в будущем .par3)
Тип формата Код стирания , архивный файл

Parchive ( сумма , архива четности формально известная как спецификация набора томов четности). [1] [2] ) — это система стирающего кода , которая создает номинала файлы по контрольной сумме для проверки целостности данных с возможностью выполнения операций восстановления данных , которые могут исправить или восстановить поврежденные или отсутствующие данные.

Изначально Parchive был написан для решения проблемы надёжного обмена файлами в Usenet . [3] но его можно использовать для защиты любых данных от повреждения данных , гниения диска , битового гниения , а также случайного или злонамеренного повреждения. Несмотря на название, Parchive использует более продвинутые методы (в частности, коды с исправлением ошибок ), чем упрощенные с помощью четности методы обнаружения ошибок .

По состоянию на 2014 год PAR1 устарел, PAR2 готов к широкому использованию, а PAR3 представляет собой снятую с производства экспериментальную версию, разработанную автором MultiPar Ютакой Савадой. [4] [5] [6] [7] Исходный проект SourceForge Parchive неактивен с 30 апреля 2015 года. [8] Над новой спецификацией PAR3 работает с 28 апреля 2019 года автор спецификации PAR2 Майкл Нахас. Альфа-версия спецификации PAR3 опубликована 29 января 2022 г. [9] пока сама программа разрабатывается.

Parchive был предназначен для повышения надежности передачи файлов через группы новостей Usenet . Usenet изначально был разработан для неформального общения, а базовый протокол NNTP не был предназначен для передачи произвольных двоичных данных. Другое ограничение, которое было приемлемо для диалогов, но не для файлов, заключалось в том, что сообщения обычно были довольно короткими по длине и ограничивались 7-битным ASCII . текстом [10]

Для отправки файлов через Usenet были разработаны различные методы, такие как uuencoding и Base64 . Позднее программное обеспечение Usenet позволило использовать 8-битный расширенный ASCII , что позволило использовать новые методы, такие как yEnc . Большие файлы были разбиты на части, чтобы уменьшить эффект от поврежденной загрузки, но ненадежный характер Usenet остался.

С появлением Parchive можно было создавать файлы четности, которые затем загружались вместе с исходными файлами данных. Если какой-либо файл данных был поврежден или утерян при распространении между серверами Usenet, пользователи могли загрузить файлы четности и использовать их для восстановления поврежденных или отсутствующих файлов. Parchive включает в себя создание небольших индексных файлов (*.par в версии 1 и *.par2 в версии 2), которые не содержат никаких данных для восстановления. Эти индексы содержат хэши файлов , которые можно использовать для быстрой идентификации целевых файлов и проверки их целостности.

Поскольку индексные файлы были очень маленькими, они минимизировали объем дополнительных данных, которые нужно было загрузить из Usenet, чтобы убедиться, что все файлы данных присутствуют и не повреждены, или определить, сколько томов четности требуется для устранения любого повреждения или восстановления любого недостающие файлы. Они были наиболее полезны в версии 1, где тома четности были намного больше, чем короткие индексные файлы. Эти большие тома четности содержат фактические данные восстановления вместе с дубликатами информации в индексных файлах (что позволяет использовать их самостоятельно для проверки целостности файлов данных, если нет небольшого индексного файла).

В июле 2001 года Тобиас Рипер и Стефан Велус предложили спецификацию Parity Volume Set, и при содействии других участников проекта в октябре 2001 года была опубликована версия 1.0 спецификации. [11] Par1 использовал исправление ошибок Рида-Соломона для создания новых файлов восстановления. Любой из файлов восстановления можно использовать для восстановления отсутствующего файла из неполной загрузки .

Версия 1 стала широко использоваться в Usenet, но имела некоторые ограничения:

  • Он был ограничен для обработки не более 255 файлов.
  • Файлы восстановления должны были иметь размер самого большого входного файла, поэтому это не работало, когда входные файлы были разных размеров. (Это ограничивало его полезность без использования проприетарного инструмента сжатия RAR.)
  • Алгоритм восстановления имел ошибку из-за недостатка [12] в научной статье [13] на чем оно основывалось.
  • Он был тесно связан с Usenet, и считалось, что более общий инструмент может иметь более широкую аудиторию.

В январе 2002 года Говард Фукада предложил разработать новую спецификацию Par2 со значительными изменениями, согласно которым проверка и восстановление данных должны работать с блоками данных, а не с целыми файлами, и что алгоритм должен переключиться на использование 16-битных чисел, а не 8-битных. номера битов, которые использовал PAR1. Майкл Нахас и Питер Клементс подхватили эти идеи в июле 2002 года при дополнительном вкладе Пола Неттла и Райана Галлахера (которые оба написали клиентов Par1). Версия 2.0 спецификации Parchive была опубликована Майклом Нахасом в сентябре 2002 года. [14]

Затем Питер Клементс написал первые две реализации Par2: QuickPar и par2cmdline. Заброшенный с 2004 года, Пол Хоул создал phpar2, чтобы заменить par2cmdline. Ютака Савада создал MultiPar, чтобы заменить QuickPar. MultiPar использует par2j.exe (который частично основан на методах оптимизации par2cmdline) в качестве внутреннего механизма MultiPar.

Версии 1 и 2 формата файла несовместимы. (Однако многие клиенты поддерживают оба варианта.)

Для Par1, файлов f1 , f2 , ..., fn , архив состоит из индексного файла ( f.par ), который представляет собой файл типа CRC без блоков восстановления, и ряда «томов четности» ( f.p01 ). , f.p02 и т. д.). Учитывая все исходные файлы, кроме одного (например, f2 ), можно создать недостающий f2, учитывая все остальные исходные файлы и любой из томов четности. В качестве альтернативы можно воссоздать два отсутствующих файла из любых двух томов четности и т. д. [15]

Par1 поддерживает до 256 исходных файлов и файлов восстановления.

Файлы Par2 обычно используют следующую систему именования/расширения: имя_файла.vol000+01.PAR2 , имя_файла.vol001+02.PAR2 , имя_файла.vol003+04.PAR2 , имя_файла.vol007+06.PAR2 и т. д. Число после «+» " в имени файла указывает, сколько блоков он содержит, а число после "vol" указывает номер первого блока восстановления в файле PAR2. Если в индексном файле загрузки указано, что отсутствуют 4 блока, самый простой способ восстановить файлы — загрузить filename.vol003+04.PAR2 . Однако из-за избыточности имя файла.vol007+06.PAR2 допустимо также . Существует также индексный файл filename.PAR2 , он по функциям идентичен небольшому индексному файлу, используемому в PAR1.

Спецификация Par2 поддерживает до 32 768 исходных блоков и до 65 535 блоков восстановления. Входные файлы разбиваются на несколько блоков одинакового размера, поэтому файлы восстановления не обязательно должны иметь размер самого большого входного файла.

Хотя Unicode упоминается в спецификации PAR2 как опция, большинство реализаций PAR2 не поддерживают Unicode.

Поддержка каталогов включена в спецификацию PAR2, но большинство или все реализации ее не поддерживают.

Спецификацию Par3 изначально планировалось опубликовать как усовершенствованную версию спецификации Par2. Однако на сегодняшний день [ когда? ] исходный код остается закрытым владельцем спецификации Ютакой Савадой.

Обсуждение нового формата началось в разделе проблем GitHub поддерживаемой вилки par2cmdline 29 января 2019 года. Обсуждение привело к созданию нового формата, который также называется Par3. Спецификация нового формата Par3 опубликована на GitHub , но по состоянию на 28 января 2022 года остается альфа-проектом. Спецификация написана Майклом Нахасом, автором спецификации Par2, при помощи Ютаки Савады, Animetosho и Malaire.

Новый формат утверждает, что имеет множество преимуществ по сравнению с форматом Par2, в том числе:

  • Поддерживает более 2 16 файлы и более 2 16 блоки.
  • Поддерживает упаковку небольших файлов в один блок, а также дедупликацию при появлении блока в нескольких файлах.
  • Поддерживает имена файлов UTF-8 , права доступа к файлам, жесткие и программные ссылки.
  • Поддерживает встраивание данных PAR в другие форматы, такие как ZIP-архивы или образы дисков ISO .
  • Поддерживает «добавочное резервное копирование», когда пользователь создает файлы восстановления для какого-либо файла или папки, изменяет некоторые данные и создает новые файлы восстановления, повторно используя некоторые из старых файлов.
  • Поддерживает больше алгоритмов кода исправления ошибок (таких как LDPC и разреженная случайная матрица ).
  • Заменена хеш-функция MD5 в Par2 на BLAKE3 .
  • Поддерживает пустые каталоги.
  • Поддерживает права доступа к файлам.
  • Поддерживает жесткие ссылки и символические ссылки.

Программное обеспечение

[ редактировать ]

Мультиплатформенность

[ редактировать ]
  • MultiPar QuickPar (бесплатное ПО) — основан на функциях и графическом интерфейсе и использует par2j.exe Ютаки Савады в качестве серверной части PAR2. MultiPar поддерживает несколько языков Unicode. Название MultiPar произошло от «многоязычного клиента PAR». MultiPar также проверен на работу с Wine под TrueOS и Ubuntu , а также может работать с другими операционными системами. [16] [17] Хотя компоненты Par2 имеют (или будут) с открытым исходным кодом, графический интерфейс MultiPar поверх них в настоящее время не является открытым исходным кодом. [18]
  • QuickPar (бесплатное ПО) — не поддерживается с 2004 года, заменен MultiPar.
  • phpar2 — расширенный par2cmdline с многопоточностью и высокооптимизированным ассемблерным кодом (примерно на 66% быстрее, чем QuickPar 0.9.1)
  • Зеркало — первая реализация PAR, не поддерживаемая с 2001 года.

Программное обеспечение для POSIX- совместимых операционных систем:

См. также

[ редактировать ]
  1. ^ Re: Исправление к Parchive в Википедии , Архивировано 14 октября 2014 г. в ответе № 3 Wayback Machine , Ютака Савада: «Их официальное название — «Спецификация набора томов с четностью 1.0» и «Спецификация набора томов с четностью 2.0».
  2. ^ Re: Исправление к Parchive в Википедии , ответ № 3, Ютака Савада: «Их официальное название — «Спецификация набора томов с четностью 1.0» и «Спецификация набора томов с четностью 2.0».
  3. ^ «Parchive: набор томов архива четности» . Проверено 29 октября 2009 г. Первоначальная идея этого проекта заключалась в том, чтобы предоставить инструмент для применения концепций восстановления данных RAID-подобных систем для публикации и восстановления многочастных архивов в Usenet.
  4. ^ «возможность создания нового файла PAR3» . Архивировано из оригинала 7 июля 2012 г. Проверено 1 июля 2012 г.
  5. ^ «Вопрос об использовании вами PAR3» . Архивировано из оригинала 9 марта 2014 г. Проверено 1 июля 2012 г.
  6. ^ «Риск необнаружимой запланированной модификации» . Архивировано из оригинала 9 марта 2014 г. Проверено 1 июля 2012 г.
  7. ^ «Предложение по спецификации PAR3 не завершено по состоянию на апрель 2011 г.» . Архивировано из оригинала 9 марта 2014 г. Проверено 1 июля 2012 г.
  8. ^ «Parchive: инструмент архивирования четности» . 30 апреля 2015 года . Проверено 20 мая 2020 г.
  9. ^ «Спецификация набора томов четности 3.0 [АЛЬФА-ПРОЕКТ 28 января 2022 г.]» . Майкл Нахас, Ютака-Савада, аниметошо и малайр.
  10. ^ Кантор, Брайан; Лэпсли, Фил (февраль 1986 г.). «Коды символов» . Протокол передачи сетевых новостей . IETF . п. 5. сек. 2.2. дои : 10.17487/RFC0977 . РФК 977 . Проверено 29 октября 2009 г.
  11. ^ Нахас, Майкл (14 октября 2001 г.). «Спецификация набора томов четности v1.0» . Проверено 19 июня 2017 г.
  12. ^ Планк, Джеймс С.; Дин, Ин (апрель 2003 г.). «Примечание: исправление к учебнику 1997 года по кодированию Рида-Соломона» . Проверено 29 октября 2009 г.
  13. ^ Планк, Джеймс С. (сентябрь 1997 г.). «Учебное пособие по кодированию Рида-Соломона для обеспечения отказоустойчивости в RAID-подобных системах» . Проверено 29 октября 2009 г.
  14. ^ Нахас, Майкл; Клементс, Питер; Неттл, Пол; Галлахер, Райан (11 мая 2003 г.). «Спецификация набора томов четности 2.0» . Проверено 29 октября 2009 г.
  15. ^ Ван, Уоллес (25 октября 2004 г.). «Поиск фильмов (или телешоу): восстановление отсутствующих файлов RAR с помощью файлов PAR и PAR2» . Украдите эту книгу по обмену файлами (1-е изд.). Сан-Франциско, Калифорния : Пресса без крахмала . стр. 164–167 . ISBN  978-1-59327-050-6 . Проверено 24 сентября 2009 г.
  16. ^ «MultiPar работает с PCBSD 9.0» . Архивировано из оригинала 28 сентября 2013 г. Проверено 27 февраля 2012 г.
  17. ^ Работаем над Ubuntu 18.04 через Wine. [ мертвая ссылка ]
  18. ^ «связался с вами и спросил об исходном коде» . Архивировано из оригинала 26 сентября 2013 г. Проверено 21 сентября 2013 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: c35e2a141a81bb7a41bd0e39801302d9__1715757900
URL1:https://arc.ask3.ru/arc/aa/c3/d9/c35e2a141a81bb7a41bd0e39801302d9.html
Заголовок, (Title) документа по адресу, URL1:
Parchive - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)