$ id
uid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)
方法3:如何使用lid命令找出Linux中用户属于哪些组?
lid或libuser-lid命令显示了有关组的信息,包含用户名或组名称中所含的用户。该命令需要sudo权限。
你应该在较新的系统上运行libuser-lid命令而不是lid命令。
$ sudo libuser-lid daygeek
adm(gid=4)
cdrom(gid=24)
sudo(gid=27)
dip(gid=30)
plugdev(gid=46)
lpadmin(gid=116)
daygeek(gid=1000)
sambashare(gid=126)
方法4:如何使用getent命令找出Linux中用户属于哪些组?
getent命令显示了Name Service Switch库支持的数据库的条目,这在/etc/nsswitch.conf中已有配置。
$ getent group | grep daygeek
adm:x:4:syslog,daygeek
cdrom:x:24:daygeek
sudo:x:27:daygeek,2gadmin
dip:x:30:daygeek
plugdev:x:46:daygeek
lpadmin:x:116:daygeek
daygeek:x:1000:
sambashare:x:126:daygeek
如果你只想打印出特定用户的相关组的名称,请使用awk命令以及上述命令。
$ getent group | grep daygeek | awk -F: ‘{print $1}’
adm
cdrom
sudo
dip
plugdev
lpadmin
daygeek
sambashare
运行以下命令,只打印出主要组的信息。
$ getent group daygeek
daygeek:x:1000:
方法5:如何使用/etc/group文件找出Linux下用户属于哪些组?
使用grep命令,你可以从/etc/group文件轻松打印出有关某个用户的相关组的信息。
grep命令是指“全局正则表达式打印”,它从文件打印出匹配格式。
$ grep daygeek /etc/group
adm:x:4:syslog,daygeek
cdrom:x:24:daygeek
sudo:x:27:daygeek,2gadmin