Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I would like to override the default umask and owner:group settings within certain directories only, without requiring root privileges, as that kind of defeats the purpose.

For example, when I touch a file in /var/www/ it becomes 0755 and owned by redsandro:redsandro.

I would like this to default to 0770 and redsandro:www-data for everything within /var/www/.

Maybe there's a better solution for this specific scenario. This seemed to be the only way to have both my non-root user and the webserver in full control over /var/www/. As the only user of this machine, I like the htdocs to be 'mine' without being root. Apache becomes fed up though when you take too much territory inside htdocs.

Here is a related question for the umask part where the answer is "no". But I am sure others have sought the same functionality, and I can imagine pwd based umask is available somehow just like git uses .git to store pwd independent settings that go up the directory-tree. Or down, I'm not sure if you call subdirectories up or down the tree. ;)

share|improve this question

1 Answer 1

Partial answer

It is possible to set the "sticky" bit for groups on the parent directory:

sudo chown redsandro:www-data /var/www
sudo chmod 2770 /var/www

alternately:

sudo chmod u=rwx,g=rwxs /var/www
share|improve this answer

Your Answer

 
discard

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.