BACKGROUND:
Panther introduced (and Tiger continued) a tradition of automatically creating a
special group for new users, whose name & gid were the same as the user's name
and gid. [e.g., steve 501 would be the group/gid for user steve with uid 501.]
Leopard doesn't do this automatically, rather -- to facilitate sharing -- Leopard
reverts back to Jaguar's (and earlier OSs) scheme of auto-assigning the group
'staff' (gid 20).
ISSUE:
The crux of the 'unknown' problem has to do with the fact that Leopard totally
abandoned NetInfo in favor of DirectoryServices, so when users upgraded from
Tiger (and earlier), the user database had to be transferred from one format to
the other. Some upgrade/migrate paths worked... i.e., when I did a clean install
plus immediate migration, the process properly created my '501' group for me,
(inside the new /var/db/dslocal hierarchy). Other users weren't so lucky.
That means -- when they migrated their items [assigned to their 501 groups] --
Leopard had no record of any group 501 in its database. Hence, it displays the
apparently uneditable (in Finder) 'unknown' group. Terminal shows the true gid.
FIX:
There's basically two ways to correct this: either assign all such items to the
group 'staff' --- or simply create the missing username/501 group, so that
Leopard can match up those assignments with a "known" group.
NOTES:
I focused on user/501, but naturally this extends to 502, 503, 504, etc., etc.
As far as actually creating a group or changing items from 'unknown' to 'staff'
I would probably use Terminal... but other methods surely exist.