Ok, seems I finally understood the magic around linux initrd.gz files. Basically, it provides a minimal rootfs with an optional /linuxrc executable. Using something like busybox (e.g. via ln -s /bin/busybox /bin/ash) that can even be a shell script. It should be possible to mount the nfsroot ro, create a tmpfs for unionfs changes and …