This repository serves as a very simple example of a fuse filesystem.
libfuse is required to build this project. You can either
build libfuse from source or download it using package managers (apt-get install fuse libfuse-dev
for APT).
Executing make
will produce the binary memfs
.
At the moment, memfs comes with some limitations. Therefore, it is recommended to supply certain options to fuse:
memfs -s -o default_permissions -o auto_unmount $mountpoint
Basically, this enables permission checking in the kernel, ensures clean unmounting and disables multithreading as memfs is not entirely thread-safe right now.
To unmount the filesystem, use
fusermount -u $mountpoint
You can use the script debug.sh
to execute the filesystem in the GNU debugger while printing
log messages generated by libfuse.