FEBUG(8) System Manager's Manual FEBUG(8)

febugUser-space debugfs filesystem driver

febug [-h|--help] [-V|--version] [-d] [libfuse options] mountpoint

Mounts a filesystem at mountpoint that allows programs to register themselves and expose variables to be (relatively) non-intrusively inspected at run-time, inspired by Linux's debugfs filesystem.

See febug-abi(8) for implementation details, and the EXAMPLES section for an example debug session.

-h, --help and -V, --version are self-explanatory.

-d enables debug output from both febug and libfuse.

febug passes all arguments (which have to, therefore, include mountpoint) to fuse_main(3), with -f (foreground) and -o default_permissions appended. If run with effective UID of , it also appends -o allow_other.

the socket at which to listen for programs, or /var/run/febug.sock by default.

# rcctl start febug
$ mount | grep febug
fusefs on /var/run/febug type fuse (local)
$ ./out/examples/vector-sort &
[1] 1409
$ LD_LIBRARY_PATH=out ./out/examples/string-qsort &
[2] 1410
$ ls /var/run/febug/
1409 1410
$ ls -l /var/run/febug/
dr-xr-x--- 4 nabijaczleweli users 0 Jan 15 19:52 1409
dr-xr-x--- 3 nabijaczleweli users 0 Jan 15 19:52 1410
$ ls /var/run/febug/1409/
comparisons cool_data
$ cat /var/run/febug/1409/*
24
-3 -2 -3 -2 -3 -2 3 -1 -2 -3 0 1 2 3 -1 -2 -3 0 1 2 3 -1 -2 -3 0 1 2 3 -1 2 1 0 1 2 3 -1 0 -1 0 1 2 3
$ cat /var/run/febug/1409/*
45
-3 -2 -3 -2 -3 -2 -3 -2 -2 -3 -3 -2 -1 3 -1 1 0 0 1 2 3 2 -1 3 0 1 2 3 -1 2 1 0 1 2 3 -1 0 -1 0 1 2 3
$ grep . /var/run/febug/*/*
/var/run/febug/1409/comparisons:71
/var/run/febug/1409/cool_data:-3 -3 -3 -3 -3 -3 -2 -2 -2 -2 -2 -2 -1 3 -1 1 0 0 1 2 3 2 -1 3 0 1 2 3 -1 2 1 0 1 2 3 -1 0 -1 0 1 2 3
/var/run/febug/1410/cool_data:3012987654ACEFOLJKODNIEMIGHBPPbdWwnfTpXQcreRlVvUSitZQWjRTYUazuqwertyuiopoxyhmYsgkq
$ kill %1
$ ls /var/run/febug/
1410

febug-abi(5) — the ABI used to connect with this filesystem.

libfebug(3), libfebug++(3), libfebug.rs(3), libfebug.py(3) — libraries wrapping said ABI.

To all who support further development, in particular:

febug tracker

febug mailing list: <~nabijaczleweli/febug@lists.sr.ht>, archived at https://lists.sr.ht/~nabijaczleweli/febug

September 2, 2024 OpenBSD 7.5