PTS_MEMBERSHIP(1)
π PTS_MEMBERSHIP β the "who's in whose group chat" command π
okay bestie, so this is pts_membership from the AFS Command Reference and it is literally just you asking the Protection Server "hey. who's in this group. and what groups is this person in." that's it. that's the whole vibe. β¨
β¨ NAME β¨
pts_membership β Displays the membership list for a user or group π«Ά
πΈ SYNOPSIS πΈ
pts membership -nameorid <user or group name or id>+
[-supergroups] [-expandgroups] [-cell <cell name>]
[-localauth] [-noauth] [-force] [-help]
[-auth] [-encrypt] [-config <config directory>]
pts m -na <user or group name or id>+
[-s] [-ex] [-c <cell name>]
[-no] [-l] [-f] [-h]
[-a] [-en] [-co <config directory>]
pts groups -na <user or group name or id>+
[-s] [-ex] [-c <cell name>]
[-no] [-l] [-f] [-h]
[-a] [-en] [-co <config directory>]
pts g -na <user or group name or id>+
[-s] [-ex] [-c <cell name>]
[-no] [-l] [-f] [-h]
[-a] [-en] [-co <config directory>]
like yes you can spell it all the way out or you can hit it with m, groups, or g, nobody's judging, we love a shortform era π
π¦ DESCRIPTION π¦
so. the pts membership command lists the groups that each user or machine (whoever you named in the -nameorid argument) belongs to. OR, flip it β if you hand it groups, it lists the users and machines that belong to each group you specified with -nameorid. both directions, one command, iconic behavior fr fr. π
heads up tho: you literally cannot list the members of system:anyuser or system:authuser. not a skill issue, it's just not possible, and they don't show up in the list of groups a user belongs to either. so don't go looking bestie, they're not there. π
want to add users or machines to groups? that's pts adduser. want to remove them? that's pts removeuser. this command is strictly the "read the group chat roster" girlie. π
π OPTIONS π
-nameorid <user or group name or id>+β tells it exactly what you want the tea on. this is the name or AFS UID of each user entry, the IP address (complete or wildcard-style) or AFS UID of each machine entry, or the name or AFS GID of each group, for which you want the membership list. and YES you can mix users, machines, and groups on the same command line, plus mix names and IDs, because chaos is allowed here. β one thing: if you're passing a group's GID, put a hyphen in front of it to show that it's negative.-supergroupsβ lists the groups that each group you named belongs to, on top of the user and machine members. so you get both directions at once. group membership can be nested whenptserveris compiled with theSUPERGROUPSoption enabled.-expandgroupsβ instead of only showing the groups where the user or machine is a direct member, it shows every group they're in, including the ones they got into via nested groups β for each user or machine you passed to-nameorid. π
and the other way around too: instead of listing groups that are members of a group, it lists every user and machine that is a member of a group, including the users and machines that are members because of nested groups β for each group you passed to -nameorid.
again: group membership may be nested when ptserver is compiled with the SUPERGROUPS option enabled.
-authβ uses the calling user's tokens to talk to the Protection Server. more deets inpts(1).-cell <cell name>β names the cell to run the command in. more deets inpts(1).-config <config directory>β use an alternate config directory. more deets inpts(1).-encryptβ encrypts any communication with the Protection Server. more deets inpts(1).-forceβ lets the command keep going as far as it possibly can when errors or other problems show up, instead of slamming the brakes at the first error. resilience queen. π«Ά-helpβ prints the online help for this command. every other valid option gets ignored, so don't bother stacking them.-localauthβ constructs a server ticket using a key from the local/etc/openafs/server/KeyFilefile. π¨ do not combine this flag with the-cellor-noauthoptions. more deets inpts(1).-noauthβ assigns the unprivileged identityanonymousto the issuer. more deets inpts(1).
π OUTPUT π
for each user and machine, the output starts with this header line, and then lists the groups that the user or machine belongs to:
Groups <name> (id: <AFS UID>) is a member of:
for each group, the output starts with this header line, and then lists the users and machines who belong to the group:
Members of <group_name> (id: <AFS GID>) are:
π EXAMPLES π
example one: listing the groups the user "pat" belongs to, and the members of the group "smith:friends". note that the third privacy flag for the "pat" entry was changed from the default hyphen to enable a non-administrative user to get this listing. iykyk.
% pts membership pat smith:friends
Groups pat (id: 1144) is a member of:
smith:friends
staff
johnson:project-team
Members of smith:friends (id: -562) are:
pat
terry
jones
richard
thompson
example two: how to list the groups that nested groups belong to. in this example the group "executives" is a member of the group "management", and the group "management" is a member of the group "staff". the group "management" is called a supergroup of the group "executives", and the group "staff" is called a supergroup of the group "management". nesting is giving family tree energy fr. πΈ
% pts membership executives
Members of executives (id: -208) are:
jane
% pts membership executives -supergroups
Members of executives (id: -208) are:
jane
Groups executives (id: -208) is a member of:
management
% pts membership management -supergroups
Members of management (id: -207) are:
executives
mary
sarah
carol
Groups management (id: -207) is a member of:
staff
% pts membership staff -supergroups
Members of staff (id: -206) are:
sales
marketing
engineering
management
Groups staff (id: -206) is a member of:
example three: how to find all the users who belong to a group, including users of nested groups. in this example, the user "jane" is listed as an expanded member of the group "management" instead of the group "executives".
% pts membership management -expandgroups
Expanded Members of management (id: -207) are:
jane
mary
sarah
carol
example four: how to find all the groups a user is a member of, including membership that comes from nested groups. in this example the user "jane" is a direct member of the group "executives". the -expandgroups flag shows all the groups where "jane" has membership status. π₯
% pts membership jane
Groups jane (id: 7) is a member of:
executives
% pts membership jane -expandgroups
Expanded Groups jane (id: 7) is a member of:
staff
management
executives
π PRIVILEGE REQUIRED π
members of the system:ptsviewers and system:administrators groups can always use this command in any of its variations. periodt. additionally, a user can always list the groups to which they belong, and the owner of a group can always list the members of the group. that's just self-care. π
extra privileges may be granted by the setting of the third privacy flag in the Protection Database entry of each user or group indicated by the -nameorid argument β use the pts examine command to display the flags:
- if it's a hyphen, the default permissions described above apply.
- if it's a lowercase
mand the-nameoridargument specifies a group, then members of that group can also list the other members. a privacy flag ofmonly changes permissions when it's set for a group. setting this flag for a user or a machine has no effect. π - if it's an uppercase
M, anyone who can access the cell's database server machines can list the membership of the group, or the groups to which that user or machine belongs, depending on what type of entry the flag is set on.
β¨ SEE ALSO β¨
pts(1), pts_adduser(1), pts_examine(1), pts_removeuser(1), pts_setfields(1)
π COPYRIGHT π
IBM Corporation 2000. <http://www.ibm.com/> All Rights Reserved.
This documentation is covered by the IBM Public License Version 1.0. It was converted from HTML to POD by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.
and that's the whole page bestie!! π this was OpenAFS, dated 2026-07-27, and you absolutely ate that. now go list some group memberships and slay responsibly. ππ¦πΈ
π¦ where this page comes from
- ubuntu stonking: openafs-client 1.8.16.1-1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms