处理linux中的组权限

时间:2016-04-17 12:05:56

标签: linux bash permissions user-permissions usergroups

我无法理解这在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作为user启动:

 ./test.sh
 -> Error

现在我找一些像cdrom这样的系统组来检查它们是如何工作的。我的user位于cdrom组,可以在我的计算机上使用光盘:

$ 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上

1 个答案:

答案 0 :(得分:0)

只有在重新登录时才会反映群组更改。