Extended attributes
LeilFS exposes a small set of extended attributes (eattrs) that control per‑path client behaviour — caching, ownership handling and snapshot targeting. They are managed from any mounted client with leil geteattr, leil seteattr and leil deleattr.
These are LeilFS‑specific behaviour flags and are distinct from the generic POSIX extended attributes set with setfattr/getfattr.
Managing extended attributes
# List the LeilFS extended attributes set on a path
leil geteattr /mnt/client/shared
# Set an attribute (repeat -f to set several at once)
leil seteattr -f noattrcache /mnt/client/shared
# Remove an attribute
leil deleattr -f noattrcache /mnt/client/shared
Add -r to apply seteattr/deleattr recursively across a directory tree:
leil seteattr -r -f nodatacache /mnt/client/scratch
Available attributes
| Attribute | Effect |
|---|---|
noowner | Ignore file ownership and permissions — every user is treated as the owner (full access) on this path. |
noattrcache | Disable attribute caching in the client for this path (attributes are always fetched from the master). |
nodatacache | Disable data caching in the client for this path. |
snapshot | Mark a directory as the target of snapshot operations. |
noattrcache and nodatacache trade throughput for consistency. Use them on paths where multiple clients must see each other's changes immediately; leave caching enabled elsewhere for performance. See Performance tuning for the client cache settings these attributes override.
Quick reference
| Task | Command |
|---|---|
| List eattrs | leil geteattr PATH |
| Set an eattr | leil seteattr -f ATTR PATH |
| Set recursively | leil seteattr -r -f ATTR PATH |
| Remove an eattr | leil deleattr -f ATTR PATH |
See the CLI reference for the full command set.