There is a wide range of target audiences for linux. All have value though many mutually exclusive priorities separate them. I am looking for help for a rather niche corner.
I would like to build a system that provides (a) critical service(s) in a rather abnormal way.
- Run on an x86_64-v2 with 8G ram
- The ESP would hold a uki on a usb thumb drive
- The OS would run purely out of the initrd
- Persistent storage devices would be for user data
The current objective is to have an nfs server, kerberized, with the KDC and DNS servers integrated.
Since the whole OS runs out of an initrd being minimal is part of the design. Changes would require rebuilding the initrd and uki then possibly just writing it to a different usb thumb drive and rebooting. The server would not be fully ephemeral as things like the kerberos database, dns database and user database could live along side the user data, just not belong to the OS directory hierarchy. As of today it looks like it could all fit in a 500MB initrd before compression. I used to run KNOPPIX purely out of ram as well as installers for some distributions. I am aiming for something that is much more simple.
Does this type of thing already exist? Does fedora have a footprint in this realm already?
I could see using mkosi-initrd to generate the initrd and make it part of a USI, maybe add in bootc to make the image bootable and distributable via container registries (anything with versioning really) and with bootupd maybe be able to update the usb thumb drive in-place and have a bit of robustness in the boot process.
There is a lot more to fill in about this project. Using erofs and dm-verity would be nice. Hearing what others have to say is invaluable. I’m all ears.
Some other examples of similar/interesting projects