Linux: Show The Groups a User Is In

How do I find out what groups I belong to under Linux operating systems?

/etc/group is a text file which defines the groups on the system. You can use the groups command to display group memberships for any user using the following syntax.

ADVERTISEMENTS

groups
groups userName-Here

Example

pen a command-line terminal (select Applications > Accessories > Terminal), and then type:
$ groups
Sample outputs:

vivek cdrom floppy audio dip video plugdev netdev bluetooth scanner

You are part of all of the above groups. To find group memebership for root user, enter:
$ groups root
Sample outputs:

root : root

Please note that (from the groups man page):

Primary and supplementary groups for a process are normally inherited from its parent and are usually unchanged since login. This means that if you change the group database after logging in, groups will not reflect your changes within your existing login session. Running `groups’ with a list of users causes the user and group database to be consulted afresh, and so will give a different result.

You can also use the id command as follows to get the same information:
$ id -Gn
$ id -Gn userName
$ id -Gn vivek

How Do I Find Out My Primary Group Membership?

Type the following command:
$ getent group userName
$ getent group vivek

Sample outputs:

vivek:x:1000:

In this example, user vivek has group id # 1000 and has group name vivek for primary group membership.

🐧 Get the latest tutorials on SysAdmin, Linux/Unix, Open Source/DevOps topics:
CategoryList of Unix and Linux commands
File Managementcat
FirewallAlpine Awall CentOS 8 OpenSUSE RHEL 8 Ubuntu 16.04 Ubuntu 18.04 Ubuntu 20.04
Network Utilitiesdig host ip nmap
OpenVPNCentOS 7 CentOS 8 Debian 10 Debian 8/9 Ubuntu 18.04 Ubuntu 20.04
Package Managerapk apt
Processes Managementbg chroot cron disown fg jobs killall kill pidof pstree pwdx time
Searchinggrep whereis which
User Informationgroups id lastcomm last lid/libuser-lid logname members users whoami who w
WireGuard VPNAlpine CentOS 8 Debian 10 Firewall Ubuntu 20.04

ADVERTISEMENTS
6 comments… add one
  • Georg Feb 17, 2014 @ 14:26

    what I was looking for — thanks!

  • glonner22 Jun 13, 2014 @ 21:04

    I added a user to a group, and then I type the groups command, but the addition doesn’t show up in that list. When I look at the groups file, the user name is in fact listed under that group. Any ideas as to why that would be?

  • Bhanu priya Feb 24, 2015 @ 13:15

    which command used to list out only groups?

    • 73mp74710n Oct 29, 2015 @ 21:40

      to list out only the groups this is what you will do
      awk -F : ‘{print $1}’ /etc/gshadow

  • Benjamin Bach Aug 12, 2015 @ 17:40

    “id -gn username” will show only the primary group!

  • Kevin Joyce Sep 9, 2016 @ 11:38

    ‘gentent group username’ does not show the primary group. It shows the group entry in the group database. You’d have to check ‘getent passwd username’ to cross-reference.


    [root@rugxacxapelo home]# getent group user100
    user100:x:1001:
    [root@rugxacxapelo home]# getent passwd user100
    user100:x:1001:1002::/home/user100:/bin/bash
    [root@rugxacxapelo home]# id -gn user100
    user200

Leave a Reply

Your email address will not be published.

Use HTML <pre>...</pre>, <code>...</code> and <kbd>...</kbd> for code samples.