87

With pts m groupname I can list the users in a group. How can I do the opposite - that is, list all the groups that a user is a member of?

(I need this to find the name of a group that I know a user who is a member of, but I don't know the group name...)

Clarification:
This question is complicated by the fact that I am not the system administrator, and that I don't have root permissions (far from it). Instead, I am part of a group of "moderators" that administrate a small part of the system - to be specific, the physics branch of the student union at my university's central IT system.

Within our branch, we have a bunch of different access groups for people who are in charge of things. In this case, one of two people responsible for something (it doesn't matter what) have been replaced, and I was looking to examine the other user to find out what access rights I should give the replacement.

I have now been able to solve the immediate problem (the new guy not being able to access a folder) by examining the folder to see who has access, and there picking the group from the list. However, there might be more privileges that this user should have that I don't know of, so the question is still relevant for me, albeit not so acute.

3 Answers 3

117

You can also use the groups command:

[root@ftp ~]# groups root
root : root bin daemon sys adm disk wheel

if all else fails there is also good old grep:

[root@ftp ~]# grep root /etc/group
root:x:0:root
bin:x:1:root,bin,daemon
daemon:x:2:root,bin,daemon
sys:x:3:root,bin,adm
adm:x:4:root,adm,daemon
disk:x:6:root
wheel:x:10:root,admin
10
  • 1
    grep ^root: /etc/group might be better. Jul 26, 2010 at 20:17
  • no it is not as it only lists one of the groups root is a member of maybe with a bit of awk its more clear :) grep root /etc/group|awk -F: '{ print $1 }' Jul 26, 2010 at 20:55
  • 3
    Examining /etc/group sounds nice, but if your system is using a centralized directory (NIS, LDAP, ActiveDirectory, ?), you won't find a complete list of groups there. Only local group definitions would be in that file. Jul 27, 2010 at 5:42
  • The command groups kcz only gives me usr, although I know that this user is member of a group called fkm. What is missing? Aug 2, 2010 at 21:06
  • Not sure, pastebin your /etc/group @Tomas.
    – user1931
    Aug 2, 2010 at 22:14
31
$ id [username]
4
  • "$: Command not found". Aug 2, 2010 at 21:07
  • 9
    The $ represents the command prompt. Start typing with id.
    – coneslayer
    Aug 3, 2010 at 11:08
  • Still doesn't give me much: uid=[five digits](kcz) gid=30(usr) Aug 5, 2010 at 10:16
  • it is showing uid= gid= groups= so the third thing I'm getting is the list of groups a user belongs to.
    – Khuram
    Sep 1, 2017 at 14:24
6

Found it - way later, but I did! =)

Just as

$>pts m [group name]

lists all the members in a group,

$>pts m [user name]

lists all the groups a user is member of. It was too simple :P

3
  • 3
    pts isn’t a standard command. Dec 13, 2015 at 13:52
  • 1
    @user2284570: Perhaps not. But it was clearly stated in the question (the very first thing, in fact, and with syntax highlighting) that it's pts that this question concerns. Dec 14, 2015 at 7:27
  • @TomasAschan, maybe you can tell which specific UNIX it is. It may help other users find this Q more easily.
    – Mat M
    Jun 23, 2023 at 10:15

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .