需要使用的场景:特权用户是root(主要给操作系统管理员使用),普通用户是user(主要给应用运维人员使用),分配/data目录给普通用户user使用;一般做法是:

chown  user:user  /data

chmod 770 /data

但是,还授权了sudo免密执行权限如: sudo systemctl 供应用运维人员操作启停应用(如docker给应用运维人员维护的情况下,需要用sudo systemctl),此时/data目录下有些文件会变为root,然后user用户就无法维护这些文件,然后又要找root用户人员授权,麻烦。解决办法如下:

用户user的主组为:user

setfacl -R -m g:user:rwx /data

setfacl -R -d --set  g:user:rwx  /data

如果还有其它应用用户执行程序需要/data目录下的文件权限,就直接加入user组吧:

usermod -G user  [otheruser]