Запускать другую конфигурацию GRUB2 для нескольких бездисковых клиентов?

У моей установки есть один головной узел, на котором размещается загрузочный образ, который многие вычислительные узлы загружают PXE с использованием grub. Проблема в том, что из-за разного оборудования разных узлов мне нужны разные конфигурации grub (для загрузки разных образов) для разных клиентов.

Сначала я попробовал это . В моей сети есть все узлы с, скажем, конфигурацией «A» в диапазоне IP 10.0.1.1-10.0.15.255 и конфигурацией «B» в диапазоне 10.0.16.1-10.0.31-255. Я попытался создать файлы grub.cfg-0A000 и grub.cfg-0A001 соответственно, но, похоже, он все равно загружал файл grub.cfg по умолчанию.

Затем я попытался использовать переменную $ net_default_ip и команду regexp, чтобы определить, в каком диапазоне ip находится узел, и установить элемент меню по умолчанию на основе этого. Проблема в том, что нет никаких документов об этой команде, которые я мог бы найти. Я попытался использовать стандартный синтаксис регулярных выражений POSIX: if regexp /10\.0\.1\.1/gx;, но это условие, кажется, возвращает true каждый раз, и пункт меню по умолчанию - просто мой последний оператор if. Создание отдельных операторов if для каждого узла работает: if [ "$net_default_ip" = "10.0.1.1" ];, однако, я бы предпочел не идти по этому пути из-за количества узлов, для которых это нужно было бы сделать, не говоря уже о новых узлах, которые будут добавлены в будущем. .

Любая помощь будет принята с благодарностью, на данный момент я в растерянности.

0
задан 10 July 2019 в 17:03

0 ответов

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

Похожие вопросы: