Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tniessen/memfs-fuse
Simple fuse demo filesystem
https://github.com/tniessen/memfs-fuse
fuse fuse-filesystem libfuse
Last synced: 5 days ago
JSON representation
Simple fuse demo filesystem
- Host: GitHub
- URL: https://github.com/tniessen/memfs-fuse
- Owner: tniessen
- License: mit
- Created: 2016-10-01T15:58:25.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2021-01-14T11:17:54.000Z (almost 4 years ago)
- Last Synced: 2024-11-08T13:03:30.783Z (5 days ago)
- Topics: fuse, fuse-filesystem, libfuse
- Language: C
- Size: 8.79 KB
- Stars: 26
- Watchers: 3
- Forks: 6
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# memfs-fuse
[![Build Status](https://travis-ci.org/tniessen/memfs-fuse.svg?branch=master)](https://travis-ci.org/tniessen/memfs-fuse)This repository serves as a very simple example of a fuse filesystem.
## Building
[libfuse](https://github.com/libfuse/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`.
## Usage
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
## Debugging
You can use the script `debug.sh` to execute the filesystem in the GNU debugger while printing
log messages generated by libfuse.