Posted: 2026-06-06
| Tags:
dracut ,
gentoo ,
overlayfs ,
pxe
dracutでNFS rootfsにtmpfs upperのoverlay rootを作る 目的 PXE boot した Linux client で、NFS rootfs を lower とし、client 側 tmpfs を upper/work にした overlay root を作る。
rootfs の差分は reboot で破棄し、base rootfs は server 側で一元管理する。
現行構成 kernel cmdline では NFS root と overlayfs を指定する。
root=nfs4:192.0.2.1:/rootfs/20260601,vers=4.2,proto=tcp ip=dhcp rd.neednet=1 rd.overlayfs=1
192.0.2.1 は例示用である。実機の OpenWrt/PXE では外部 inventory の openwrt_gentoo_server_host から root server を決め、openwrt_lan_ipaddr や ansible_host への暗黙 fallback に頼らない。
dracut の overlayfs module は、NFS rootfs を lower として、client 側に upper/work を作る。
Read more... Posted: 2026-05-20
| Categories:
pxe
| Tags:
dracut ,
gentoo ,
nfs ,
overlayfs ,
pxe
PXE GentooでNFS rootにtmpfs overlayを重ねる設計 PXE boot の root filesystem を NFS に置くと、rootfs 更新や rollback は楽になる。一方で、各 node が rootfs に直接書き込むと、検証環境ほど状態が散らばりやすい。
そこで、NFS root を read-only lower として扱い、PXE client 側の tmpfs を upper/work にした overlayfs root にする。
この構成では、rootfs の差分は reboot で消える。永続化が必要なものだけを、用途別の volume や明示的な mount に逃がす。
本文中の 192.0.2.0/24 は説明用の documentation range である。OpenWrt 実機で NFS root / TFTP / DHCP を反映する場合は、外部 inventory の openwrt_lan_ipaddr、openwrt_dhcp_ntp_servers、openwrt_gentoo_server_host を実値として明示し、documentation range が endpoint に残っていれば止める。
基本構成 flowchart TD
A[PXE firmware<br/>DHCP + TFTP] --> B[Kernel + initramfs]
B --> C[dracut<br/>network + nfs]
C --> D[NFS root<br/>read-only lower]
C --> E[tmpfs<br/>upper + work]
D --> F[overlayfs merged root]
E --> F
F --> G[switch_root]
G --> H[systemd]
root overlay の目標状態は次のような形になる。
Read more...