| Следующая версия | Предыдущая версия |
| ovh_-_установка_любого_windows_через_bin456789_reinstall [2026/10/14 10:39] – создано - внешнее изменение 127.0.0.1 | ovh_-_установка_любого_windows_через_bin456789_reinstall [2026/10/14 10:45] (текущий) – внешнее изменение 127.0.0.1 |
|---|
| Универсальный способ переустановить **выделенный сервер OVH** (UEFI) на любую версию Windows с помощью скрипта [[https://github.com/bin456789/reinstall|bin456789/reinstall]]. Алгоритм проверен на сервере OVH (платформа ASRockRack, AMI UEFI, 2×NVMe, Ryzen). Ниже — пошаговый рецепт «на будущее». | Универсальный способ переустановить **выделенный сервер OVH** (UEFI) на любую версию Windows с помощью скрипта [[https://github.com/bin456789/reinstall|bin456789/reinstall]]. Алгоритм проверен на сервере OVH (платформа ASRockRack, AMI UEFI, 2×NVMe, Ryzen). Ниже — пошаговый рецепт «на будущее». |
| |
| **Плейсхолдеры:** //<SERVER_IP>// — адрес сервера; //<SSH_USER>///<SSH_PASSWORD>// — доступ к установленной Linux/rescue (в Debian это НЕ root, а обычный пользователь с sudo); //<WIN_USER>// (обычно administrator), //<WIN_PASSWORD>//, //<RDP_PORT>// (обычно 3389). | **Плейсхолдеры:** ''%%<SERVER_IP>%%'' — адрес сервера; ''%%<SSH_USER>%%'' / ''%%<SSH_PASSWORD>%%'' — доступ к установленной Linux/rescue (в Debian это НЕ root, а обычный пользователь с sudo); ''%%<WIN_USER>%%'' (обычно administrator), ''%%<WIN_PASSWORD>%%'', ''%%<RDP_PORT>%%'' (обычно 3389). |
| |
| ===== Главная проблема OVH: RAID1 по всем дискам ===== | ===== Главная проблема OVH: RAID1 по всем дискам ===== |
| * md3 -> p3 = / | * md3 -> p3 = / |
| |
| Тогда reinstall.sh в EFI-ветке определяет целевой диск по ESP (/boot/efi -> /dev/md1 -> lsblk --inverse) и получает **два диска** — из-за этого efibootmgr собирается криво и падает с ошибкой <code>Could not add efi entry.</code>. Главный диск (/ -> /dev/md3) тоже даёт два диска, и скрипт уходит в интерактивный выбор. **Лечится разбором RAID на всех дисках, кроме целевого.** | Тогда reinstall.sh в EFI-ветке определяет целевой диск по ESP (/boot/efi -> /dev/md1 -> lsblk ''%%--inverse%%'') и получает **два диска** — из-за этого efibootmgr собирается криво и падает с ошибкой ''%%Could not add efi entry%%''. Главный диск (/ -> /dev/md3) тоже даёт два диска, и скрипт уходит в интерактивный выбор. **Лечится разбором RAID на всех дисках, кроме целевого.** |
| |
| ===== Шаг 0 — диагностика ===== | ===== Шаг 0 — диагностика ===== |
| ===== Шаг 1 — разбираем RAID на лишнем диске ===== | ===== Шаг 1 — разбираем RAID на лишнем диске ===== |
| |
| Оставляем один целевой диск (например, /dev/nvme0n1), второй (//<UNWANTED_DISK>//, например /dev/nvme1n1) освобождаем и чистим: | Оставляем один целевой диск (например, /dev/nvme0n1), второй (''%%<UNWANTED_DISK>%%'', например /dev/nvme1n1) освобождаем и чистим: |
| |
| <code bash> | <code bash> |
| </code> | </code> |
| |
| Аргумент --image-name берётся из списка в README проекта. Для Windows Server 2022: <code>ServerStandard</code> = **Desktop Experience (GUI)**; <code>ServerStandardCore</code> = Core. Для других ОС указывается свой --image-name или свой --iso (ссылка на образ). | Аргумент ''%%--image-name%%'' берётся из списка в README проекта. Для Windows Server 2022: ''%%ServerStandard%%'' = **Desktop Experience (GUI)**; ''%%ServerStandardCore%%'' = Core. Для других ОС указывается свой ''%%--image-name%%'' или свой ''%%--iso%%'' (ссылка на образ). |
| |
| Скрипт сам: находит ISO, определяет **MAIN DISK**, скачивает grub и netboot, собирает initrd, создаёт EFI-запись и выставляет BootNext. | Скрипт сам: находит ISO, определяет **MAIN DISK**, скачивает grub и netboot, собирает initrd, создаёт EFI-запись и выставляет BootNext. |
| ===== Важные нюансы ===== | ===== Важные нюансы ===== |
| |
| * **ServerStandard = Desktop Experience (GUI)**; <code>...ServerStandardCore</code> = Core. Для RDP нужен вариант с GUI. | * **''%%ServerStandard%%'' = Desktop Experience (GUI)**; ''%%...ServerStandardCore%%'' = Core. Для RDP нужен вариант с GUI. |
| * reinstall.sh — **неинтерактивная** установка: экрана установщика Windows нет, наблюдать можно только через KVM/BMC. Во время установки live-окружение доступно по SSH под **тем же** //--username// (не root!), веб-лог открывается на http://<SERVER_IP>/<web_path> (путь печатает скрипт). | * reinstall.sh — **неинтерактивная** установка: экрана установщика Windows нет, наблюдать можно только через KVM/BMC. Во время установки live-окружение доступно по SSH под **тем же** ''%%--username%%'' (не root!), веб-лог открывается на ''%%http://<SERVER_IP>/<web_path>%%'' (путь печатает скрипт). |
| * После установки в панели OVH выставить Boot -> **Hard disk**, иначе ребут может снова уйти в PXE/netboot. | * После установки в панели OVH выставить Boot -> **Hard disk**, иначе ребут может снова уйти в PXE/netboot. |
| * Secure Boot должен быть **выключен** (иначе скрипт откажется устанавливать). | * Secure Boot должен быть **выключен** (иначе скрипт откажется устанавливать). |
| * Функция <code>get_part_num_by_part /dev/mdN</code> берёт последние цифры имени (md1 -> «1»); на OVH md1 = ESP (p1), поэтому номер совпадает и efibootmgr собирается корректно **после** разбора RAID. | * Функция ''%%get_part_num_by_part /dev/mdN%%'' берёт последние цифры имени (md1 -> «1»); на OVH md1 = ESP (p1), поэтому номер совпадает и efibootmgr собирается корректно **после** разбора RAID. |
| * Установка поддерживает Windows Vista — 11 и Windows Server 2008 — 2025, в том числе серверные редакции. Полный список --image-name и --lang — в README проекта. | * Установка поддерживает Windows Vista — 11 и Windows Server 2008 — 2025, в том числе серверные редакции. Полный список ''%%--image-name%%'' и ''%%--lang%%'' — в README проекта. |
| |
| ===== Полезные ссылки ===== | ===== Полезные ссылки ===== |
| |
| * [[https://github.com/bin456789/reinstall|Проект bin456789/reinstall на GitHub]] | * [[https://github.com/bin456789/reinstall|Проект bin456789/reinstall на GitHub]] |
| * [[https://github.com/bin456789/reinstall/blob/main/README.md|README проекта (список --image-name и --lang)]] | * [[https://github.com/bin456789/reinstall/blob/main/README.md|README проекта (список ''%%--image-name%%'' и ''%%--lang%%'')]] |
| * [[https://ntriver.org/download-windows-office|ntriver.org — каталог официальных ISO Windows]] | * [[https://ntriver.org/download-windows-office|ntriver.org — каталог официальных ISO Windows]] |
| * [[https://massgrave.dev/genuine-installation-media|massgrave.dev — официальные установочные образы]] | * [[https://massgrave.dev/genuine-installation-media|massgrave.dev — официальные установочные образы]] |
| |