Why don't /etc/group and /etc/password match?

OK this is a basic question showing my ignorance of sysadmin matters…

Looking at the UNIX system I work on, my /etc/passwd entry says

my_name:x:uid:gid:comments:home directory:login shell

Then when I go and look at group ‘gid’ in /etc/group, I see

group_name:x:gid:some_other_name

So how come /etc/passwd thinks I am a member of the group, but /etc/group doesn’t? Am I a member of the group or aren’t I?

Is this normal? Your help would be appreciated.

Asked By: Monkeybrain

||

The usernames in /etc/group only contain users who are in the group as a supplementary group, not a primary group. Primary group information is stored in /etc/passwd. The initgroups(3) manpage was the only documentation I could find to indicate this:

NAME
       initgroups - initialize the supplementary group access list
FILES
       /etc/group          group database file
Answered By: jordanm

/etc/passwd shows each user’s primary group. /etc/group shows users who have a given group as one of their supplementary groups. For example, my username dan has the group dan as its primary group, so that is what appears in the group field in /etc/passwd. The user dan is also in the groups wheel, mailadmin and svn, so the entries for those groups in /etc/group list dan in the final field, which denotes group members.

Answered By: D_Bye
Categories: Answers Tags: ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.