GNUNET-FUSE(1)
π GNUNET-FUSE β the manual page, bestie edition π
okay so you found gnunet-fuse(1), the General Commands Manual page, and honestly? it's giving "mount the internet but make it peer-to-peer" and I am obsessed. sit down, grab a strawberry π, and let's go.
β¨ NAME β¨
gnunet-fuse β mount directories shared on gnunet π¦
β¨ SYNOPSIS β¨
gnunet-fuse [-c FILENAME | --config=FILENAME]
[-d PATH | --directory=PATH] [-h | --help]
[-L LOGLEVEL | --loglevel=LOGLEVEL] [-s URI | --source=URI]
[-t | --single-threaded] [-v | --version]
like... that's the whole summoning circle. periodt. π
β¨ DESCRIPTION β¨
gnunet-fuse is the tool that mounts directories which have been published via GNUnet's file-sharing applications. the way that it works is: directories published on GNUnet get mounted as read-only file systems, and then you just... use them?? with normal file operations?? like a normal person?? iconic behaviour honestly.
and here's why that slaps compared to downloading the whole directory recursively via gnunet-download: with gnunet-fuse, files are downloaded on-demand. only the files (or directories) that you actually access get downloaded. no cap. and for larger files? only the blocks that an application actually reads get downloaded. your bandwidth is safe, your storage is safe, you're thriving. πΈ
β οΈ but bestie, listen. naturally, operations on the file system will block until the download has succeeded β which can theoretically mean that they never terminate and must be aborted. yeah. π that's the tradeoff. noted.
gnunet-fuse will store all downloaded files in a temporary directory on disk. this cache gets purged when gnunet-fuse exits normally (which happens when the file-system is unmounted). so clean. so tidy. π§
and now the annoying part: mounting a file system is a privileged operation, so gnunet-fuse must be run by root. π and if root is not in the 'gnunet' group, access to the shared directory will likely fail, because the gnunet-service-fs will likely refuse access to root. rude, I know. you can fix this either by adding root to the 'gnunet' group, or by disabling the access control options for gnunet-service-fs. two options, pick your fighter. π
also gnunet-fuse currently only supports read-only operations on the file system. all files will be owned by root and will be world-readable. that's it, that's the whole vibe.
β¨ OPTIONS β¨
-c FILENAME,--config=FILENAMEβ the configuration file to use. ur settings, ur rules. π-d PATH,--directory=PATHβPATHis the mountpoint thatgnunet-fuseshould use as the destination for mounting the file system. like, where the magic happens. π-h,--helpβ print the help page. we love a helpful king. π«Ά-L LOGLEVEL,--loglevel=LOGLEVELβ change the loglevel. possible values forLOGLEVELareERROR,WARNING,INFOandDEBUG. choose ur own adventure. π-s URI,--source=URIβURIis the file-sharing URI of the directory that is to be mounted. it must be either of typeCHKor of typeLOC. no other types, don't even try it. π«-t,--single-threadedβ in this mode,gnunet-fusewill run in"debug"mode and disable FUSE concurrency (and add some additional logging). normally,gnunet-fusewill download multiple files in parallel if multiple IO requests are queued with the file system at the same time. in debug mode, all requests are processed sequentially. note thatgnunet-fusewill still fork a helper process to perform the actual interaction with the GNUnet file-sharing service. so like, single-threaded but not fully single-threaded, iykyk. π-v,--versionβ print the version number. flex the build. β
β¨ SEE ALSO β¨
go read those too, bestie, the lore is deep. π
β¨ BUGS β¨
found a bug? report it by using https://bugs.gnunet.org or by sending electronic mail to β¨gnunet-developers@gnu.orgβ©. they're nice, I promise. and like, constructive feedback is main character energy. π
okay and finally β this whole page is a Debian situation, dated June 6, 2012, and it lives in section GNUNET-FUSE(1) of the manual. that's the sign-off bestie, go mount something. πβ¨ππ¦πΈπ
π¦ where this page comes from
- debian bookworm: gnunet-fuse 0.19.1-1 Β· GPL-3.0-or-later
- debian trixie: gnunet-fuse 0.20.0-5 Β· GPL-3.0-or-later
- opensuse-leap 16.0: gnunet-fuse 0.23.0-bp160.1.14 Β· GPL-3.0-only
- opensuse-leap 16.0: gnunet-fuse 0.23.0-bp160.1.14 Β· GPL-3.0-only
- opensuse-leap 16.0: gnunet-fuse 0.23.0-bp160.1.14 Β· GPL-3.0-only
- opensuse-leap 16.0: gnunet-fuse 0.23.0-bp160.1.14 Β· GPL-3.0-only
- ubuntu jammy: gnunet-fuse 0.13.0-2 Β· GPL-3.0-or-later
- ubuntu noble: gnunet-fuse 0.20.0-3build2 Β· GPL-3.0-or-later
- ubuntu questing: gnunet-fuse 0.20.0-5
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms