Я только что настроил концептуальную систему загрузки без дисков UEFI, PXE, NFS. Чтобы загрузка NFS работала, мне нужно было создать пользовательское приложение, initramfs
включающее dracut-network
модули для nfs
, network
, и base
.
В конечном итоге на NFS будет много разных файловых систем (операционных систем), каждая из которых будет иметь несколько ядер (от обновлений/отладки). Я хочу, чтобы было относительно просто создавать/обновлять любую из этих ОС.
Как мне собрать ядро initramfs
, которое будет работать с любым универсальным дистрибутивом?(Возможно ли это вообще? Другие архитектурные предложения по проекту также приветствуются).
решение1
Либо модули, необходимые для монтирования корневой файловой системы (например nfs
, необходимые драйверы сетевых интерфейсов и т. д.), встроены в ядро, либо они должны присутствовать в initramfs. Первое маловероятно, поскольку ядра дистрибутивов, как правило, не имеют статически связанных модулей (они используют минимальный набор, рассчитывая на initramfs для всего остального). Последнее не решит вашу проблему, поскольку вам придется поставлять модули, которые идут с любым из ядер, которые может использовать пользователь.
Другими словами,вы, вероятно, не можете.