caching fs to use over immutable network filesystems https://github.com/moparisthebest/cache-fs
Go to file
2022-08-05 00:45:10 -04:00
src Add -c argument to pre-generate index 2022-08-05 00:45:10 -04:00
.gitignore First working version 2022-08-03 22:23:09 -04:00
Cargo.lock Implement zstd compression for attribute cache 2022-08-04 01:09:21 -04:00
Cargo.toml Implement zstd compression for attribute cache 2022-08-04 01:09:21 -04:00
LICENSE.md First working version 2022-08-03 22:23:09 -04:00
README.md Add readme 2022-08-03 23:13:30 -04:00

cache-fs

caching fs to use over immutable network filesystems

The use-case is something like your Steam Deck has a large directory of roms mounted over NFS, but if you disable wifi, you want the roms you've already played still available.

This basically bind-mounts your NFS share over a path of your choosing, except it caches all file attributes/paths forever, and copies the files you open to your cache directory. When you access that file again it doesn't access the remote server at all. So if your remote (say NFS) server is not available, you can still play the games.

If you add/change files to your remote, you must delete /local/cache/dir/cache-fs.tree and remount.

Usage

This assumes you install the cache-fs binary as mount.cachefs, then you can use it in /etc/fstab etc

mount -t cachefs -o cache_dir=/local/cache/dir /remote/dir/to/cache /where/you/want/it/mounted