Назад | Перейти на главную страницу

Виртуализация рабочего стола MS-DOS и дословное копирование жесткого диска

Здесь, на работе, у нас есть один пользователь с каким-то специализированным устаревшим программным обеспечением, разработчик которого давно уже «пощипал» *.

При попытке скопировать программу в другие системы (пытаясь проверить, работает ли она в режиме совместимости), мы получаем строгое предупреждение от программы, сообщающее нам, что при использовании инструментов дефрагментации или сжатия программа может потерять свой «серийный номер». Я понимаю, что программное обеспечение пытается выполнить некоторые проверки содержимого жесткого диска (возможно, в каких секторах хранится программа), чтобы проверить, является ли это законной копией.

Пользователь говорит нам, что она любит эту программу и что современные альтернативы не интересны (не говоря уже о том, что на нее нет бюджета).

Итак, единственное решение, которое я вижу возможным, - это виртуализация, но я не знаю, как это работает с низкоуровневым доступом к диску. Создает ли процесс виртуализации точную копию диска? Должен ли я использовать определенный инструмент / настройку?

Пока что наши виртуальные ПК были настроены с помощью VMWare (ESXi и Player), но мы открыты для Virtuabox, если это будет работать лучше.

* Учитывая, сколько лет программе, возможно, вся команда разработчиков сейчас буквально «вздрогнула».

Я согласен с идеей CJC о создании образа диска, но все равно у вас могут быть проблемы.

A) Если это более старый диск, у него будет определенная геометрия диска (цилиндр, секторы, головки), и мне интересно, будет ли работать образ диска, записанный на новый жесткий диск. Если программа действительно настолько старая и ищет определенные сектора (кстати, ужасное DRM ...), то диск не обязательно будет работать, когда вы поместите образ обратно на новый диск.

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

Б) Если вы имитируете и создаете точную копию, ваша ОС, которая используется, должна быть довольно общей; ваша сетевая карта, контроллер диска и другие драйверы предназначены для эмулируемой среды, а не для физического ПК. Если я сделаю образ компьютера HP и помещу этот образ в Dell, он не сработает; новая система будет искать драйверы, соответствующие HP. Если ОС не является гибкой ... Сегодня дистрибутивы Linux редко нуждаются в дополнительных драйверах из-за проверки времени загрузки вашей системы и Windows жестяная банка измените некоторые вещи, но если это низкоуровневый драйвер, который становится непослушным, у вас могут возникнуть проблемы.

Если вам повезет, вы получите ОС для загрузки в состоянии, в котором вы сможете установить «правильные» драйверы для эмулируемой среды. Если не повезет, вылетит или синий экран.

Если вы все еще хотите попробовать, сначала создайте резервную копию, чтобы вы могли восстановить диск, если он испортится, и используйте диск Linux для преобразования диска в необработанный образ диска, а затем используйте утилиты Virtualbox для преобразования необработанного диска в vhd изображение, которое он может прочитать и прикрепить к новой виртуальной машине. Это скажет вам, будет ли он работать с Virtualbox; это первый шаг, который я попытаюсь сделать. Убедитесь, что у вас установлен второй диск, на котором может храниться весь диск, образ которого вы создаете.

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

Прежде всего, я бы загрузил компакт-диск Linux и использовал «dd», чтобы скопировать весь жесткий диск где-нибудь еще, предпочтительно файл на другой, больший диск (например, «dd if = / dev / hda of = / path / в / смонтированный / usb / диск / имя файла "). Таким образом, если случится что-то глупое, у вас есть выход.

Если это MS-DOS, смотрели ли вы на легкое решение вроде DOSBox? Он существует в основном для того, чтобы играть в старые игры DOS на современном оборудовании. Я не могу сказать, глядя на документацию, но вы можете смонтировать файл образа диска, созданный из dd, в DOSBox. Если вы не можете сделать это напрямую, должен быть способ конвертировать файл изображения.

Ах, похоже, есть инструменты для преобразования вывода dd для VirtualBox, поэтому, если DOSBox не сработает, есть этот маршрут. Я уверен, что у VMWare будет аналогичный инструмент (термин для поиска может быть чем-то вроде «скрыть необработанное изображение в» (как бы ни назывался формат виртуального жесткого диска VMWare).

Обновить:

Вот инструмент для DOSbox: http://www.dosbox.com/wiki/IMGMOUNT но я не пробовал, и все, что связано с указанием геометрии диска, заставляет меня думать, что это может раздражать.