VIEW-OS(1viewos)

πŸ“¦ version 0.8.2, in debian bookworm, ubuntu jammy, ubuntu noble

πŸ’– NAME πŸ’–

umfuse β€” a User Mode FUSE implementation, made for umview πŸ¦‹


✨ SYNOPSIS ✨

um_add_service umfuse.so
umview ... --preload umfuse.so

🌸 DESCRIPTION 🌸

okay bestie, so umfuse is the user-mode version of virtual FUSE filesystems for umfuse β€” no kernel module, no drama, we're doing this entirely in userspace πŸ’… The way it works is: once you load this service module, you can literally mount umfuse file systems. That's the whole gig.

And here's the slay part: FUSE and umfuse are source level compatible. Which means you can take a FUSE file system implementation and compile it as a dynamic library. fr fr. Just one rule though β€” the name of umfuse file system implementation libraries must begin with umfuse. Non-negotiable, it's the vibe check. πŸ‘‘

File systems implemented with umfuse get mounted and umounted by the standard utilities mount(8) and umount(8). Yes, the boring classics. They ate.

Example, for the visual learners πŸŽ€:

$ mount -t umfuseext2 /path/to/file.img /mount/point
...
$ umount /mount/point

πŸ› οΈ mount options πŸ› οΈ

The mount command for umfuse file systems lets you pass some specific options, and they are:

  • debug β€” gives you verbose feedback on every single operation happening on the virtual file system. It's giving "narrator voice" for your syscalls ✨
  • fuseuid=uid β€” sets the effective uid for operations on the virtual file system.
  • fusegid=gid β€” sets the effective gid for operations on the virtual file system.
  • human β€” lowkey important: umfuse's default mode is omnipotent, meaning the user acts as root inside the mounted file system 😳 When a file system gets mounted with the human option, access control is enforced. So you become a regular little mortal. Grounded. 🫢

🧚 umfuse modules main program invocation options 🧚

umfuse calls the main program of the module using the standard syntax:

umfusexxxx -o options source mountpoint

But sometimes FUSE modules were designed to accept a different syntax (they're quirky like that πŸ™ˆ), and you can match the calling syntax by using the following options:

  • nosource β€” no image file should be specified.
  • pre=string β€” the string contains parameters that must be put before -o options.
  • post=string β€” the string contains parameters that must be added at the end.
  • format=string β€” okay this one is the most powerful rewriting rule πŸ‘‘ If the main needs a completely different structure, format can be used. The format string is similar to that used in printf. The %O %S %M descriptors get substituted in the call like this: %O=-o options, %S=source, %M=mountpoint. Iconic, honestly.
  • showcall β€” shows the call syntax before the actual call. Use it for debugging, bestie πŸ”

πŸ‘€ SEE ALSO πŸ‘€

umview(1) um_add_service(1) um_del_service(1) um_ls_service(1) um_mov_service(1)


πŸ’œ AUTHORS πŸ’œ

View-OS is a project of the Computer Science Department, University of Bologna. Project Leader: Renzo Davoli. 🌈

<http://www.sourceforge.net/projects/view-os>

Howto's and further information can be found on the project wiki <wiki.virtualsquare.org>. go read it, iykyk πŸ“š


and that's the whole page, periodt πŸ’… this was the VIEW-OS(1viewos) manual β€” "VIEW-OS: a process with a view", dated June 10, 2006. mwah, go mount something πŸ¦‹βœ¨

πŸ“¦ where this page comes from