用户和组 GUI 的高级设置中的“用户权限”选项卡如何工作?我指的是这个窗口:
它只是将用户添加到某些组或从中删除,还是还有其他原因?如果是这样,为什么只有几个组出现在那里?我的意思是,Ubuntu/Gnome/Whatever 如何决定哪些组会出现在该列表中?每个“特权”的“描述”来自哪里?
附注:我一直对这个 GUI 的糟糕程度感到惊讶:文档至少可以说是可笑的(单击“帮助”并查看:只有 3 页,非常过时的屏幕截图,过时且不完整的说明,并且根本没有关于高级设置的单个字),而且设计完全违反直觉:根本没有用户所属群组的列表。必须单击“管理组”,然后单击属性每一个团体看看它的用户。拜托!像用户和组管理这样重要而古老的东西怎么还没有像样的 GUI?
答案1
经过一番研究,我回答了我自己的问题...我将在这里发布以供参考,可能会对将来有类似问题的人有所帮助:
我已经下载并研究了软件包中的源代码gnome-system-utils
。应用程序本身是users-admin
。简短的回答是:
是的,此选项卡仅用于从某些组中添加和删除用户。
长答案:
例如,当从管理员组中删除用户时,会触发一些检查,如果用户是系统中唯一的管理员,则会触发警告,并阻止撤销此权限。但基本上,列表中的每个“权限”只是一个组的别名。这是有道理的,因为 Linux 中的安全性和权限与属于(或不属于)某些组的用户密切相关。
但并不是每个群体都出现在特权列表中,只有少数群体。而且,信不信由你,该列表是硬编码的!组和描述字符串!
以下是从 Linux Mint 10(即 Ubuntu Maverick 10.10)开始的权限列表中显示的所有组的列表。列表中显示的组名称和描述直接取自源代码文件src/users/privileges_list.c
。其中一些的解释(当描述不直观时)取自这个博客(有点过时)和 /usr/share/doc/base-passwd/users-and-groups.html
(绝对过时)
adm
- 监控系统日志。组 adm 用于系统监控任务。该组的成员可以读取 /var/log 中的许多日志文件,并且可以使用 xconsole。从历史上看,/var/log 是 /usr/adm(后来是 /var/adm),因此该组的名称如此。帮助:也许策略应该说明该组的目的,以便用户可以安全地添加到其中,确保他们能够做的只是读取日志。将其重命名为“log”也没什么坏处...admin
- 管理系统。允许成员控制系统上的管理功能,例如添加程序和新用户帐户(换句话说,它是允许用户使用sudo
命令的组)。更新:从 Ubuntu 12.04 开始,相应的组名为sudo
audio
- 使用音频设备cdrom
- 使用 CD-ROM 驱动器cdwrite
- 刻录 CD/DVDdialout
- 使用调制解调器。完全直接地访问串行端口。此组的成员可以重新配置调制解调器、拨号到任意位置等。dip
- 使用调制解调器连接到互联网。该组的名称代表“拨号 IP”。加入 dip 组后,您可以使用 pppd、pon 和 poff 等工具,使用 /etc/ppp/peers 目录中的预定义配置文件与其他系统建立拨号连接。fax
- 发送和接收传真floppy
- 使用软盘驱动器fuse
- 挂载用户空间文件系统(FUSE)。允许成员使用 FUSE 文件系统在其主文件夹中挂载可移动媒体,无需管理权限lpadmin
- 配置打印机。允许用户从 foomatic、cups 以及其他打印机数据库中添加、修改和删除打印机。netdev
- 连接到无线和以太网网络。内部通信服务使用的特殊组plugdev
- 自动访问外部存储设备。此组的成员可以以有限的方式访问可移动设备,而无需在 /etc/fstab 中进行明确配置。这对于希望能够插入和使用 CD、USB 驱动器等的本地用户非常有用。由于 pmount(plugdev 组的原始实现者)始终使用 nodev 和 nosuid 选项进行挂载并应用其他检查,因此此组并不打算以挂载文件系统通常允许的方式与 root 等效。涉及此组的语义的实现者应注意不要允许 root 等效。powerdev
- 暂停和休眠计算机proc
- 访问 /proc 文件系统scanner
- 使用扫描仪tape
- 使用磁带驱动器usb
- 使用 USB 设备vboxusers
- 使用 VirtualBox 虚拟化解决方案video
- 使用视频设备wheel
- 能够获取管理员权限sambashare
- 与本地网络共享文件
仅当系统中存在其对应的组时,才会列出权限。因此,由于 Ubuntu 默认不创建它们,因此此处未显示以下内容:cdwrite
、powerdev
、proc
、scanner
、usb
和。video
wheel
仅当您安装该软件时才会创建组vboxusers
(也许还有sambashare
),从而给人一种错误的印象,即该列表是可配置的而不是硬编码的。
这有点奇怪,因为我可以正常使用 CD/DVD 刻录机、USB 端口、休眠、音频和视频。也许这些是 Debian 中过时的组,Ubuntu 未使用它们?那么,是什么呢?磁带在那干啥?
更新:Video
组似乎与使用帧缓冲驱动程序进行直接视频访问和图形模式有关。事实证明,非 root 用户不允许使用视频图形,Xorg X 服务器/usr/bin/X
是,而桌面环境(例如 Gnome/Unity/KDE)使用 X 服务器。因此,设置用户标识以 root 身份运行。
usb
我猜这与和其他块设备类似cdrom
:普通用户只能间接访问通过配置的设备udev
。