xref: /illumos-gate/usr/src/man/man8/getent.8 (revision bbf21555)
1e5ecfaa0SPeter Tribble.\"
2e5ecfaa0SPeter Tribble.\" The contents of this file are subject to the terms of the
3e5ecfaa0SPeter Tribble.\" Common Development and Distribution License (the "License").
4e5ecfaa0SPeter Tribble.\" You may not use this file except in compliance with the License.
5e5ecfaa0SPeter Tribble.\"
6e5ecfaa0SPeter Tribble.\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
7e5ecfaa0SPeter Tribble.\" or http://www.opensolaris.org/os/licensing.
8e5ecfaa0SPeter Tribble.\" See the License for the specific language governing permissions
9e5ecfaa0SPeter Tribble.\" and limitations under the License.
10e5ecfaa0SPeter Tribble.\"
11e5ecfaa0SPeter Tribble.\" When distributing Covered Code, include this CDDL HEADER in each
12e5ecfaa0SPeter Tribble.\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
13e5ecfaa0SPeter Tribble.\" If applicable, add the following below this CDDL HEADER, with the
14e5ecfaa0SPeter Tribble.\" fields enclosed by brackets "[]" replaced with your own identifying
15e5ecfaa0SPeter Tribble.\" information: Portions Copyright [yyyy] [name of copyright owner]
16e5ecfaa0SPeter Tribble.\"
17e5ecfaa0SPeter Tribble.\"
18c10c16deSRichard Lowe.\" Copyright (C) 1999, Sun Microsystems, Inc. All Rights Reserved
19e5ecfaa0SPeter Tribble.\" Copyright (c) 2014 Gary Mills
20e5ecfaa0SPeter Tribble.\" Copyright (c) 2018 Peter Tribble
21e5ecfaa0SPeter Tribble.\"
2274e12c43SGordon Ross.Dd June 17, 2021
23*bbf21555SRichard Lowe.Dt GETENT 8
24e5ecfaa0SPeter Tribble.Os
25e5ecfaa0SPeter Tribble.Sh NAME
26e5ecfaa0SPeter Tribble.Nm getent
27e5ecfaa0SPeter Tribble.Nd get entries from administrative database
28e5ecfaa0SPeter Tribble.Sh SYNOPSIS
29e5ecfaa0SPeter Tribble.Nm
30e5ecfaa0SPeter Tribble.Ar database
31e5ecfaa0SPeter Tribble.Oo Ar key Oc Ns ...
32e5ecfaa0SPeter Tribble.Sh DESCRIPTION
33e5ecfaa0SPeter Tribble.Nm
34e5ecfaa0SPeter Tribblegets a list of entries from the administrative database specified by
35e5ecfaa0SPeter Tribble.Ar database .
36e5ecfaa0SPeter TribbleThe information generally comes from one or more of the sources that are
37e5ecfaa0SPeter Tribblespecified for the
38e5ecfaa0SPeter Tribble.Ar database
39e5ecfaa0SPeter Tribblein
40e5ecfaa0SPeter Tribble.Pa /etc/nsswitch.conf .
41e5ecfaa0SPeter Tribble.Pp
42e5ecfaa0SPeter Tribble.Ar database
43e5ecfaa0SPeter Tribbleis the name of the database to be examined.
44e5ecfaa0SPeter TribbleThis can be
45e5ecfaa0SPeter Tribble.Cm passwd ,
46e5ecfaa0SPeter Tribble.Cm shadow ,
47e5ecfaa0SPeter Tribble.Cm group ,
48e5ecfaa0SPeter Tribble.Cm hosts ,
49e5ecfaa0SPeter Tribble.Cm ipnodes ,
50e5ecfaa0SPeter Tribble.Cm services ,
51e5ecfaa0SPeter Tribble.Cm protocols ,
52e5ecfaa0SPeter Tribble.Cm ethers ,
53e5ecfaa0SPeter Tribble.Cm project ,
54e5ecfaa0SPeter Tribble.Cm networks ,
55e5ecfaa0SPeter Tribble.Cm netmasks ,
56e5ecfaa0SPeter Tribble.Cm auth_attr ,
57e5ecfaa0SPeter Tribble.Cm exec_attr ,
58e5ecfaa0SPeter Tribble.Cm prof_attr ,
5974e12c43SGordon Ross.Cm user_attr ,
60e5ecfaa0SPeter Tribbleor
6174e12c43SGordon Ross.Cm netgroup .
62e5ecfaa0SPeter TribbleFor each of these databases,
63e5ecfaa0SPeter Tribble.Nm
64e5ecfaa0SPeter Tribbleuses the appropriate library routines described in
65e5ecfaa0SPeter Tribble.Xr getpwnam 3C ,
66e5ecfaa0SPeter Tribble.Xr getspnam 3C ,
67e5ecfaa0SPeter Tribble.Xr getgrnam 3C ,
6874e12c43SGordon Ross.Xr getnetgrent 3C ,
69e5ecfaa0SPeter Tribble.Xr gethostbyaddr 3NSL ,
70e5ecfaa0SPeter Tribble.Xr gethostbyname 3NSL ,
71e5ecfaa0SPeter Tribble.Xr getipnodebyaddr 3SOCKET ,
72e5ecfaa0SPeter Tribble.Xr getipnodebyname 3SOCKET ,
73e5ecfaa0SPeter Tribble.Xr getservbyname 3SOCKET ,
74e5ecfaa0SPeter Tribble.Xr getprotobyname 3SOCKET ,
75e5ecfaa0SPeter Tribble.Xr ethers 3SOCKET ,
76e5ecfaa0SPeter Tribble.Xr getprojbyname 3PROJECT ,
77e5ecfaa0SPeter Tribble.Xr getnetbyname 3SOCKET ,
78e5ecfaa0SPeter Tribble.Xr getauthattr 3SECDB ,
79e5ecfaa0SPeter Tribble.Xr getexecattr 3SECDB ,
80e5ecfaa0SPeter Tribble.Xr getprofattr 3SECDB ,
81e5ecfaa0SPeter Tribbleand
82e5ecfaa0SPeter Tribble.Xr getuserattr 3SECDB
83e5ecfaa0SPeter Tribblerespectively.
84e5ecfaa0SPeter Tribble.Pp
85e5ecfaa0SPeter TribbleEach
86e5ecfaa0SPeter Tribble.Ar key
87e5ecfaa0SPeter Tribblemust be in a format appropriate for searching on the respective database.
88e5ecfaa0SPeter TribbleFor example, it can be a username or numeric-uid for
89e5ecfaa0SPeter Tribble.Cm passwd ;
90e5ecfaa0SPeter Tribblehostname or IP address for
91e5ecfaa0SPeter Tribble.Cm hosts ;
92e5ecfaa0SPeter Tribbleor service, service/protocol, port, or port/proto for
93e5ecfaa0SPeter Tribble.Cm services .
94e5ecfaa0SPeter Tribble.Pp
95e5ecfaa0SPeter Tribble.Nm
96e5ecfaa0SPeter Tribbleprints out the database entries that match each of the supplied keys, one per
97e5ecfaa0SPeter Tribbleline, in the format of the matching administrative file:
98*bbf21555SRichard Lowe.Xr passwd 5 ,
99*bbf21555SRichard Lowe.Xr shadow 5 ,
100*bbf21555SRichard Lowe.Xr group 5 ,
101*bbf21555SRichard Lowe.Xr project 5 ,
102*bbf21555SRichard Lowe.Xr hosts 5 ,
103*bbf21555SRichard Lowe.Xr services 5 ,
104*bbf21555SRichard Lowe.Xr protocols 5 ,
105*bbf21555SRichard Lowe.Xr ethers 5 ,
106*bbf21555SRichard Lowe.Xr netgroup 5 ,
107*bbf21555SRichard Lowe.Xr networks 5 ,
108*bbf21555SRichard Lowe.Xr netmasks 5 ,
109*bbf21555SRichard Lowe.Xr auth_attr 5 ,
110*bbf21555SRichard Lowe.Xr exec_attr 5 ,
111*bbf21555SRichard Lowe.Xr prof_attr 5 ,
112e5ecfaa0SPeter Tribbleor
113*bbf21555SRichard Lowe.Xr user_attr 5 .
114e5ecfaa0SPeter TribbleIf no key is given, all entries returned by the corresponding enumeration
115e5ecfaa0SPeter Tribblelibrary routine, for example,
116e5ecfaa0SPeter Tribble.Xr getpwent 3C
117e5ecfaa0SPeter Tribbleor
118e5ecfaa0SPeter Tribble.Xr gethostent 3NSL ,
119e5ecfaa0SPeter Tribbleare printed.
120e5ecfaa0SPeter TribbleEnumeration is not supported on
121e5ecfaa0SPeter Tribble.Cm ipnodes ,
122e5ecfaa0SPeter Tribble.Cm ethers ,
12374e12c43SGordon Ross.Cm netgroup ,
124e5ecfaa0SPeter Tribbleor
125e5ecfaa0SPeter Tribble.Cm netmasks .
12674e12c43SGordon Ross.Ss Key Interpretation for passwd, group, netgroup, and user_attr Databases
127e5ecfaa0SPeter TribbleWhen
128e5ecfaa0SPeter Tribble.Nm
129e5ecfaa0SPeter Tribbleis invoked with
130e5ecfaa0SPeter Tribble.Ar database
131e5ecfaa0SPeter Tribbleset to
132e5ecfaa0SPeter Tribble.Cm passwd ,
133e5ecfaa0SPeter Tribbleeach key value is processed as follows:
134e5ecfaa0SPeter Tribble.Bl -bullet
135e5ecfaa0SPeter Tribble.It
136e5ecfaa0SPeter TribbleIf the key value consists only of numeric characters,
137e5ecfaa0SPeter Tribble.Nm
138e5ecfaa0SPeter Tribbleassumes that the key value is a numeric user ID and searches the
139e5ecfaa0SPeter Tribble.Cm passwd
140e5ecfaa0SPeter Tribbledatabase for a matching user ID.
141e5ecfaa0SPeter Tribble.It
142e5ecfaa0SPeter TribbleIf the user ID is not found in the
143e5ecfaa0SPeter Tribble.Cm passwd
144e5ecfaa0SPeter Tribbledatabase or if the key value contains any non-numeric characters,
145e5ecfaa0SPeter Tribble.Nm
146e5ecfaa0SPeter Tribbleassumes the key value is a user name and searches the
147e5ecfaa0SPeter Tribble.Cm passwd
148e5ecfaa0SPeter Tribbledatabase for a matching user name.
149e5ecfaa0SPeter Tribble.El
150e5ecfaa0SPeter Tribble.Pp
151e5ecfaa0SPeter TribbleWhen
152e5ecfaa0SPeter Tribble.Nm
153e5ecfaa0SPeter Tribbleis invoked with
154e5ecfaa0SPeter Tribble.Ar database
155e5ecfaa0SPeter Tribbleset to
156e5ecfaa0SPeter Tribble.Cm group ,
157e5ecfaa0SPeter Tribbleeach key value is processed as follows:
158e5ecfaa0SPeter Tribble.Bl -bullet
159e5ecfaa0SPeter Tribble.It
160e5ecfaa0SPeter TribbleIf the key value consists only of numeric characters,
161e5ecfaa0SPeter Tribble.Nm
162e5ecfaa0SPeter Tribbleassumes that the key value is a numeric group ID and searches the
163e5ecfaa0SPeter Tribble.Cm group
164e5ecfaa0SPeter Tribbledatabase for a matching group ID.
165e5ecfaa0SPeter Tribble.It
166e5ecfaa0SPeter TribbleIf the group ID is not found in the
167e5ecfaa0SPeter Tribble.Cm group
168e5ecfaa0SPeter Tribbledatabase or if the key value contains any non-numeric characters,
169e5ecfaa0SPeter Tribble.Nm
170e5ecfaa0SPeter Tribbleassumes the key value is a group name and searches the
171e5ecfaa0SPeter Tribble.Cm group
172e5ecfaa0SPeter Tribbledatabase for a matching group name.
173e5ecfaa0SPeter Tribble.El
174e5ecfaa0SPeter Tribble.Pp
175e5ecfaa0SPeter TribbleWhen
176e5ecfaa0SPeter Tribble.Nm
177e5ecfaa0SPeter Tribbleis invoked with
178e5ecfaa0SPeter Tribble.Ar database
179e5ecfaa0SPeter Tribbleset to
18074e12c43SGordon Ross.Cm netgroup ,
18174e12c43SGordon Rossonly a single lookup key is supported, which must be in the following format:
18274e12c43SGordon Ross.Bd -ragged -offset Ds
18374e12c43SGordon Ross.Ar netgroup Oo Ar host Ar user Ar domain Oc
18474e12c43SGordon Ross.Ed
18574e12c43SGordon Ross.Pp
18674e12c43SGordon RossSpecifying only the
18774e12c43SGordon Ross.Ar netgroup
18874e12c43SGordon Rossname will result in entries from the selected netgroup being displayed as
18974e12c43SGordon Rossstring triples
19074e12c43SGordon Ross.Pq hostname, username, domain ,
19174e12c43SGordon Rossin a format compatible with
192*bbf21555SRichard Lowe.Xr netgroup 5 .
19374e12c43SGordon Ross.Pp
19474e12c43SGordon RossSpecifying the
19574e12c43SGordon Ross.Ar netgroup
19674e12c43SGordon Rossalong with
19774e12c43SGordon Ross.Ar host ,
19874e12c43SGordon Ross.Ar user
19974e12c43SGordon Rossand
20074e12c43SGordon Ross.Ar domain
20174e12c43SGordon Rosswill filter the netgroup display based on these entries.
20274e12c43SGordon RossAn asterisk
20374e12c43SGordon Ross.Pq \&*
20474e12c43SGordon Rosscan be used as a wildcard for the
20574e12c43SGordon Ross.Ar host ,
20674e12c43SGordon Ross.Ar user
20774e12c43SGordon Rossor
20874e12c43SGordon Ross.Ar domain
20974e12c43SGordon Rossfields.
21074e12c43SGordon Ross.Pp
21174e12c43SGordon RossSince the
21274e12c43SGordon Ross.Cm netgroup
21374e12c43SGordon Rossdatabase does not support enumeration, a lookup key must always be specified.
21474e12c43SGordon Ross.Pp
21574e12c43SGordon RossWhen
21674e12c43SGordon Ross.Nm
21774e12c43SGordon Rossis invoked with
21874e12c43SGordon Ross.Ar database
21974e12c43SGordon Rossset to
220e5ecfaa0SPeter Tribble.Cm user_attr ,
221e5ecfaa0SPeter Tribbleeach key value is processed as follows:
222e5ecfaa0SPeter Tribble.Bl -bullet
223e5ecfaa0SPeter Tribble.It
224e5ecfaa0SPeter TribbleIf the key value consists only of numeric characters,
225e5ecfaa0SPeter Tribble.Nm
226e5ecfaa0SPeter Tribbleassumes that the key value is a numeric user ID and searches the
227e5ecfaa0SPeter Tribble.Cm passwd
228e5ecfaa0SPeter Tribbledatabase for a matching user name, which is then used as the key for
229e5ecfaa0SPeter Tribble.Cm user_attr .
230e5ecfaa0SPeter Tribble.It
231e5ecfaa0SPeter TribbleIf the user ID is not found in the
232e5ecfaa0SPeter Tribble.Cm passwd
233e5ecfaa0SPeter Tribbledatabase or if the key value contains any non-numeric characters,
234e5ecfaa0SPeter Tribble.Nm
235e5ecfaa0SPeter Tribbleassumes the key value is a user name and searches the
236e5ecfaa0SPeter Tribble.Cm user_attr
237e5ecfaa0SPeter Tribbledatabase for a matching entry.
238e5ecfaa0SPeter Tribble.El
239e5ecfaa0SPeter Tribble.Sh FILES
240e5ecfaa0SPeter Tribble.Bl -tag -width Pa
241e5ecfaa0SPeter Tribble.It Pa /etc/nsswitch.conf
242c10c16deSRichard Lowename service switch configuration file
243e5ecfaa0SPeter Tribble.It Pa /etc/passwd
244c10c16deSRichard Lowepassword file
245e5ecfaa0SPeter Tribble.It Pa /etc/shadow
24600277c9eSGary Millsshadowed password file
247e5ecfaa0SPeter Tribble.It Pa /etc/group
248c10c16deSRichard Lowegroup file
249e5ecfaa0SPeter Tribble.It Pa /etc/inet/hosts
250c10c16deSRichard LoweIPv4 and IPv6 host name database
251e5ecfaa0SPeter Tribble.It Pa /etc/services
252c10c16deSRichard LoweInternet services and aliases
253e5ecfaa0SPeter Tribble.It Pa /etc/project
254c10c16deSRichard Loweproject file
255e5ecfaa0SPeter Tribble.It Pa /etc/protocols
256c10c16deSRichard Loweprotocol name database
257e5ecfaa0SPeter Tribble.It Pa /etc/ethers
258c10c16deSRichard LoweEthernet address to hostname database or domain
259e5ecfaa0SPeter Tribble.It Pa /etc/networks
260c10c16deSRichard Lowenetwork name database
261e5ecfaa0SPeter Tribble.It Pa /etc/netmasks
262c10c16deSRichard Lowenetwork mask database
26374e12c43SGordon Ross.It Pa /etc/netgroup
26474e12c43SGordon Rossnetwork group database
265e5ecfaa0SPeter Tribble.It Pa /etc/user_attr
266e5ecfaa0SPeter Tribbleextended user attributes database
267e5ecfaa0SPeter Tribble.It Pa /etc/security/auth_attr
268e5ecfaa0SPeter Tribbleauthorization description database
269e5ecfaa0SPeter Tribble.It Pa /etc/security/exec_attr
270e5ecfaa0SPeter Tribbleexecution profiles database
271e5ecfaa0SPeter Tribble.It Pa /etc/security/prof_attr
272e5ecfaa0SPeter Tribbleprofile description database
273e5ecfaa0SPeter Tribble.El
274e5ecfaa0SPeter Tribble.Sh EXIT STATUS
275e5ecfaa0SPeter TribbleThe following exit values are returned:
276e5ecfaa0SPeter Tribble.Pp
277e5ecfaa0SPeter Tribble.Bl -tag -width Ds -compact
278e5ecfaa0SPeter Tribble.It Sy 0
279e5ecfaa0SPeter TribbleSuccessful completion.
280e5ecfaa0SPeter Tribble.It Sy 1
281e5ecfaa0SPeter TribbleCommand syntax was incorrect, an invalid option was used, or an internal error
282e5ecfaa0SPeter Tribbleoccurred.
283e5ecfaa0SPeter Tribble.It Sy 2
284e5ecfaa0SPeter TribbleAt least one of the specified entry names was not found in the database.
285e5ecfaa0SPeter Tribble.It Sy 3
286e5ecfaa0SPeter TribbleThere is no support for enumeration on this database.
287e5ecfaa0SPeter Tribble.El
288e5ecfaa0SPeter Tribble.Sh SEE ALSO
289e5ecfaa0SPeter Tribble.Xr getgrnam 3C ,
29074e12c43SGordon Ross.Xr getnetgrent 3C ,
291e5ecfaa0SPeter Tribble.Xr getpwnam 3C ,
292e5ecfaa0SPeter Tribble.Xr getspnam 3C ,
293e5ecfaa0SPeter Tribble.Xr gethostbyaddr 3NSL ,
294e5ecfaa0SPeter Tribble.Xr gethostbyname 3NSL ,
295e5ecfaa0SPeter Tribble.Xr gethostent 3NSL ,
296e5ecfaa0SPeter Tribble.Xr getprojbyname 3PROJECT ,
297e5ecfaa0SPeter Tribble.Xr getauthattr 3SECDB ,
298e5ecfaa0SPeter Tribble.Xr getexecattr 3SECDB ,
299e5ecfaa0SPeter Tribble.Xr getprofattr 3SECDB ,
300e5ecfaa0SPeter Tribble.Xr getuserattr 3SECDB ,
301e5ecfaa0SPeter Tribble.Xr ethers 3SOCKET ,
302e5ecfaa0SPeter Tribble.Xr getipnodebyaddr 3SOCKET ,
303e5ecfaa0SPeter Tribble.Xr getipnodebyname 3SOCKET ,
304e5ecfaa0SPeter Tribble.Xr getnetbyname 3SOCKET ,
305e5ecfaa0SPeter Tribble.Xr getprotobyname 3SOCKET ,
306e5ecfaa0SPeter Tribble.Xr getservbyname 3SOCKET ,
307*bbf21555SRichard Lowe.Xr auth_attr 5 ,
308*bbf21555SRichard Lowe.Xr ethers 5 ,
309*bbf21555SRichard Lowe.Xr exec_attr 5 ,
310*bbf21555SRichard Lowe.Xr group 5 ,
311*bbf21555SRichard Lowe.Xr hosts 5 ,
312*bbf21555SRichard Lowe.Xr netmasks 5 ,
313*bbf21555SRichard Lowe.Xr networks 5 ,
314*bbf21555SRichard Lowe.Xr nsswitch.conf 5 ,
315*bbf21555SRichard Lowe.Xr passwd 5 ,
316*bbf21555SRichard Lowe.Xr prof_attr 5 ,
317*bbf21555SRichard Lowe.Xr project 5 ,
318*bbf21555SRichard Lowe.Xr protocols 5 ,
319*bbf21555SRichard Lowe.Xr services 5 ,
320*bbf21555SRichard Lowe.Xr shadow 5 ,
321*bbf21555SRichard Lowe.Xr user_attr 5 ,
322*bbf21555SRichard Lowe.Xr attributes 7
323