First thing, I wanted to make sure, there is an understanding what this post is NOT about:
- This is NOT about creating bootable USB key
- This is NOT about simply booting from USB
What I am looking to do is to have a home NAS (file) server that boots from a USB stick or CF card. It is irrelevant for the point of this post how the flash drive is connected (USB, IDE, some other way), what is relevant: I want to have an entire operating system installation boot and run from flash drive. The reasons I want specifically this type of installation is: I want to be able to easily make a backup copy of operating system (image the flash), I want to make sure I can swap operating system instantly and boot it (by replacing flash drive), and I want drives on a file servers be replaceable separately from OS.
I am aware that it is possible to simply format flash drive as ext2 and install on it. What I am looking for is recommendations for creating more robust solution. Here are a few items I am looking to do:
- configure root partition as YAFF2, or LogFS, or as some other file system designed specifically for flash drives.
- reconfigure the base OS to minimize writes (ramfs in /tmp and such)
Please submit your recommendations. I wonder if Ubuntu is even applicable for such scenario really...
I want to clarify my goal a little bit. The regular SSD drives feature firmwares that will keep the drive alive for a long time by using tricks, such as: constantly reallocating writes to new sectors. USB sticks have no such firmware, so using regular file system could kill them fast. I am looking if it is possible to emulate SSD firmware by using file system designed for flash. In a sense, I am trying to make it so that USB drive could run a system in a normal fashion, as if it was an actual SSD.