xrootdfs(1)

πŸ’« NAME πŸ’«

okay so bestie, welcome to the xrootdfs(1) manual page β€” yes that's the manual-page name, and the program itself is xrootdfs, the xrootd FUSE file system daemon. it gives you a whole file-system view of an xrootd cluster, no cap πŸ’…


🌸 SYNOPSIS 🌸

xrootdfs [options] parameters

✨ DESCRIPTION ✨

so the xrootdfs daemon is literally a file system view of an xrootd cluster, and it does that using FUSE. iconic. πŸ¦‹

wanna see the usage synopsis? just type:

xrootdfs -h

and there's short documentation chillin' in a README file inside the src/XrdFfs source directory. it's giving "read the README, bestie". πŸ“–


πŸŽ€ EXAMPLES πŸŽ€

let's say the redirector is rdr:port (that's the vibe we're assuming here, fr fr).

run it from the command line with debugging output

xrootdfs -d -o rdr=root://rdr:port//data,uid=daemon /mnt

use it in /etc/fstab

xrootdfs /mnt fuse rdr=root://rdr:port//data,uid=daemon 1 2

use it with autofs

  1. add a line to /etc/auto.master:
/- /etc/auto.fuse
  1. create /etc/auto.fuse with the following one line:
/mnt -fstype=fuse,uid=2,rdr=root://rdr\:port//data :xrootdfs.sh
  1. create the script /usr/bin/xrootdfs.sh (and make sure the +x bit is set, bestie, do NOT skip this πŸ”₯):
#!/bin/sh
exec /usr/bin/xrootdfs $@ >/dev/null 2>&1

πŸ’œ NOTES πŸ’œ

documentation for all components associated with xrootdfs is waiting for you at https://xrootd.org/docs.html 🌈

now here's the fun part: xrootdfs lets users and administrators query and change the internal parameters on the fly via the filesystem extended attributes. main character energy tbh.

getfattr -n attribute_name /mount_point
setfattr -n attribute_name [ -v value ] /mount_point

and the attribute_name values are:

  • xroot.url β€” query the actual ROOT url of the file (this is an old one, ok so it's like vintage πŸ‘‘)
  • xrootdfs.fs.nworkers β€” query or change the number of threads working in parallel on operations such as stat(), unlink()/rmdir(), readdir(), statvfs(), etc.
  • xrootdfs.fs.dataserverlist β€” query or refresh the list of all data servers known to this xrootdfs instance (or run kill -USR1 pid to refresh, that works too 🫢)

πŸ” SECURITY πŸ”

okay this part is important, listen up.

by default, XrootdFS does not send individual user identity to the Xrootd storage servers. so Xrootd storage thinks that all operations from an XrootdFS instance come from the user that runs the XrootdFS instance. that's just how it is by default, no cap.

when the Xrootd "sss" security module (Simple Shared Security) is enabled at both XrootdFS and the Xrootd storage system, XrootdFS will send individual user identity information to the Xrootd storage servers. this info can be used along with the Xrootd ACL to control file/directory access. slay, per-user access control. πŸ’–

to use the "sss" security module, both Xrootd data servers and XrootdFS should be configured to use "sss" in a particular way β€” e.g. both sides should use a key file that contains the same key generated by the xrdsssadmin program in the following way:

xrdsssadmin -k my_key_name -u anybody -g usrgroup add keyfile

(change only "my_key_name" and "keyfile", bestie. nothing else. πŸ™ˆ)

please refer to the environment variable "XrdSecsssKT" in the Xrootd "Authentication & Access Control Configuration Reference" for more information on the location of the keyfile and its unix permission bits. that same document also describes the Xrootd ACL DB file. two birds, one doc. πŸ¦‹

to enable "sss" with XrootdFS, use the sss=/keyfile option with XrootdFS.

the following example shows how to use both unix and sss security modules with the Xrootd data servers:

xrootd.seclib /usr/lib64/libXrdSec.so
sec.protocol /usr/lib64 sss -s /keyfile
sec.protocol /usr/lib64 unix
acc.authdb /your_xrootd_ACL_auth_db_file
acc.authrefresh 300
ofs.authorize

😭 DIAGNOSTICS 😭

errors yield an error message and a non-zero exit status. and the program never exits upon success β€” it just keeps going, living its truth. use the umount command to terminate the program. πŸ‘‘

additional logging information can be found in syslog (/var/log/messages).


πŸ“œ LICENSE πŸ“œ

license terms can be displayed by typing:

xrootd -H

🫢 SUPPORT LEVEL 🫢

the xrootdfs daemon is supported by the xrootd collaboration. contact information can be found at:

https://xrootd.org/contact.html


and that's the whole page, bestie!! this was version v6.2.0 of xrootdfs(1) β€” tysm for reading, go mount something iconic, mwah πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from