Как установить Windows 10 на незагрузочный диск NVMe?

Как установить Windows 10 на незагрузочный диск NVMe?

Все началось с того, что я попытался сделать небольшой апгрейд своего верного компьютера (Asus A88XM-Plus, AMD A10, 256 + 128 Sata SSD). Мне нужно было больше места, поэтому я добавил диск Samsung NVMe на адаптере PCIe. Я намеревался перенести установку Windows 10 на NVMe, оставив один SSD для загрузки и систему Linux Mint.

Во-первых, все пошло не так, как я ожидал. Я не мог расширить разделы Windows из-за способа, которым Windows их создает. Я не мог загрузить Windows, так как каким-то образом исчезла информация о загрузке (хотя один раз она загрузилась нормально... один раз). Я продолжал получать ошибку 0x00..00e. Я не мог использовать инструменты восстановления Windows, так как без загрузочной Windows я не мог создать USB-ключ Windows. Я, наконец, справился благодаря старой виртуальной машине на моем другом компьютере с Linux, но это тоже не сработало. Некоторые инструменты (bootrec /fixmbr) работали, а некоторые инструменты (bootrec /RebuildCDB) не работали, потому что «запрошенное системное устройство» не было найдено. Поэтому, потратив 3 полных дня на попытки исправить это, я сдался и пришел к выводу, что нужно все переустановить.

Мой LinuxMint был свежим и работал, поэтому я сосредоточился на Windows. Я использовал USB-ключ Windows 10 для установки Windows с: только диском NVMe в коробке. CSM отключен. Безопасная загрузка отключена. Затем удалил все разделы на диске NVMe в меню пользовательской установки установщика. Выбрал пустое место, чтобы запустить установку. При первой перезагрузке я выключил компьютер, чтобы извлечь USB-накопитель и вставить SSD с Linux, чтобы у меня был загрузочный диск. Запустил систему Linux. Обновил grub. Перезагрузил. Теперь в меню Grub есть запись для системы Windows, и я могу ее запустить... или так я думал. Grub продолжал говорить мне, что такого устройства нет. Я проверил UUID диска, он был правильным. Перечислив разделы (ls), я понял, что Grub, похоже, не видит/не загружает диск NVMe.

Почитав еще немного, я узнал, что Windows на самом деле может использовать существующий раздел EFI, если найдет его во время установки. Поэтому я начинаю снова, но на этот раз я оставляю SSD с Linux на месте, чтобы установщик Windows мог использовать раздел EFI на нем. Тот же процесс удаления всех разделов в NVMe и выбора пустого места для установки. Кажется, это работает. Менеджер Windows создал только 2 раздела на NVMe и, очевидно, поместил данные в раздел EFI SSD. Компьютер перезагружается, и в BIOS я вижу еще одну запись UEFI под названием «Windows Boot Manager». Отлично, я выбираю ее, чтобы продолжить установку... или так я думал. Windows встречает меня точно такой же ошибкой 0x00...00e, сообщающей мне, что моя система нуждается в ремонте.

Это наводит меня на мысль, что Windows также не загружает NVMe во время загрузки и, следовательно, не может найти фактический системный раздел.

Есть ли какое-то решение этой проблемы?

решение1

Обойти это можно несколькими путями, но я настоятельно рекомендую устанавливать операционную систему на диск, подключенный к материнской плате. Это связано с тем, что Windows должна загрузить драйвер для запуска карты PCIe, а это хрупко, и, вероятно, поэтому Windows не может загрузиться в вашем случае. У нас была система, когда Windows работала нормально, пока обновление не привело к тому, что она не смогла инициализировать карту диска PCIe, и нам пришлось загрузиться с диска восстановления.

Лучше всего установить Linux и Windows на SATA SSD в отдельных разделах и создать для них два раздела на NVMe для данных. На системном диске у вас должно быть все для загрузки обеих систем и дополнительные данные (домашняя, пользовательская, медиа и т. д.) на NVMe, что также позволит обеим системам получить прирост производительности!

Дело в том, что даже если вам удастся заставить его работать, он может сломаться и его будет сложно починить. Это избавит вас от массы головной боли, если вы позволите процессу загрузки быть простым в обеих операционных системах. Есть еще один способ, который я могу придумать, но я его не пробовал, и он заключается в запуске Windows под виртуальной машиной с NVMe в качестве физического диска. Таким образом, доступ к диску будет эмулироваться слоем виртуальной машины, и Windows не будет знать, что он находится на карте PCIe. Конечно, это повлечет за собой накладные расходы на виртуализацию, поэтому все зависит от того, для чего вы используете Windows.

решение2

Я понимаю, что для загрузки с диска NVMe на устройстве PCIe необходимо загрузиться в UEFI BIOS, поскольку не-UEFI BIOS не распознает диск NVMe при загрузке. Кроме того, я думаю, что BIOS требует, чтобы все диски были GPT для перехода на UEFI. Если я ошибаюсь, надеюсь, кто-нибудь меня поправит.

Связанный контент