用户和组管理工具 – “高级设置”的“用户权限”选项卡中的选项有何作用?

用户和组GUI的高级设置中的“用户权限”选项卡如何工作? 我的意思是这个窗口:

用户设置

它只是在某些群组中添加或删除用户,还是还有其他内容? 如果是这样,为什么只有少数几个团体在那里? 我的意思是,Ubuntu / Gnome / Whatever如何决定哪些组出现在该列表中? 每个“特权”的“描述”来自哪里?

作为一个侧面说明,我总是惊讶于这个GUI有多么可怕:文档是可笑的,至少可以说(点击帮助,看看:只有3页,非常过时的截图,过时和不完整的说明,而不是一个单词在高级设置上,设计也完全违反直觉: 用户所属的所有组都没有列表 必须单击“管理组”并单击每个组的属性才能查看其用户。 来吧! 为什么像用户和群组管理这样的主要和古老的东西仍然没有像样的GUI?

经过一些研究,我回答了我自己的问题…在这里发帖以供参考,可能会帮助将来有类似问题的人:

我已经下载并研究了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 – 管理系统。 允许成员控制系统上的管理function,例如添加程序和新用户帐户 (换句话说,它是允许用户使用sudo命令的组)。 更新 :从Ubuntu 12.04开始,相应的组名为sudo

  • audio – 使用音频设备

  • cdrom – 使用CD-ROM驱动器
  • cdwrite – 刻录CD / DVD
  • dialout – 使用调制解调器。 完全和直接访问串行端口。 该组的成员可以重新配置调制解调器,拨打任何地方等。

  • dip – 使用调制解调器连接到Internet。 该组的名称代表“拨号IP”。 在dip 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等价。

  • powerdev – 暂停和hibernate计算机

  • proc – 访问/ proc文件系统
  • scanner – 使用扫描仪
  • tape – 使用磁带机
  • usb – 使用USB设备
  • vboxusers – 使用VirtualBox虚拟化解决方案
  • video – 使用video设备
  • wheel – 能够获得管理员权限
  • sambashare – 与本地网络共享文件

只有在系统中存在对应组时,才会列出权限。 所以下面没有显示,因为Ubuntu默认不创建它们: powerdevpowerdevprocscannerusbvideowheel

vboxusers (或许sambashare )仅在您安装该软件时创建,给人一种错误的印象,即此列表是可配置的而不是硬编码的。

这有点奇怪,因为我可以使用我的CD / DVD刻录机,USB端口,hibernate,音频和video就好了。 也许这些是Ubuntu没有使用的Debian的过时组? 好吧,那么磁带在那里做什么?

更新: Video组似乎与使用帧缓冲驱动程序进行直接video访问和图形模式有关。 事实certificate,非root用户不允许使用video图形, Xorg X服务器是,而桌面环境(如Gnome / Unity / KDE)则使用X服务器。 因此, /usr/bin/X作为root用户设置。

我想这与usbcdrom和其他块设备类似:普通用户只能间接访问通过udev配置的设备。