Как проверить, включен ли POSIX ACL для заданного пути - PullRequest
10 голосов
/ 07 июня 2011

После прочтения справочной страницы getfacl / setfacl я не смог найти очевидный / надежный / элегантный метод проверки, включен ли acl для заданного пути в (ba) sh.

Есть предложения?

1 Ответ

4 голосов
/ 12 июня 2011
{
  # Determine what the mount point for the path is:
  MOUNT_POINT=$(df -P $FILENAME | tail -n 1 | awk '{print $6}')
  # Get the mount options for the path:
  MOUNT_OPTS=$(awk '$2=="'$MOUNT_POINT'" { print $4 }' /proc/mounts)
  # Check to see if acl is one of the mount points:
  echo $MOUNT_OPTS | tr , \\\n | grep '^acl$' -q
  if [ $? -eq 0 ]; then
    echo "ACLs enabled"
  else
    echo "ACLs disabled"
  fi
}
...