在Linux,组是用户的融合。组的主要目的是为特殊互联网资源定义一组管理员权限。
例如读,写或执行权限,这类管理员权限可以在组中的用户正中间共享。能把用户加上组,并授予团的管理员权限。
本入门教程说明如何显示用户隶属的组。我们还将描述如何列出团的全体人员。用户能拥有属于两大类的组,分别关键组与次序组。
一般,关键团的名称与用户的名称一样。每一个用户拥有一个关键组。次序组用于向一组用户授予管理员权限。次序团的成员可以是零个或多个。
列出所有组
有多种方法能找到用户隶属的组。用户关键组存储在/etc/passwd
文档中,次序组到/etc/group
文档中列出。
探寻用户组的一种方法是查看这类文件信息,你能运用cat
,less
或grep
命令查看2个文件信息。
另一个更方便选择是运用groups命令,groups命令主要是为了给与系统用户和组的信息。
groups 命令列出所有组
列出用户隶属全军队的常用命令是groups
。当没有任何的基本参数运行groups
命令时。
groups
命令将打印出目前登录用户隶属所有组。第一个是关键组,别的是次序组。
必要时得到特殊用户隶属的组,请为groups
命令给与用户名作为基本参数。一样第一个是用户的主要组,别的是次序组。
groups
groups myfreax
myfreax adm cdrom sudo dip plugdev lpadmin sambashare
id 命令列出所有组
id
命令说明特殊用户及其隶属团的信息。倘若省掉用户名,通常会说明目前用户的信息。
要仅打印出名称并且不包含用户和组ID,挑选-n
选项。 -g
选项将仅打印出关键组,-G
选项将打印出所有组。例如命令id -nG myfreax
将打印出目前用户隶属的组的名称。
例如,要想获得用户myfreax
的信息,请运行命令id myfreax
。命令将说明用户名uid
,用户的主要组gid
和用户的次序组groups
。
id myfreax
id -nG myfreax
uid=1001(myfreax) gid=1001(myfreax) groups=1001(myfreax),27(sudo)
列出成员
要列出团的全体人员,挑选getent group
命令,脚跟组名字。倘若这样的事情存在,getent group
命令将打印出特殊组名字及其全体人员。
例如,要搜索developers
团的成员,请运行命令getent group developers
。如果没有导出来,还表示这样的事情也不会有。
getent group developers
developers:x:126:frank,mary
列出所有组
要查看系统上存在的所有组,只需运用cat命令或less命令查看/etc/group
文档就能。该文件中的每一行代表着一个组的信息。
另一个选择采用的是getent
命令,getent
命令说明/etc/nsswitch.conf
文档里的组数据记录,适用于查看历史团的数据信息信息。
假如想要在/etc/group文档得到所有组,请运行命令less /etc/group
。需要使用getent
命令得到所有组,请运行命令getent group
。
less /etc/group
getent group
导出来与/etc/group
文档主要内容一样。假如你运用LDAP进行用户身份验证,getent
命令将说明/etc/group
文件或LDAP数据库管理中所有组。
您也可以运用awk
或cut
只打印出第一列,本身就是仅打印出队的名名称。
getent group | awk -F: '{ print $1}'
getent group | cut -d: -f1
结论
在教学中,您学会了如何查找用户隶属的组。相同的命令适用于任何Linux发行版,包括Ubuntu,CentOS,RHEL,Debian和Linux Mint。如有任何疑问,请随时。
