Sca*_*ine 13 permissions user-management
我知道有些定义了文件系统的权限(例如 www-data)。但我不明白为什么通过将用户添加到“视频”组来成功回答了这个问题。
所以问题主要是所有预建组在 Ubuntu 中做什么?更合理的是,既然有这么多,那么存在哪些“特殊”组以及应该如何或何时使用它们?
某些组允许访问文件或目录,例如:www-data
允许访问 web 文件或adm
组读取/var/log
. 这是微不足道的用途。
但是某些组允许访问某些设备。例如,该dialout
组允许通过以下文件访问串行端口/dev
:
$ find /dev -group dialout -exec ls -ld {} \;
crw-rw---- 1 root dialout 4, 64 Jan 19 12:51 /dev/ttyS0
crw-rw---- 1 root dialout 4, 67 Jan 19 12:51 /dev/ttyS3
crw-rw---- 1 root dialout 4, 66 Jan 19 12:51 /dev/ttyS2
crw-rw---- 1 root dialout 4, 65 Jan 19 12:51 /dev/ttyS1
Run Code Online (Sandbox Code Playgroud)
因此,如果您是该dialout
组的成员,则可以通过读取和写入设备文件来使用串行端口:echo "Hello world" > /dev/ttyS0
. 该video
组允许访问视频硬件。
有关每个组的说明,请阅读文件: /usr/share/doc/base-passwd/users-and-groups.html
编辑关于第一条评论:
事实上,从用户的角度来看,通常您不必在这些组中“访问”硬件资源。通常的做法是让一个守护进程/服务器管理它,成为最严格组的成员,然后允许您访问守护进程/服务器。
对于您的情况,作为video
组成员允许直接访问图形硬件,而不是通过 X 服务器。通常在台式机/笔记本电脑上,直接访问图形硬件 ( glxinfo | grep "direct rendering"
)是很好的。
旁注,如果您有直接渲染但您不是video
组 ( id | grep --color video
) 的成员,则可以通过/dev
文件 ( find /dev/ -group video -exec getfacl {} \; | grep $USERNAME
)的 acl 进行硬件访问。
归档时间: |
|
查看次数: |
17092 次 |
最近记录: |