1nfsidmap(5) File Formats Manual nfsidmap(5)
2
3
4
6 nfsidmap - The NFS idmapper upcall program
7
9 nfsidmap [-v] [-t timeout] key desc
10 nfsidmap [-v] [-c]
11 nfsidmap [-v] [-u|-g|-r user]
12 nfsidmap -d
13 nfsidmap -l
14 nfsidmap -h
15
17 The NFSv4 protocol represents the local system's UID and GID values on
18 the wire as strings of the form user@domain. The process of translat‐
19 ing from UID to string and string to UID is referred to as "ID map‐
20 ping."
21
22 The system derives the user part of the string by performing a password
23 or group lookup. The lookup mechanism is configured in
24 /etc/idmapd.conf.
25
26 By default, the domain part of the string is the system's DNS domain
27 name. It can also be specified in /etc/idmapd.conf if the system is
28 multi-homed, or if the system's DNS domain name does not match the name
29 of the system's Kerberos realm.
30
31 The /usr/sbin/nfsidmap program performs translations on behalf of the
32 kernel. The kernel uses the request-key mechanism to perform an
33 upcall. /usr/sbin/nfsidmap is invoked by /sbin/request-key, performs
34 the translation, and initializes a key with the resulting information.
35 The kernel then caches the translation results in the key.
36
37 nfsidmap can also clear cached ID map results in the kernel, or revoke
38 one particular key. An incorrect cached key can result in file and
39 directory ownership reverting to "nobody" on NFSv4 mount points.
40
41 In addition, the -d and -l options are available to help diagnose mis‐
42 configurations. They have no effect on the keyring containing ID map‐
43 ping results.
44
46 -c Clear the keyring of all the keys.
47
48 -d Display the system's effective NFSv4 domain name on stdout.
49
50 -g user
51 Revoke the gid key of the given user.
52
53 -h Display usage message.
54
55 -l Display on stdout all keys currently in the keyring used to
56 cache ID mapping results. These keys are visible only to the
57 superuser.
58
59 -r user
60 Revoke both the uid and gid key of the given user.
61
62 -t timeout
63 Set the expiration timer, in seconds, on the key. The default
64 is 600 seconds (10 mins).
65
66 -u user
67 Revoke the uid key of the given user.
68
69 -v Increases the verbosity of the output to syslog (can be speci‐
70 fied multiple times).
71
73 The file /etc/request-key.conf will need to be modified so
74 /sbin/request-key can properly direct the upcall. The following line
75 should be added before a call to keyctl negate:
76
77 create id_resolver * * /usr/sbin/nfsidmap -t 600 %k %d
78
79 This will direct all id_resolver requests to the program
80 /usr/sbin/nfsidmap. The -t 600 defines how many seconds into the
81 future the key will expire. This is an optional parameter for
82 /usr/sbin/nfsidmap and will default to 600 seconds when not specified.
83
84 The idmapper system uses four key descriptions:
85
86 uid: Find the UID for the given user
87 gid: Find the GID for the given group
88 user: Find the user name for the given UID
89 group: Find the group name for the given GID
90
91 You can choose to handle any of these individually, rather than using
92 the generic upcall program. If you would like to use your own program
93 for a uid lookup then you would edit your request-key.conf so it looks
94 similar to this:
95
96 create id_resolver uid:* * /some/other/program %k %d
97 create id_resolver * * /usr/sbin/nfsidmap %k %d
98
99 Notice that the new line was added above the line for the generic pro‐
100 gram. request-key will find the first matching line and run the corre‐
101 sponding program. In this case, /some/other/program will handle all
102 uid lookups, and /usr/sbin/nfsidmap will handle gid, user, and group
103 lookups.
104
106 /etc/idmapd.conf
107 ID mapping configuration file
108
109 /etc/request-key.conf
110 Request key configuration file
111
113 idmapd.conf(5), request-key(8)
114
116 Bryan Schumaker, <bjschuma@netapp.com>
117
118
119
120 1 October 2010 nfsidmap(5)