Автоматический выбор образа загрузки PXE и настроенные образы загрузки
подробности
У меня есть сеть из примерно 20 идентичных компьютеров Dell и 40 малиновых блоков PI 3b+, которые были переданы в дар школе, где я в настоящее время выполняю некоторые бесплатные работы. Устройства RPI предназначены для детей, чтобы просматривать частные интранет (учебные программы, обучающие игры и т. Д.), А ПК - для детей более старшего возраста (установлены различные приложения). Все эти машины подключены к сети через Ethernet и находятся в одной подсети.
Поскольку у школы не так много бюджета, и я могу добровольно выделять время (но я не даю добровольцев наличными, поскольку я не могу пожертвовать 20x новых SSD и 40x SD-карт), я планировал загрузить все эти устройства через PXE, поскольку они не требуют постоянного хранения.
Вопросы)
- Возможно ли во время загрузки запустить некую среду предварительного исполнения (например, минимальный экземпляр Linux), которая просто запрашивает аппаратное обеспечение, чтобы определить, является ли он ПК по сравнению с Raspberry PI, а затем загружает /"цепочки" (т.е. старые образы "Ultimate Boot CD" сделали) другой загрузочный образ (то есть автоматически определил оборудование, а затем приступил к загрузке другого образа ОС). Это позволило бы мне просто создать пару изображений PXE для всех компьютеров 60x.
- Существуют ли руководства / учебные пособия по настройке образов Ubuntu/Debian/Raspian PXE? Мне необходимо:
- Добавить дополнительные
apt-getпакеты, которые не включены в стандартные образы Live USB/CD. - Удалить существующий по умолчанию
apt-getпакеты, которые не нужны (чтобы уменьшить размер ОС, особенно для Raspberry PI, у которых очень мало оперативной памяти). - Разверните некоторые пользовательские статические файлы (например, некоторые файлы конфигурации и
udevправила в/etcнекоторые дополнительные сертификаты в/usr/local/share/ca-certificates) и запустить одноразовый скрипт, когда система завершит загрузку (т.е.sudo update-ca-certficatesустановите собственные обои, запустите браузер и запустите несколько других инструментов).
- Добавить дополнительные
Работа так далеко
- Я не нашел много информации об автоматическом определении типа оборудования и динамическом предоставлении определенного образа загрузки PXE на клиентские машины. Помимо некоторых статей, которые просто рекомендуют "идти с IPXE", я не мог найти большую помощь. Он выглядит как мощный инструмент, но я не могу определить из документации, может ли он запустить один экземпляр Linux, запустить собственный сценарий, чтобы определить тип оборудования, а затем загрузить отдельный загрузочный образ.
- Большая часть статьи о StackOverflow (в этой теме) посвящена теме подготовки PXE-сервера и привлечения клиентов к нему. Это я могу сделать, но моей основной целью является редактирование загрузочного образа, который будет развернут (т.е.
aptпакеты присутствуют, добавляя / удаляя их по мере необходимости, добавляя дополнительные статические файлы в/etcи запуск настраиваемого скрипта после запуска ОС). Я нашел впечатляющий инструмент для этого, но, к сожалению, похоже, что он был снят с производства после выпуска Ubuntu 9.x.,
1 ответ
Я ожидаю, что Raspberry PI 3b+ будет иметь ту же модель сетевого интерфейса, поэтому MAC будет иметь тот же идентификатор производителя.
- Установите DHCP-сервер для подсети их на основе частичного совпадения MAC. Оставьте подсеть ПК по умолчанию / резервной. Увидеть
man dhcp.confзаisc-dhcpсервер. - Установите отдельную конфигурацию PXE для ПК + Другие / подсеть и RP/ подсеть на TFTP-сервере. Поместите загрузочное меню в каждое, чтобы конечный пользователь мог принудительно вызвать его, если он не получил правильную конфигурацию. Посмотрите шаги установки PXE Boot Server в виртуальной машине Ubuntu Server
Этим пожертвованным ПК может потребоваться установить исключение, либо на DHCP, либо на сервере TFTP.
- Установите DHCP-сервер для подсети их на основе частичного совпадения MAC. Оставьте подсеть ПК по умолчанию / резервной. Увидеть
iPXE для старых сетевых интерфейсов, которые не поддерживают PXE. gPXE должен поддерживать другие протоколы, кроме TFTP, для более быстрой передачи файлов, таких как NFS,HTTP и т. д.
Для запуска некоторых сценариев после загрузки установите флажок Как создать полностью автоматическую установку Ubuntu? для кикстарта и семян. (Кукольный может быть излишним)