Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to reset the ACLs on a directory tree so that the root directory ACL replaces the ACLs on all files and folders below it. How best can I achieve this?

Edit: Is this question poorly worded? Can someone give me some feedback even if you don't know the answer?

share|improve this question
up vote 2 down vote accepted

You just need to find out the ACL by running an ls -V on the directory (in this example, I'm running it on the root directory from /:

drwx------   4 root     root          10 Feb 25  2011 root

You can then run a chmod -R A=<<INSERT ACL HERE>> * on the directory, where <<INSERT ACL HERE>> is replaced with the acl as listed in the ls command.

In this case, I'd cd root and then issue chmod -R A=owner@:rwxp--aARWcCos:-------:allow\ group@:------a-R-c--s:-------:allow\ everyone@:------a-R-c--s:-------:allow *

This usually works for me.

share|improve this answer
ah cool, that makes sense, so simple. There should be nothing wrong with setting the 'r' and 'd' inherit flags on with this operation? – Ablue Nov 9 '11 at 0:04
I shouldn't think so. – growse Nov 9 '11 at 0:33

Occasionally, you might want to consider to assign different permissions to Dir and Files, for instance 2755 and 0644, in this case

$ cd 

$ find . -t d -exec chmod 2755 {} \; # update ACL on dirs

$ find . -t f -exec chmod 0644 {} \; # update ACL on files


share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.