File systems

From Organic Design wiki

The Kernel requires a filesystem to start up. In unix terms this means it's /sbin/init or /linuxrc. It's also important that the OS is able to read and write all common file systems.

FUSE

User-space implementation of a filesystem API.

  • Requires kernel module that is standard in 2.6 kernels
  • Good examples of custom implementation
  • See fs.c

tmpfs

tmpfs is a ram based file system that is discarded on shutdown. It may be easier to use tmpfs to store changing data as UnionFS seems still a bit immature and complicated. A tmpfs could be mounted at /etc. At present we mount a tmpfs at /tmp by convention.

UnionFS

Using UnionFS you can separate the read and write parts of a file system transparently. I propose to use this in the Media Center. The main root file system is created in a CramFS filesystem. CramFS is read only but is very fast to load and boot from. Once the kernel has booted an additional RamFS file system is created and UnionFS is used to send any writes to the new file system.

NTFS

ntfs-3g is a project giving unlimited read-write access to ntfs file system partitions. With this library and FUSE ntfs partitions can be treated almost transparently by linux.

See also