tarfs is a tar file system implementation for FreeBSD. The current goals are:
Support all standard read-only operations, just like a real file system.
Support large tar files (several gb’s)
Use minimal memory
Allow using tar file as a root file system
Fast enough to actually use
Here’s the current state of things:
Mounts tar files (after using mdconfig to create a device)
Can do most operations on the fs
Supports large tar files
Uses a relatively small amount of memory - proportional to number of files/dirs
Fairly fast
Here’s the current issues still needing resolution:
No ‘..’ directory in root of mounted tar file system
Locking issues regarding ‘..’ in subdirs off root of fs
No block/char special device support. Needed?
Needs a directory cache (like dirhash maybe?)
Have not yet tried as a root fs
Snapshot of the current code can be found here: tarfs-2008-01-20.tar.gz