[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: About the userland API for ACL, xattr, extattr



Hi,

the ENOSYS comes from a general refusal of libacl ... i'd say.

So where to inspect its source ? (Or dowload it.)

--------------------------------------------------------------------

I could not tune the mounted root filesystem: 

  # tunefs.ufs -a enable /
  tunefs.ufs: POSIX.1e ACLs set
  tunefs.ufs: /dev/ad0s1: failed to write superblock

Rather than looking for a rescue mode, i booted my backup of the
virtual "hard disk" as qemu -hda and used the original "disk" as
qemu -hdb.
After booting i guessed that the slice counterpart of ad0s1 is ad1s1.
So i blindly tuned the not mounted device:

  # tunefs.ufs -a enable /dev/ad1s1
  tunefs.ufs: POSIX.1e ACLs set

After booting with the tuned "disk" as -hda i now get:

  # tunefs.ufs -p /
  tunefs.ufs: POSIX.1e ACLs: (-a)          enabled

But regrettably only the requested failure case emerges
by the (slightly modified) first example from man setfacl:

  # grep nobody /etc/passwd
  nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
  # touch testfile
  # setfacl -m u:nobody:w testfile
  setfacl: testfile: Function not implemented

So with ACL capable filesystem there is still the ENOSYS error.
Most probably from libacl

  $ ldd $(which setfacl)
  libacl.so.1 => /lib/i386-kfreebsd-gnu/libacl.so.1 (0x21024000)

--------------------------------------------------------------------

Have a nice day :)

Thomas


Reply to: