Prologus

Восстановление данных - индустрия современная, поэтому новые технологии и продукты для восстановления информации с современных устройств появляются на рынке постоянно. Что там из последнего? PC-3000 Portable III, которая умеет вытаскивать инфу с погибших SSD на протоколах NMVe и PCIe. Recovery Explorer, прекрасно справляющийся с восстановлением данных из RAID-массивов с не слишком широко распространёнными типами файловых систем, и с недавних пор работающий с ним в паре DeepSpar Disk Imager. Многочисленные и растущие как грибы после дождя инструменты для восстановления информации с NAND-накопителей, наиболее именитыми из которых являются Rusolut, PC-3000 и Soft-Center. Все это, бесспорно, нужно, и очень востребовано, и вообще очень круто, но...

Но случается так, что для решения конкретной, текущей, насущной и важной задачи все эти прекрасные инструменты оказываются бесполезны. Просто потому, что задача связана с давно, казалось бы, ушедшими технологиями. Которые, между тем, еще существуют.

Вот и пришлось мне на днях с такой задачей столкнуться. Дискета 3.5 дюйма. Мамонт компьютерных технологий. Динозавр хранения данных. Ниже, если вам интересно узнать о том, как я данные с 3.5` дискеты восстанавливал.

USB-FDD, коим по логике можно было бы легко и без проблем прочитать дискетку, не справился с поставленной задачей: дискетку не увидел (их было затестировано три штуки, и все три оказались беспомощны). Поэтому пришлось "изобретать велосипед".

Да простят мне читатели этот скромный отчет, в коем нет ни новизны, ни прорыва какого технологичского, а есть лишь ностальгия и античная пыль, осыпающаяся с древних устройств.

К слову, дискеты пока еще можно купить в магазинах. Далеко не во всех, конечно, но все же предложения имеются. Например, на Amazon можно купить 3.5-дюймовые дискеты упаковками по 10 штук и больше. Куча предложений 3.5-дюймовых дискет имеется и на площадке ebay (там же можно найти и дискеты 5.25 дюйма). Ну и, конечно, дискеты можно встретить в обычных канцелярских магазинах - правда, все реже и реже.

Quaestio descriptio

Собственно, описание проблемы будет коротким. Пришел заказчик, принес носитель. 3.5 дюйма, стандартная дискета. Интересовали с нее данные: считать дискету оказалось нечем, да и не было уверенности, что после двух десятилетий хранения с ней все в порядке. Решение проблемы виделось банальным:

1) Найти оборудование для считывания дискеты;

2) Считать дискету в образ;

3) Вытащить из считанного образа вменяемые данные;

4) Отдать то, что извлекли, заказчику.

Но на деле все оказалось не так банально.

Pars una. Machina exhumation

Для начала - нужно найти компьютер, на котором дискету можно считать. То есть компьютер, на материнской плате которого имеется контроллер флоппи-дисков и соответствующий разъем. На современных материнских платах уже не размещают даже стандартный 40-пиновый АТА-разъем - что уж говорить о более древнем разъеме для дискет?

Пришлось проследовать в гараж, где буквально эксгумировать труп: некогда великолепный образец высокопроизводительного компьютера на базе процессора Cyrix в сильно пожелтевшем от времени Mini Tower. Лет надцать назад я на нем самозабвенно рубился в Сид Мейерс: Цивилизейшен =). Пожалуй, по окончании работ освежу воспоминания.

Перед включением этого чуда техники было проделано:

1) Замена батарейки на материнской плате;

2) Прозвонка цепей блока питания (все-таки АТ, который не включался лет двадцать точно - мало ли чего могло произойти);

3) Удаление из корпуса элементов биологической активности (мышиного гнезда, покинутого много лет назад, и огромных пыльных косм паутины).

Когда все это было завершено, для полного погружения в атмосферу древнейших времен на свет Божий был извлечен монитор Samsung SyncMaster 763MB. Все это было собрано (подключать PS/2-клавиатуру пришлось через соответствующий переходник), запущено и протестировано.

Надо сказать, что повторный, через много лет, опыт от работы с ЭЛТ-монитором не самый приятный. Как в стародавние времена мы могли часами - да что часами - сутками! - просиживать перед ними? Очень быстро устали глаза, мерцание заметно невооруженным глазом.

Pars secunda. Quaerare programmata

Итак, железо для работы готово. Пришла пора подготовиться программно. Для начала на жесткий диск великолепного образца античного компьютерного зодчества устанавливаем MS DOS 6.2, коий скачать пока проблем никаких не составляет. Система стоит - запихиваем в дисковод дискетку и пишем в командной строке вожделенное

A:

Дисковод активен, что уже вселяет надежду на успех. Осталось создать образ дискеты, а уж с ним-то мы можем работать современным софтом.

Для создания образа из недр памяти была извлечена программа HD-Copy. Одно из ее наиболее важных отличительных (и положительных) качеств - возможность клонировать не только отформатированные, но и не отформатированные (в том числе поврежденные) дискеты, а также возможность, кроме физического клонирования "диск - диск", проводить клонирование "диск - буфер - файл". Для этого у программы есть ряд настроек (в частности, пропускать верификацию при чтении). Что, собственно, нам и нужно.

HD-Copy версия 1.7р. Экран "О программе"
HD-Copy версия 1.7р. Экран "О программе"

Pars tres. Est autem necromantia

Все готово для работы: есть компьютер, куда можно воткнуть дисковод (и он даже работает), есть дисковод, куда можно вставить дискету (дисковод тоже работает), и есть ПО, с помощью которого дискету можно прочитать и, что важнее, сохранить в файл. Приступаем к работе.

Попытка прочитать дискету, которую забыл вставить в дисковод =)
Попытка прочитать дискету, которую забыл вставить в дисковод =)

Важный момент: прежде, чем приступить к чтению, необходимо изменить настройки программы. Доступ к ним получаем в Options menu. Отключаем все, кроме verbose mode, а user mode переводим в prof[essional]. Теперь можно читать, поскольку программа не будет перечитывать то, что не смогла прочитать с первого раза, и не будет проводить ненужных нам на стадии вычитывания проверок. Все это можно включить позже, если результат вычитывания нас не удовлетворит. Зачем мы это сделали? Ожидая от столь старого устройства соответствующего физического состояния (а именно: наличия как минимум дефектных секторов), мы не можем рисковать усугубить ситуацию. Ведь если дисковод будет многократно пытаться перечитывать один и тот же адрес, то вполне может загубить и соседние области - а оно нам надо?

Убеждаемся, что выбрано верное устройство для чтения (source); жмем на кнопку "Read". По экрану побежали буковки "R" ("reading"). В области статуса отображается адрес, который читается в настоящий момент. Ну и, конечно, жужжит дисковод =).

Чтение дискеты программой HD-Copy. Дискета на месте, данные читаются.
Чтение дискеты программой HD-Copy. Дискета на месте, данные читаются.
Чтение дискеты завершено за 84.5 секунды
Чтение дискеты завершено за 84.5 секунды
Сохраняем полученный буфер в файл
Сохраняем полученный буфер в файл

По завершении вычитывания (84.5 секунды! а в неплохой форме мой дисковод, да и дискетка тоже не испорчена) переходим в меню, выбираем Put to file, и сохраняем содержимое буфера в файл. Важный момент: папка, в которую будем сохранять данные, должна быть создана заранее. Это не Windows, по запросу приложения папки здесь не создаются =).

Conclusio

Акт некромантии свершился, давно похороненная сущность извлечена на свет. Заглянем в образ:

Нулевой сектор считанного образа дискеты
Нулевой сектор считанного образа дискеты

Данные осмысленные. Перед нами стандартный раздел FAT12, внутри которого лежат 34 файла. По понятным причинам (конфиденциальность и все такое) рассказывать об этих файлах в деталях я не могу, но могу сказать, что это документы в формате текстового редактора Lexicon.

Ошибок внутри этих файлов не оказалось, так что дискету даже не пришлось перечитывать - все считалось правильно с первого раза. Умели же делать раньше!