Home  »  ArticlesGuidesHow ToTechnologyTools   »   How to List a User’s Groups on Ubuntu Linux Systems

How to List a User’s Groups on Ubuntu Linux Systems

Ubuntu like any operating system consists of users. On Linux-based Operating Systems users are parts of a group that segregates certain permissions to do certain things. There may be cases where you would want to list a user’s groups in Ubuntu.

Here is a breakdown of the users and groups in Ubuntu.

  • User: A user who has an account must belong to one primary group. Usually, the user’s primary group is also named after the user account name.
  • Primary Group: This group is created at the same time the user account is created and the user is automatically added to it. By default, files created by the user automatically belong to the user group.
  • Secondary Group: These are other groups that are there to give users access to other resources that they don’t already have access to. A user can belong to zero or more secondary groups as needed.

Generally, the primary user’s group is stored in the /etc/passwd file while the secondary groups, if any, are listed in the /etc/group file.

We can get started by listing all the groups the current user belongs to using the following command:

$ groups

This should output all the groups that the user belongs to.

Output
john sudo www-data lxd

You can list a specific user’s groups in Ubuntu by specifying the user as shown here:

$ groups john

$ groups john

Here is the Output:

Output
john : john sudo www-data lxd

List User’s Groups Ubuntu Using id Command

You can get more detailed group information about a specific user using the id command. The id command will show the username (uid), the user’s primary group (gid), and the user’s secondary groups (groups).

$ id john

Here is the expected output.

Output
uid=1000(john) gid=1000(john) groups=1000(richard),27(sudo),33(www-data),110(lxd)

Bonus Tips

You can also list a specific group’s membership using the following command:

$ getent group www-data

Here is the expected output

Output
www-data:x:33:john,user2,user3,user4

Listing All Groups

You can list all the groups on Ubuntu using the following command:

$ less /etc/group

This would be the expected output:

Output
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:syslog
tty:x:5:
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:
fax:x:21:
voice:x:22:
cdrom:x:24:
floppy:x:25:
tape:x:26:
sudo:x:27:john
audio:x:29:
dip:x:30:
www-data:x:33:john,user2,user3,user4
...

That’s all for now, you should now know how to list a user’s groups on Ubuntu 20.04, 18.04 and older versions.

Found this article interesting? Follow Brightwhiz on Facebook, Twitter, and YouTube to read and watch more content we post.

Available under:
Articles, Guides, How To, Technology, Tools