了解/etc/group文件

时间:2020-01-09 10:43:55  来源:igfitidea点击:

您能解释一下Linux/UNIX之类的操作系统下/etc/group用户组文件的格式吗?
/etc/group是一个文本文件,用于定义Linux和UNIX操作系统下用户所属的组。
在Unix/Linux下,可以将多个用户分类。

Unix文件系统权限分为三个类:用户,组和其他。
使用组允许以组织的方式委派其他功能,例如访问磁盘,打印机和其他外围设备。
除其他外,此方法还使超级用户可以将一些管理任务委托给普通用户。

/etc/group文件

它存储组信息或者定义用户组,即定义用户所属的组。
每行只有一个条目,每行具有以下格式(所有字段都用冒号(:)分隔

/etc/group文件中的示例条目

其中:

  • group_name:这是组的名称。如果运行ls -l命令,则会在组字段中看到此名称。
  • Password:通常不使用密码,因此它为空/空白。它可以存储加密的密码。这对于实现特权组很有用。
  • 组ID(GID):必须为每个用户分配一个组ID。您可以在/etc/passwd文件中看到此数字。
  • "组列表":这是属于该组成员的用户的用户名列表。用户名必须用逗号分隔。

有关用户组的更多信息

出于以下原因,将Linux和UNIX系统上的用户分配给一个或者多个组:

  • 与少数用户共享文件或者其他资源
  • 易于用户管理
  • 方便用户监控
  • 组成员资格是大型Linux(UNIX)安装的完美解决方案。
  • 组成员资格使您或者您的用户对该组允许的文件和目录或者设备具有特殊访问权限

用户Tom是Web开发人员和Sales组的一部分。
因此,tom可以访问属于这两个组的文件。

查看当前组设置

执行以下任一命令:

$ less /etc/group

或者使用more命令:

$ more /etc/group

或者使用cat命令:

$ more /etc/group

找出用户所在的组

执行以下组命令:

$ groups {username}
$ groups
$ groups Hyman

输出示例:

Hyman : Hyman adm dialout cdrom plugdev lpadmin netdev admin sambashare libvirtd

打印用户/组身份

使用id命令显示有关给定用户的信息。

仅显示组标识,执行:

使用id命令:

$ id -g
$ id -g user
$ id -g Hyman

或者

$ id -gn Hyman

仅显示组标识和补充组,执行:

$ id -G
$ id -G user
$ id -G Hyman

或者

$ id -Gn Hyman