Как включить сетевые драйверы в initramfs для загрузки PXE?

Я работаю над настройкой загрузки PXE на сервере HPE ProLiant DL360 Gen10. Сервер оснащен 1-портовым адаптером HPE Ethernet 100Gb 842QSFP28 для сетевого интерфейса.

У нас есть собственное ядро ​​Linux, которое было специально настроено для некоторых тяжелых задач числовых вычислений. Когда это кастомное ядро ​​загружается из локального хранилища, сетевая карта не загружается. Вероятно, это связано с тем, что сетевому адаптеру требуются драйверы сторонних производителей. Я получил драйверы с веб-сайта HPE.

На данный момент для поддержания работоспособности машины работает стандартное ядро ​​(3.10 с CentOS 7). Изучив документацию по драйверу и инструкцию по установке, я обнаружил, что существуют некоторые варианты сценария установки, позволяющие установить необходимые модули ядра для целевого ядра. При использовании этой опции модули ядра устанавливаются в каталог/lib/modules/4.4.47/extra/. Используя это, я создаю файл initramfs, используяdracut -f /path/to/custom-initramfs.img /path/to/custom-vmlinuz --kver 4.4.47

Я развернул собственный initramfs и образ ядра в каталог tftpboot и соответствующим образом настроил pxelinux.cfg. Когда я перезагружаю сервер, он успешно обнаруживает ядро ​​и initramfs, но через некоторое время застревает при попытке обнаружения сети. Я просто получаю сообщение «Пытаюсь обнаружить сеть». Затем он меняется на «Повторная попытка через 110 секунд». Наконец время истекает и остается застрявшим.

Так по какой-то причине сетевые драйвера не загружаются. Когда я используюzcatчтобы проверить содержимое initramfs, я вижу, что в него включены модули драйверов. Я не уверен, как действовать дальше. Документация по драйверу не содержит подробной информации о том, как выполнить установку для загрузки PXE. Может ли кто-нибудь посоветовать, что еще я могу попробовать дальше? Спасибо.

0 ответов

Другие вопросы по тегам