by Devin Yang
(This article was automatically translated.)

Published - 6 years ago ( Updated - 6 years ago )

I think most of the current Linux supports Access Control List (ACL). With filesystem ACLs enabled,
We can set additional permissions to different users or groups.
This allows us to set the file system permissions of different users more freely.

Go straight to the command.
The u at the bottom represents setting the share folder, and the test user has rwx permission.
setfacl -m u:test:rwx share/
Changing to g means that the group that sets test has rwx permission to the share/folder.
setfacl -m g:test:rwx share/
If you want to set all files in the directory that also includes subdirectories, the parameter is -R. (recursive)
Combined input is -Rm.

Here comes the problem, if it is set like this, all files will have execution permission. So how to set
Files do not have x permissions, only directories have x execution permissions (permissions to enter directories).
Very easy, we can do it with a capital X.
E.g:
setfacl -Rm u:git:rwX /var/www
This way there will be a beautiful color instead of a miserable green.

As a side note, we use getfacl to get additional file information.
For example: I set the git user as root with the following permissions.
setfacl -Rm u:git:rwX humanity-1.10.4/
Use git user to view

In the picture above, have you noticed -rw-rw-r--+. When ls -l, there is an extra +.
It is very obvious, which means that this file has additional ACL permission settings.

Now use getfacl images to see the user (user) authority of the images directory, which has execution authority.

If you like this article, please give me a Like? 

 

Tags: linux

Devin Yang

Feel free to ask me, if you don't get it.:)

No Comment

Post your comment

Login is required to leave comments

Similar Stories


linux,config

Ubuntu ppp0 renamed eth0

Not sure who will use it, but I encountered it myself, because my home is a floating IP. A software I installed cannot detect that the ppp0 network card is an external network, so changing the name can trick him into successfully installing it.

linux

Remove the Linux Kernel that is not used by the old version on Ubuntu

This page describes how I removed the old version of Linux Kernel taking up space on ubuntu.

linux, centos, rsnapshot

How to install rsnapshot on CentOS 7

rsnapshot is a rsync-based tool that can perform snapshot incremental backups. However, we installed which rsnapshot in CentOS. Why is there no such command? There is no way to install it with yum install rsnapshot?