RPC.IDMAPD(8)

๐Ÿ“ฆ
version 3.1.1 ยท 2 versions
  • 3.1.1 ยท alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian bookworm, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking (latest)
  • 2.5.4 ยท centos-stream 9
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian bookworm, debian trixie, fedora 43, fedora 44, nixos 26.05, nixpkgs unstable, opensuse-leap 16.0, ubuntu jammy, ubuntu noble, ubuntu questing, ubuntu resolute, ubuntu stonking

๐Ÿ’– RPC.IDMAPD ๐Ÿ’–

okay bestie, gather round, because we're about to talk about rpc.idmapd โ€” that's the NFSv4 ID <-> Name Mapper, and yes it lives in section 8 of the System Manager's Manual, so it's a real grown-up daemon and everything. ๐Ÿซถ


โœจ NAME โœจ

rpc.idmapd โ€” the NFSv4 ID <-> Name Mapper. it maps, bestie. that's the whole job. ๐Ÿ’…


๐ŸŽ€ SYNOPSIS ๐ŸŽ€

rpc.idmapd [-h] [-f] [-v] [-C] [-S] [-p path] [-c path]

๐ŸŒธ DESCRIPTION ๐ŸŒธ

so rpc.idmapd is the NFSv4 ID <-> name mapping daemon. it's out here providing functionality to the NFSv4 kernel client and the server, and it talks to them via upcalls, translating user and group IDs into names, and also names back into IDs. both directions. versatile queen. ๐Ÿ‘‘

the system figures out the user part of the string by doing a password or group lookup. and where does that lookup mechanism live? in /etc/idmapd.conf. that's the vibe. โœจ

by default, the domain part of the string is the system's DNS domain name. but lowkey you can also specify it in /etc/idmapd.conf if your system is multi-homed, or if the system's DNS domain name doesn't match the name of the system's Kerberos realm. it's giving "we contain multitudes." ๐ŸŒˆ

when the domain is not specified in /etc/idmapd.conf, the local DNS server gets queried for the _nfsv4idmapdomain text record. if that record exists, that's what gets used as the domain. and if the record doesn't exist? the domain part of the DNS domain gets used. mystery solved, no cap. ๐Ÿ”

okay important note bestie: on more recent kernels, only the NFSv4 server uses rpc.idmapd. the NFSv4 client uses nfsidmap(8) instead, and it only falls back to rpc.idmapd if there was a problem running the nfsidmap(8) program. so it's the backup plan. the understudy. the one who goes on when the main character can't. ๐Ÿ˜ญ

the options are as follows:


๐Ÿ’… OPTIONS ๐Ÿ’…

  • -h โ€” display the usage message. short, sweet, iconic.
  • -v โ€” increases the verbosity level. and yes, you can specify it multiple times, so go off, stack them, -vvv your heart out. ๐Ÿ“ข
  • -f โ€” runs rpc.idmapd in the foreground and prints all output to the terminal. no hiding, no mystery, we're watching it live. ๐Ÿ‘€
  • -p path โ€” specifies the location of the RPC pipefs to be path. the default value is "/var/lib/nfs/rpc_pipefs". ๐Ÿ’–
  • -c path โ€” use configuration file path. heads up though: this option is deprecated. it's giving legacy behavior. she's retired but still shows up to the party. ๐Ÿ’€
  • -C โ€” client-only: perform no idmapping for any NFS server, even if one is detected. just say no. ๐Ÿ™ˆ
  • -S โ€” server-only: perform no idmapping for any NFS client, even if one is detected. the other half of the same energy. โœจ

๐Ÿฆ‹ CONFIGURATION FILES ๐Ÿฆ‹

rpc.idmapd recognizes the following value from the [general] section of the /etc/nfs.conf configuration file:

  • pipefs-directory โ€” equivalent to -p. that's it, that's the whole entry. ๐ŸŽ€

and literally every other setting related to id mapping? those live in the /etc/idmapd.conf configuration file. two files, two vibes, one mapping daemon. ๐ŸŒธ


โญ EXAMPLES โญ

rpc.idmapd -f -vvv

this one runs rpc.idmapd printing all messages to console, and with a verbosity level of 3. three v's. maximum yapping. we love to see it. ๐Ÿ—ฃ๏ธ๐Ÿ”ฅ


๐Ÿ’œ FILES ๐Ÿ’œ

  • /etc/idmapd.conf
  • /etc/nfs.conf

๐ŸŒˆ SEE ALSO ๐ŸŒˆ


๐Ÿ‘‘ AUTHORS ๐Ÿ‘‘

the rpc.idmapd software has been developed by Marius Aamodt Eriksen โŸจmarius@citi.umich.eduโŸฉ. thank you for your service, king. ๐Ÿซถ


okay that's the whole page bestie, and just so you know where this came from: it's a Debian page, dated February 3, 2003. ancient. vintage. archival. and yet still out here mapping IDs for us. periodt. ๐Ÿ’–โœจ๐ŸŽ€๐Ÿฆ‹๐ŸŒธ๐Ÿ’…

๐Ÿ“ฆ where this page comes from