Хотя нет реальной причины, по которой вам нужно было бы читать дискету, это не должно мешать нам посмотреть, сможем ли мы это сделать!
Недавно я разговаривал со старым другом, и мы заметили, как сильно изменились со временем как ПК, так и операционная система Windows, и тем не менее они остаются в значительной степени обратно совместимыми с оригинальным IBM PC начала 1980-х годов. Этот разговор в конечном итоге привел к глупому спору о том, способна ли современная виртуальная машина Hyper-V читать физический гибкий диск.
В то время, когда я делал ставку на спор, я, честно говоря, не был уверен, можно ли заставить Hyper-V читать дискету или нет. У меня было предчувствие, что это можно сделать, но у меня никогда не было причин попробовать это, и я не видел, чтобы кто-то еще делал это.
Если вам интересно, Hyper-V никогда официально не поддерживал гибкие диски. Когда-то к виртуальной машине Hyper-V можно было подключить виртуальный дисковод гибких дисков, но между виртуальной гибким диском и физическим гибким диском есть большая разница. Виртуальная дискета на самом деле была просто файлом, который вел себя как дискета, вроде того, как виртуальный жесткий диск — это файл, действующий как жесткий диск. Конечно, даже поддержка виртуальных гибких дисков была удалена из Hyper-V несколько лет назад.
Современные ПК больше не включают в себя контроллеры гибких дисков, поэтому о подключении устаревшего дисковода гибких дисков к современному серверу Hyper-V не могло быть и речи. Поэтому мой план состоял в том, чтобы попробовать использовать USB-дисковод для гибких дисков. Мне удалось заполучить USB-дисковод, и я выкопал из хранилища старый загрузочный диск Windows 95. Поскольку диск портился у меня на чердаке около 20 лет, я не был уверен, будет ли он читабельным и, если уж на то пошло, распознает ли Windows Server дискету USB. Однако несколько удивительно, что моя машина с Windows Server 2019, настроенная как сервер Hyper-V, без проблем читала старый загрузочный диск Windows 95. Посмотрите рисунок 1. Он показывает версию Windows Server и сегодняшнюю дату, а также диск A: в проводнике и файлы Windows 95, датированные июлем 1995 года.
Теперь, когда я знал, что Windows Server может читать дискеты, мне нужно было найти способ заставить виртуальную машину Hyper-V распознавать диск. Для этого я прибегнул к использованию USB passthrough .
Существует метод, с помощью которого вы можете подключить USB-накопитель к хосту, а затем использовать консоль управления дисками для удаления сопоставления диска, что позволяет выделить USB-накопитель для использования с Hyper-V. К сожалению, я не мог использовать эту технику, потому что Windows распознает диск как настоящую дискету, а не как запоминающее устройство USB.
Поскольку я не мог заставить работать сквозной USB-порт на стороне сервера, я обратил свое внимание на сквозной USB-порт на стороне клиента. Я отключил USB-дисковод от моего Windows Server и вместо этого подключил его к рабочему столу Windows 10, который также без проблем распознал дискету.
Следующим моим шагом было установить подключение к удаленному рабочему столу с моего клиентского ПК на виртуальную машину, работающую на сервере Hyper-V. При этом я решил использовать расширенный режим сеанса, поскольку он позволяет перенаправлять локальные устройства и ресурсы.
Открыв окно «Подключение к удаленному рабочему столу», я выбрал вкладку «Локальные ресурсы» и нажал кнопку «Дополнительно». Как вы можете видеть на рис. 2 , я смог выбрать дискету для перенаправления. Теперь все, что мне нужно было сделать, это вернуться на вкладку «Общие» и ввести имя виртуальной машины, к которой я хотел подключиться.
Как видно на рис. 3 , дисковод действительно был доступен изнутри виртуальной машины Hyper-V.
Итак, какая практическая польза от этой техники? Вероятно, нет, если только у вас случайно не оказалось несколько старых файлов на дискете, и вам по какой-то причине нужно импортировать их в виртуальную машину Hyper-V. Тем не менее, мне показалось интересным, что современные операционные системы Windows все еще могут читать дискеты. Как бы мне ни хотелось вывести этот проект на новый уровень и попробовать установить Windows 95 на виртуальную машину Hyper-V, об этом не могло быть и речи из-за моей неспособности загрузить виртуальную машину с дискеты.