# Fleet-generic initramfs for diskless 802.1X/MACsec hosts. # Root = erofs image on a shared read-only NVMe/TCP namespace, # integrity-verified by dm-verity, tmpfs overlay for runtime state. # Built with --no-hostonly; assert everything the real hardware needs, # because the build VM only has virtio devices. hostonly="no" # Module NAMES here omit the NN dir-prefix: the directory is 95dot1x-macsec but # the module is 'dot1x-macsec' (cf. nvmf). The writable root overlay is provided # by systemd.volatile=overlay on the kernel cmdline (RHEL/Rocky dracut has no # 'overlayfs'/'rootovl' module — that's a Debian/third-party feature); we only # need the overlay kernel filesystem, included via 'filesystems' below. # network-manager (NOT network-legacy): NM in the initramfs hands its # connections off to the real-root NetworkManager via /run/NetworkManager state, # so the DHCP lease is RENEWED in the running system. network-legacy's one-shot # lease was never renewed post-switch-root -> the address was dropped at lease # expiry -> NVMe/TCP root died ("keep alive timeout" / "no route to host"). add_dracutmodules+=" dot1x-macsec network-manager nvmf systemd-veritysetup " filesystems+=" erofs overlay " add_drivers+=" macsec nvme-tcp nvme-fabrics dm-verity @NIC_DRIVERS@ " install_items+=" /etc/dot1x/radius-ca.pem /etc/dot1x/wpa_supplicant-dot1x.conf " compress="zstd"