处理 linux 中组的权限

Handle permissions with groups in linux

我不明白这在 Linux 中是如何工作的。

例如,我希望只有某些组中的用户有权执行某些文件(我希望这在没有 visudo 的情况下是可能的)。

我创建了一个系统用户和系统组,如:

 useradd -K UID_MIN=100 -K UID_MAX=499 -K GID_MIN=100 -K GID_MAX=499 -p \* -s /sbin/nologin -c "testusr daemon,,,"  -d "/var/testusr" testusr

我将我当前的用户user添加到组testusr(可能不是跨平台的):

 adduser user testusr

我创建了一些测试 shell 文件并设置了权限:

 touch test.sh
 chmod ug+x test.sh
 sudo chown testusr:testusr test.sh

但我还是无法启动 test.sh as user:

 ./test.sh
 -> Error

现在我寻找一些像cdrom这样的系统组来检查它们是如何工作的。我的usercdrom组,可以在我的电脑上使用光驱:

$ ls -al /dev/cdrom
lrwxrwxrwx 1 root root 3 апр.  17 12:55 /dev/cdrom -> sr0
$ ls -al /dev/sr0
brw-rw----+ 1 root cdrom 11, 0 апр.  17 12:55 /dev/sr0

加法:

./test.sh 命令在系统重启后开始正常工作。奇怪...

我在 Ubuntu Studio 15.10

组更改仅在重新登录时反映。