caching fs to use over immutable network filesystems https://github.com/moparisthebest/cache-fs
Go to file
Travis Burtrum c0f4a33e86 Parse mount options in any position, fork before mount by default 2022-08-04 00:57:54 -04:00
src Parse mount options in any position, fork before mount by default 2022-08-04 00:57:54 -04:00
.gitignore First working version 2022-08-03 22:23:09 -04:00
Cargo.lock Change fuse dependency to fuser 2022-08-03 22:56:56 -04:00
Cargo.toml Change fuse dependency to fuser 2022-08-03 22:56:56 -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

README.md

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