Вопрос или проблема
Я пытаюсь настроить proxmox на Dell r720xd, который имеет опцию загрузки UEFI, но не может загрузиться с дисков PCIe nvme.
Если я установлю proxmox (или любую операционную систему) на флешку, он загружается нормально.
Для тестирования я установил CentOS с расширенной разметкой, использовал флешку в качестве /boot
раздела и nvme для всех остальных разделов, и это тоже работает безотказно.
С proxmox на этапе установки нет возможности кастомной разметки, поэтому я не смог установить флешку в качестве /boot
раздела.
Другие варианты, упомянутые на форумах proxmox:
- использовать clover в качестве загрузчика на флешке, описано здесь
- сначала установить debian с кастомной разметкой, а затем установить proxmox поверх и удалить ядро debian.
Очевидно, что clover добавляет загрузочный раздел на флешку, а затем передает управление nvme.
Мой вопрос: как установить proxmox на nvme, а затем мигрировать раздел /boot
на флешку?
Кажется, это довольно простой процесс, и я следовал этому руководству, но не смог заставить его работать. grub2 всегда выдавал ошибки, такие как:
- не совпадает UUID
- нужно сначала загрузить ядро
- и так далее
Есть ли подсказки, пожалуйста.
P.S. Я также пытался отредактировать установку centos /boot
, установленную на флешке, используя grub2-mkconfig
, который нашел proxmox и обновил grub.cfg
, но все равно были ошибки при загрузке, такие как:
- ошибка: не удается найти команду linux
- ошибка: не удается найти команду initrd
исправил эти ошибки (ссылка) с помощьюlinuxefi и initrdefi
, но он не мог найти диск с указанным UUID
Оказывается, это очень просто. Единственная проблема в том, что это довольно запутанно задокументировано.
Вот шаги, которые вам нужно выполнить:
- установить proxmox (используя режим DEBUG) на вашем nvme-диске (который может не быть загрузочным из-за устаревшего BIOS)
- после завершения установки не выходите из мастера установки, а начните командный терминал. (Выбор режима отладки на первом шаге упростит открытие терминала)
- chroot (проверьте ссылку в вопросе, думаю, это необязательно)
- выполните
proxmox-boot-tool format /dev/sda2
, где /dev/sda2 – это ваш usb-диск, который вы хотите использовать в качестве загрузочного диска. - выполните
proxmox-boot-tool init /dev/sda2
и дождитесь завершения настройки.
В моей системе я использовал шаг с chroot, и он работает безотказно, но вам может не понадобиться этот шаг.
Этот ответ начался как комментарий к оригинальному ответу @nexlin, но он немного вышел за пределы размера комментария и функций (ссылок), поэтому я сделал его ответом.
Отметим, что автор оригинального вопроса и ответа – это одно и то же лицо, и ответ был опубликован примерно через месяц после вопроса. Большое спасибо автору за то, что вернулся и поделился своим решением, которое было проницательным для его конкретной ситуации… нуждаясь в решении во время установки proxmox. Ценно поделиться тем, что изменение загрузочного диска может быть выполнено в ходе установки proxmox, и что установщик proxmox в режиме отладки предлагает эту возможность.
Я думаю, что было бы полезно поделиться тем, что перемещение загрузочного диска proxmox также может быть решено после установки, независимо от того, может ли установка proxmox загрузиться или нет, загрузившись из установщика proxmox в консольном режиме и войдя в корневую оболочку, используя сочетание клавиш: CTRL+ALT+F3, и выполнив необходимые шаги с помощью proxmox-boot-tool
для настройки загрузочного диска.
У меня был аналогичный сценарий с устаревшей (v4) установкой proxmox.
Меня вдохновило:
- ответ @nexlin на этот вопрос
- пользователь форума Proxmox whytf. который опубликовал свое решение по использованию USB для загрузки установки proxmox здесь.
Что вдохновило меня написать свое руководство под названием: Proxmox: Переключение с устаревшей загрузки, когда нет места для раздела ESP.
Моя цель с этим ответом – предоставить больше информации и некоторые другие более общие решения (см. ссылки) для ответа на оригинальный вопрос. Надеюсь, это поможет кому-то в будущем.
Хотя было бы возможно скопировать/вставить решения из этого ответа, я считаю, что это выведет их из контекста или уменьшит точность, поэтому я решил не повторять содержание здесь. Этот ответ должен быть комментарием, но он не вписывается.
Ответ или решение
Перемещение загрузочного раздела Proxmox на USB-накопитель: Пошаговое руководство
Настройка системы виртуализации Proxmox на сервере Dell R720xd может представлять собой определенные вызовы, особенно когда речь идет о запуске с NVMe-дисков в среде с устаревшим BIOS. В данной статье мы поэтапно рассмотрим, как перенести загрузочный раздел Proxmox на USB-накопитель, при этом используя NVMe-диски, настроенные в режиме ZFS-RAID-1.
Шаг 1: Установка Proxmox на NVMe-диск
-
Загрузка установщика Proxmox: Первоначально необходимо загрузить установочный образ Proxmox. Убедитесь, что вы используете режим DEBUG, который позволит вам открывать терминал в процессе установки.
-
Установка Proxmox: Запустите процесс установки, выбрав NVMe-диск в качестве основного устройства для установки. Дождитесь завершения установки. Важно не выходить из установщика после завершения установки, а сразу же перейти к следующим шагам.
Шаг 2: Подготовка USB-накопителя
-
Определение USB-накопителя: Используя команду
lsblk
, определите, какой путь соответствует вашему USB-накопителю (например,/dev/sda2
). -
Форматирование USB-накопителя: Используйте команду:
proxmox-boot-tool format /dev/sda2
Это создаст необходимые структуры на вашем USB-накопителе.
-
Инициализация загрузочного USB: Далее выполните команду:
proxmox-boot-tool init /dev/sda2
Эта команда завершит настройку USB-накопителя как загрузочного устройства.
Шаг 3: Настройка загрузчика
-
Проверка и обновление
grub.cfg
: Если вы установили Proxmox без изменений в загрузочной конфигурации, вам может потребоваться обновить файл конфигурации GRUB. Для этого можно использовать:grub-mkconfig -o /boot/grub/grub.cfg
-
Исправление ошибок UUID: Если возникли ошибки, связанные с UUID, убедитесь, что вы правильно указали UUID вашего корневого раздела. Вы можете использовать команду
blkid
для получения точного UUID. -
Проверка конфигурации: Проверьте, что команды
linuxefi
иinitrdefi
правильно настроены в вашемgrub.cfg
для корректной загрузки ядра и образа initrd.
Шаг 4: Тестирование и завершение
-
Перезагрузка системы: После завершения всех настроек перезагрузите систему и выберите USB-накопитель как устройство для загрузки.
-
Мониторинг загрузки: Убедитесь, что система загружается без ошибок. Если появляются ошибки, проверьте использование правильных команд и UUID в вашем
grub.cfg
.
Заключение
Перемещение загрузочного раздела Proxmox на USB-накопитель — это эффективное решение для работы с Legacy BIOS на системах с NVMe-дисками. Правильное выполнение всех шагов, начиная с установки Proxmox и заканчивая настройкой загрузчика, гарантирует стабильную работу вашей виртуализационной среды. Следуйте предоставленным инструкциям, применяя каждую деталь, и вы сможете успешно настроить свою систему.
Если возникнут дополнительные вопросы или трудности, не стесняйтесь обращаться к сообществу Proxmox или искать советы на специализированных форумах.