acl.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Sat, 28 May 2016 16:05:12 +0300
changeset 1972 4a7c17977b2a
parent 1959 669ef988764d
child 1979 a39d953734da
permissions -rw-r--r--
MS SDK downloads

.. -*- coding: utf-8; -*-

======
 ACL.
======
.. contents::
   :local:

Managing ACL permissions.
=========================

Set permission::

  $ sudo setfacl -m u:nobody:rwx ~/tmp/dir
  $ sudo setfacl -m g:nogroup:rwx ~/tmp/dir

Review permissions::

  $ sudo getfacl ~/tmp/dir

Remove specific permissions::

  $ sudo setfacl -x u:test ~/tmp/dir

Remove all ACL permissions::

  $ sudo setfacl -b ~/tmp/dir

Remove default ACL::

  $ sudo setfacl -k ~/tmp/dir

Backup and restore ACL::

  $ sudo getfacl ~/tmp/dir >~/tmp/backup.acl
  $ sudo setfacl --restore=~/tmp/backup.acl

Add default ACL to directory to make ACL permission inheritance::

  $ sudo setfacl -m -d u:nobody:rwx /srv/www
  $ sudo setfacl -m u:nobody:rwx /srv/www

or by single command::

  $ sudo setfacl -m u:nobody:rwx,d:u:nobody:rwx /srv/www

To apply permission recursively add ``-R`` option::

  $ sudo setfacl -R -m -d u:nobody:rwx /srv/www
  $ sudo setfacl -R -m u:nobody:rwx /srv/www

.. NOTE:: default ACL is set only on directories and is applied only to
          directory children. So you should explicitly add permission to
          directory itself!