Приветствую всех! Многие давно привыкли, что ленточные накопители — что-то высоконадёжное и предназначенное для долговременного использования. Но есть один стандарт, про который сказать так как-то не получается, и имя ему — QIC. Странная конструкция стримера и кассеты, не слишком уж долгий срок хранения — всё это про него.
Так получилось, что как-то раз ко мне попал стример такого типа и кассета к нему, на которой ещё оставались какие-то данные. Что же с ним можно сделать? Давайте разбираться.
Итак, в сегодняшней статье поговорим про стримеры стандарта QIC и miniQIC. Попутно разберёмся, как они работают и в чём их фатальный недостаток, попробуем восстановить данные с архива тридцатилетней давности и узнаем, почему нельзя пользоваться проприетарным софтом для резервного копирования.
Давным-давно, где-то в начале семидесятых, появился стандарт QIC. Можно сказать, что это основоположник всех ныне существующих стримеров, первый формат носителей без всякой древней экзотики типа бобин или приводов в виде огромных ящиков. Конструкция их была во многих отношениях довольно неудачной, что, однако, не помешало им и производным от них моделям продержаться больше сорока лет (последние экземпляры перестали выпускаться только в середине 2010-х).
Вот для примера один из ранних стримеров QIC. Этот экземпляр девятидорожечный, работает с кассетами на 45 или 60 МБ.
Был помимо обычного формата и miniQIC, более дешёвый и чуть менее вместительный, нежели «большой» собрат.
Перво-наперво рассмотрим более древний экземпляр. Это Tandberg Data TDC 3820. С виду он очень похож на мобайл-рэк для жёсткого диска — такая же дверца, куда надо вставлять кассету.
Дверца открыта. Качество изготовления на очень высоком уровне, ничего не гремит и не болтается.
Сверху виден приводной мотор, на вал которого также насажена крыльчатка, охлаждающая его при работе.
С другой стороны нижняя часть двигателя и разъём подключения головки.
Подключается стример по интерфейсу SCSI. Наклейка недвусмысленно намекает на то, откуда он: из древней рабочей станции Siemens Nixdorf.
Кассета.
Обратная её сторона способна поставить в ступор обывателя: привычных отверстий для катушек там нет. Вместо них тут сплошная алюминиевая пластина, помимо корпуса выполняющая роль радиатора охлаждения: при перемотке ленты из-за трения кассета очень сильно нагревается.
Весь доступ к кассете производится с верхнего торца. Тут находится шторка, закрывающая ленту, а также пластиковый ролик для её перемотки. Чуть правее окошко для контроля конца ленты с установленным в нём зеркальцем. Ещё правее виден ролик, на котором находится участок ленты с двумя отверстиями, которые и считывает датчик в стримере. Что забавно, лента на катушках никак не закреплена, если промотать слишком далеко, она просто соскочит и кассету придётся разбирать и возвращать ленту в правильное положение.
А вот стример Conner. Он довольно простенький и с необычным по нашим меркам подключением — к флоппи-контроллеру.
Можно даже сказать, что девайс этот практически SOHO-сегмента: лёгкий пластмассовый корпус, очень дешёвая и простая конструкция, подключение, не требующее внешнего контроллера (были экземпляры с платой ISA для аппаратного сжатия, но таких я никогда не держал). Таких стримеров в первой половине девяностых выпускалось огромное количество. Все эти Colorado (основоположник такого интерфейса), Jumbo, Conner, Seagate Backup — по сути одно и то же.
Кассета к нему. Это тот же самый QIC с такой же лентой, просто в уменьшенного размера картридже (примерно так же, как VHS и VHS-C).
А вот для примера схема типичного стримера QIC (от Wangtek). Всего полтора десятка микросхем (большая часть которых — дискретная логика), по нынешним меркам непостижимо малое число.
Помимо QIC существовало ещё несколько форматов, очень похожих на него. Все они либо были прямыми его последователями, либо базировались на некоторых его конструктивных решениях.
QIC-EX. Кассета несколько иной конструкции.
Travan. По сути тот же miniQIC, но большей ёмкости.
Картридж слегка поменял форму, в старый стример он не влезет.
iOmega Ditto. Лидер по части производства необычных носителей никак не мог не приобщиться. Кассеты здесь те же, что и в Travan'е.
Внешний стример QIC с интерфейсом LPT. Что может быть страннее?
Очевидно, Ditto Max — стример с выдвижным лотком как у оптического привода.
Выпускались они и во внешнем исполнении.
А это SLR — самый большой по объёму из QICов, с сервометками и увеличенной плотностью записи.
Само собой, я не удержался и разобрал этот экземпляр. Внутри практически пусто. Конструкция стримера проста настолько, насколько возможно: головка, приводной ролик (капстан), несколько микриков, и… всё.
Головка поворотная, при закрытии дверцы она въезжает в окошко в кассете.
А вот концевики. Один отвечает за вставку кассеты, другой — за закрытие дверцы.
Ну что же, время пробовать включать.
Подаём питание и вставляем кассету. Девайс охотно принял её, помотал лентой, но, разумеется, читать отказался: она более старого формата, чем он.
А вот с одной из числа новых всё оказалось менее гладко: стример долго-долго перематывал её, пока не начал просто гудеть своим двигателем, вскоре остановившись. Что-то тут не так…
Теперь очередь главного фатального недостатка QIC.
Вытаскиваем кассету из стримера и видим, что ей сильно поплохело: резиновый пассик рассохся и лопнул. Чтобы избежать такого, кассеты надо перематывать примерно один-два раза в год, однако тут этого, разумеется, никто не делал. Заменить этот пассик довольно проблематично: слишком жёсткий может порвать или поцарапать ленту, слишком эластичный растянется и кассету зажуёт.
Заокеанские любители ретро-железа используют в таких целях некие «Plastibands», которые после небольшого растягивания садятся на нестандартное для них место как родные. Есть и более экзотические методы вроде погружения пассика в горячую воду, но это всё полумеры.
Бывают и более печальные случаи, когда пассик не рвётся, а растягивается, отчего ленту зажёвывает. Пострадавший картридж в таких случаях останется только выкинуть: заломы на ленте убрать уже не получится.
Другой проблемой является кончина самого стримера. Вот эта чёрная жвачка — не невесть каким образом попавший внутрь агрегата битум, а не что иное, как всё, что осталось от приводного валика. Его резина тоже имеет свойство терять свою вулканизацию. При этом заменить капстан на что попало нельзя. В стримере нет ведущего вала, скорость движения ленты задаётся именно этим роликом. Так что если поставить вместо него что попало и не попасть в размер, стример перестанет читать кассеты, а то, что записано на нём, не будет читаться на рабочих агрегатах.
Ну что же, время маленького стримера.
Верхней крышки у него нет. Хорошо видны капстан, головка и плата управления.
Снизу пластиковое основание и наклейка.
А вот тот самый разъём подключения.
Плата снята.
Стример ожидаемо построен на неком заказном чипе.
А это концевики вставки кассеты и оптический датчик конца ленты.
Втыкаем картридж и смотрим, что будет.
Стример точно так же покрутил лентой и подвигал головками. На удивление, пассик не лопнул, так что можно пробовать дальше.
Теперь очередь софта. Качаем последнюю версию того самого Colorado Backup.
Запускаем его.
Втыкаем кассету и пробуем прочитать. На удивление, на кассете до сих пор что-то есть, а программа что-то читает.
Однако при попытке восстановить данные на диск выдаётся ошибка.
Казалось бы, что сложного в считывании старого архива? Качаем софт для резервного копирования, втыкаем кассету и сливаем данные? Не тут-то было. На кассете нет файловой системы (нынешние модели с LTFS не в счёт), поэтому каждое ПО для записи изворачивается по-своему. С этим самым софтом кроется неочевидная подстава: даже если кассеты пережили долгое хранение, а рабочий стример для их чтения есть под рукой, восстановить данные удастся далеко не всегда. Если у софта, которым писались бэкапы, прекратилась поддержка или поменялся формат записи, то архивы очень часто остаётся либо выкинуть, либо положить на полочку в надежде найти нечто, могущее их прочитать. По закону подлости оказывается, что ссылки именно на ту версию, которая нужна, протухли в незапамятные годы, единственный скачанный дистрибутив требует ключа, таковой от новой версии не подходит, ну а кряк для всеми позабытого софта вообще является чем-то вроде научной фантастики. Поэтому записывать что-то на ленту рекомендую исключительно TAR'ом и только им: даже спустя много лет любой дистрибутив линукса сможет всё прочитать. Ну, или NTBACKUP, благо он-то точно никуда не подевается.
В случае с вот такими стримерами основоположником формата записи является так называемый QICStream, за годы развития программ претерпевший кучу изменений, значительных и не очень. В итоге мы имеем огромное количество софта, где каждая версия имеет свой формат. Само собой, на восстановлении архивов после долгих лет простоя это сказывается не лучшим образом.
Раз сходу не получилось, пробуем более интересные методы.
Первым делом попытаемся скачать образ всей ленты. Для этого понадобится машина с линуксом, поддерживающая данный формат. В моём случае в качестве дистрибутива был выбран Ubuntu 6.06, где заведомо имелся нужный драйвер. Подключаем стример, загружаем ОС и приступаем к считыванию. Первым делом загрузим драйвер стримера:
В случае, если ваш экземпляр подключается не к флоппи-контроллеру, делать этого не нужно. Теперь самый интересный момент. Втыкаем кассету и ждём инициализации, после чего выполняем команду:
И, если пассик не лопнет и ленту не зажуёт, после часового «вжжж — уиии — вжжж» мы получим файл, примерно равный объёму кассеты. В общем-то, с дампом всё, теперь самая сложная задача — его декодировать.
Единственный известный мне вариант — QICStreamReader. Это софт, позволяющий декодировать форматы целого ряда программ резервного копирования.
Для сборки софта ставим Visual Studio и компилируем решение. Чтобы вам не пришлось это делать лишний раз, актуальный на момент тех опытов софт я выложил на old-dos.ru. Теперь остаётся только прогонять полученный дамп всеми возможными способами и надеяться на успех. Которого в моём случае, увы, не было.
Увы, но ни одна из этих программ формат того, что было на кассете, не прочитала. У меня появились подозрения, что к стримеру была подключена та самая ISAшная плата сжатия, но подтвердить или опровергнуть их было нечем.
Поэтому оставался только один вариант: скачать все доступные в сети программы для бэкапов и попытать счастья с ними. Попутно всё, что удалось найти, также выложил в сеть. На очередной попытке кассета наконец поддалась. Заветной программой оказался банальный Colorado Backup одной из версий.
Да ничего интересного. Какие-то нисколько не редкие игры, офисный софт, парочка старых скриншотов и немного бухгалтерской макулатуры.
Вот такими были данные, которые удалось оттуда извлечь.
Несмотря на сложности и отсутствие какого-то универсального подхода, данные с кассеты таки удалось извлечь. Опыт этот был довольно интересным — всё же не так часто приходится разбираться с архивом, которому уже четверть века (по компьютерным временам — почти вечность). На прощание сделаем выводы о том, что удалось выяснить в ходе экспериментов:
Такие дела.
Читайте также:
Так получилось, что как-то раз ко мне попал стример такого типа и кассета к нему, на которой ещё оставались какие-то данные. Что же с ним можно сделать? Давайте разбираться.
Итак, в сегодняшней статье поговорим про стримеры стандарта QIC и miniQIC. Попутно разберёмся, как они работают и в чём их фатальный недостаток, попробуем восстановить данные с архива тридцатилетней давности и узнаем, почему нельзя пользоваться проприетарным софтом для резервного копирования.
❯ Суть такова
Давным-давно, где-то в начале семидесятых, появился стандарт QIC. Можно сказать, что это основоположник всех ныне существующих стримеров, первый формат носителей без всякой древней экзотики типа бобин или приводов в виде огромных ящиков. Конструкция их была во многих отношениях довольно неудачной, что, однако, не помешало им и производным от них моделям продержаться больше сорока лет (последние экземпляры перестали выпускаться только в середине 2010-х).
Вот для примера один из ранних стримеров QIC. Этот экземпляр девятидорожечный, работает с кассетами на 45 или 60 МБ.
Был помимо обычного формата и miniQIC, более дешёвый и чуть менее вместительный, нежели «большой» собрат.
❯ Обзор оборудования
Перво-наперво рассмотрим более древний экземпляр. Это Tandberg Data TDC 3820. С виду он очень похож на мобайл-рэк для жёсткого диска — такая же дверца, куда надо вставлять кассету.
Дверца открыта. Качество изготовления на очень высоком уровне, ничего не гремит и не болтается.
Сверху виден приводной мотор, на вал которого также насажена крыльчатка, охлаждающая его при работе.
С другой стороны нижняя часть двигателя и разъём подключения головки.
Подключается стример по интерфейсу SCSI. Наклейка недвусмысленно намекает на то, откуда он: из древней рабочей станции Siemens Nixdorf.
Кассета.
Обратная её сторона способна поставить в ступор обывателя: привычных отверстий для катушек там нет. Вместо них тут сплошная алюминиевая пластина, помимо корпуса выполняющая роль радиатора охлаждения: при перемотке ленты из-за трения кассета очень сильно нагревается.
Весь доступ к кассете производится с верхнего торца. Тут находится шторка, закрывающая ленту, а также пластиковый ролик для её перемотки. Чуть правее окошко для контроля конца ленты с установленным в нём зеркальцем. Ещё правее виден ролик, на котором находится участок ленты с двумя отверстиями, которые и считывает датчик в стримере. Что забавно, лента на катушках никак не закреплена, если промотать слишком далеко, она просто соскочит и кассету придётся разбирать и возвращать ленту в правильное положение.
А вот стример Conner. Он довольно простенький и с необычным по нашим меркам подключением — к флоппи-контроллеру.
Можно даже сказать, что девайс этот практически SOHO-сегмента: лёгкий пластмассовый корпус, очень дешёвая и простая конструкция, подключение, не требующее внешнего контроллера (были экземпляры с платой ISA для аппаратного сжатия, но таких я никогда не держал). Таких стримеров в первой половине девяностых выпускалось огромное количество. Все эти Colorado (основоположник такого интерфейса), Jumbo, Conner, Seagate Backup — по сути одно и то же.
Кассета к нему. Это тот же самый QIC с такой же лентой, просто в уменьшенного размера картридже (примерно так же, как VHS и VHS-C).
А вот для примера схема типичного стримера QIC (от Wangtek). Всего полтора десятка микросхем (большая часть которых — дискретная логика), по нынешним меркам непостижимо малое число.
❯ Другие QIC'образные
Помимо QIC существовало ещё несколько форматов, очень похожих на него. Все они либо были прямыми его последователями, либо базировались на некоторых его конструктивных решениях.
QIC-EX. Кассета несколько иной конструкции.
Travan. По сути тот же miniQIC, но большей ёмкости.
Картридж слегка поменял форму, в старый стример он не влезет.
iOmega Ditto. Лидер по части производства необычных носителей никак не мог не приобщиться. Кассеты здесь те же, что и в Travan'е.
Внешний стример QIC с интерфейсом LPT. Что может быть страннее?
Очевидно, Ditto Max — стример с выдвижным лотком как у оптического привода.
Выпускались они и во внешнем исполнении.
А это SLR — самый большой по объёму из QICов, с сервометками и увеличенной плотностью записи.
❯ Tandberg Data
Само собой, я не удержался и разобрал этот экземпляр. Внутри практически пусто. Конструкция стримера проста настолько, насколько возможно: головка, приводной ролик (капстан), несколько микриков, и… всё.
Головка поворотная, при закрытии дверцы она въезжает в окошко в кассете.
А вот концевики. Один отвечает за вставку кассеты, другой — за закрытие дверцы.
Ну что же, время пробовать включать.
Подаём питание и вставляем кассету. Девайс охотно принял её, помотал лентой, но, разумеется, читать отказался: она более старого формата, чем он.
А вот с одной из числа новых всё оказалось менее гладко: стример долго-долго перематывал её, пока не начал просто гудеть своим двигателем, вскоре остановившись. Что-то тут не так…
❯ Отчего же QIC плох?
Теперь очередь главного фатального недостатка QIC.
Вытаскиваем кассету из стримера и видим, что ей сильно поплохело: резиновый пассик рассохся и лопнул. Чтобы избежать такого, кассеты надо перематывать примерно один-два раза в год, однако тут этого, разумеется, никто не делал. Заменить этот пассик довольно проблематично: слишком жёсткий может порвать или поцарапать ленту, слишком эластичный растянется и кассету зажуёт.
Заокеанские любители ретро-железа используют в таких целях некие «Plastibands», которые после небольшого растягивания садятся на нестандартное для них место как родные. Есть и более экзотические методы вроде погружения пассика в горячую воду, но это всё полумеры.
Бывают и более печальные случаи, когда пассик не рвётся, а растягивается, отчего ленту зажёвывает. Пострадавший картридж в таких случаях останется только выкинуть: заломы на ленте убрать уже не получится.
Другой проблемой является кончина самого стримера. Вот эта чёрная жвачка — не невесть каким образом попавший внутрь агрегата битум, а не что иное, как всё, что осталось от приводного валика. Его резина тоже имеет свойство терять свою вулканизацию. При этом заменить капстан на что попало нельзя. В стримере нет ведущего вала, скорость движения ленты задаётся именно этим роликом. Так что если поставить вместо него что попало и не попасть в размер, стример перестанет читать кассеты, а то, что записано на нём, не будет читаться на рабочих агрегатах.
❯ Conner
Ну что же, время маленького стримера.
Верхней крышки у него нет. Хорошо видны капстан, головка и плата управления.
Снизу пластиковое основание и наклейка.
А вот тот самый разъём подключения.
Плата снята.
Стример ожидаемо построен на неком заказном чипе.
А это концевики вставки кассеты и оптический датчик конца ленты.
Втыкаем картридж и смотрим, что будет.
Стример точно так же покрутил лентой и подвигал головками. На удивление, пассик не лопнул, так что можно пробовать дальше.
❯ Пробуем считывать
Теперь очередь софта. Качаем последнюю версию того самого Colorado Backup.
Запускаем его.
Втыкаем кассету и пробуем прочитать. На удивление, на кассете до сих пор что-то есть, а программа что-то читает.
Однако при попытке восстановить данные на диск выдаётся ошибка.
❯ Про софт
Казалось бы, что сложного в считывании старого архива? Качаем софт для резервного копирования, втыкаем кассету и сливаем данные? Не тут-то было. На кассете нет файловой системы (нынешние модели с LTFS не в счёт), поэтому каждое ПО для записи изворачивается по-своему. С этим самым софтом кроется неочевидная подстава: даже если кассеты пережили долгое хранение, а рабочий стример для их чтения есть под рукой, восстановить данные удастся далеко не всегда. Если у софта, которым писались бэкапы, прекратилась поддержка или поменялся формат записи, то архивы очень часто остаётся либо выкинуть, либо положить на полочку в надежде найти нечто, могущее их прочитать. По закону подлости оказывается, что ссылки именно на ту версию, которая нужна, протухли в незапамятные годы, единственный скачанный дистрибутив требует ключа, таковой от новой версии не подходит, ну а кряк для всеми позабытого софта вообще является чем-то вроде научной фантастики. Поэтому записывать что-то на ленту рекомендую исключительно TAR'ом и только им: даже спустя много лет любой дистрибутив линукса сможет всё прочитать. Ну, или NTBACKUP, благо он-то точно никуда не подевается.
В случае с вот такими стримерами основоположником формата записи является так называемый QICStream, за годы развития программ претерпевший кучу изменений, значительных и не очень. В итоге мы имеем огромное количество софта, где каждая версия имеет свой формат. Само собой, на восстановлении архивов после долгих лет простоя это сказывается не лучшим образом.
❯ Считываем дамп
Раз сходу не получилось, пробуем более интересные методы.
Первым делом попытаемся скачать образ всей ленты. Для этого понадобится машина с линуксом, поддерживающая данный формат. В моём случае в качестве дистрибутива был выбран Ubuntu 6.06, где заведомо имелся нужный драйвер. Подключаем стример, загружаем ОС и приступаем к считыванию. Первым делом загрузим драйвер стримера:
sudo modprobe zftape
В случае, если ваш экземпляр подключается не к флоппи-контроллеру, делать этого не нужно. Теперь самый интересный момент. Втыкаем кассету и ждём инициализации, после чего выполняем команду:
sudo dd if=/dev/nqft0 of=tape.bin conv=sync,noerror &
И, если пассик не лопнет и ленту не зажуёт, после часового «вжжж — уиии — вжжж» мы получим файл, примерно равный объёму кассеты. В общем-то, с дампом всё, теперь самая сложная задача — его декодировать.
❯ QICStreamReader
Единственный известный мне вариант — QICStreamReader. Это софт, позволяющий декодировать форматы целого ряда программ резервного копирования.
Для сборки софта ставим Visual Studio и компилируем решение. Чтобы вам не пришлось это делать лишний раз, актуальный на момент тех опытов софт я выложил на old-dos.ru. Теперь остаётся только прогонять полученный дамп всеми возможными способами и надеяться на успех. Которого в моём случае, увы, не было.
❯ Игры с бэкапами
Увы, но ни одна из этих программ формат того, что было на кассете, не прочитала. У меня появились подозрения, что к стримеру была подключена та самая ISAшная плата сжатия, но подтвердить или опровергнуть их было нечем.
Поэтому оставался только один вариант: скачать все доступные в сети программы для бэкапов и попытать счастья с ними. Попутно всё, что удалось найти, также выложил в сеть. На очередной попытке кассета наконец поддалась. Заветной программой оказался банальный Colorado Backup одной из версий.
❯ Что же было на той кассете?
Да ничего интересного. Какие-то нисколько не редкие игры, офисный софт, парочка старых скриншотов и немного бухгалтерской макулатуры.
В общем, ничего особенного...
Разумеется, скриншотов с DOSBox там не было. Это я запускал найденные приложения.
Разумеется, скриншотов с DOSBox там не было. Это я запускал найденные приложения.
АО " Солнце " г. Чудово Ленинградская обл.
Каткову Виктору Геннадьевичу
К О М М Е Р Ч Е С К О Е П Р Е Д Л О Ж Е Н И Е
Предприятие ООО " Гамма " предлагает гофроящик N 40 по цене 4200 руб. за штуку ( с доставкой до г. Чудово ) в обмен на продукцию Вашего предприятия . Объем разовой поставки 15 000 - 20 000 шт.
Наш юридический адрес :
164505
Архангельская обл.
г. Северодвинск
пр. Юбилейный д. 15 а оф.33
тлф. в Архангельске 26-49-08
факс
Директор ООО " Гамма " Глебов А.Ю.
Вот такими были данные, которые удалось оттуда извлечь.
❯ Так что же в итоге?
Несмотря на сложности и отсутствие какого-то универсального подхода, данные с кассеты таки удалось извлечь. Опыт этот был довольно интересным — всё же не так часто приходится разбираться с архивом, которому уже четверть века (по компьютерным временам — почти вечность). На прощание сделаем выводы о том, что удалось выяснить в ходе экспериментов:
- Даже если непосредственно сама лента осталась абсолютно целой, внутри кассеты может сломаться что-то ещё, что сильно затруднит её чтение. К счастью, для новых форматов (DLT, LTO) проблема не так актуальна.
- Хотя магнитная лента может храниться очень долго, устройства для её считывания не вечны и при выходе из строя могут и вовсе запороть бесценные для вас архивы.
- Даже если сам стример с кассетами стойко перенесли все удары судьбы, может оказаться, что прочитать эти ленты банально нечем.
- Разные версии одного и того же софта могут иметь несовместимый формат записи, что принесёт проблемы в дальнейшем.
- Проприетарные решения — зло, какими бы удобными они ни казались. Тот же TAR распространён повсеместно и без проблем читает записанные им кассеты.
Такие дела.
Новости, обзоры продуктов и конкурсы от команды Timeweb.Cloud — в нашем Telegram-канале ↩