systemd-userdbd.service - Man Page

JSON User/Group Record Query Multiplexer/NSS Compatibility





systemd-userdbd is a system service that multiplexes user/group lookups to all local services that provide JSON user/group record definitions to the system. In addition it synthesizes JSON user/group records from classic UNIX/glibc NSS user/group records in order to provide full backwards compatibility. It may also pick up statically defined JSON user/group records from drop-in files in /etc/userdb/, /run/userdb/, /run/host/userdb/ and /usr/lib/userdb/.

Most of systemd-userdbd's functionality is accessible through the userdbctl(1) command.

The user and group records this service provides access to follow the JSON User Records[1] and JSON Group Record[2] definitions. This service implements the User/Group Record Lookup API via Varlink[3], and multiplexes access other services implementing this API, too. It is thus both server and client of this API.

This service provides three distinct Varlink[4] services: io.systemd.Multiplexer provides a single, unified API for querying JSON user and group records. Internally it talks to all other user/group record services running on the system in parallel and forwards any information discovered. This simplifies clients substantially since they need to talk to a single service only instead of all of them in parallel. io.systemd.NameServiceSwitch provides compatibility with classic UNIX/glibc NSS user records, i.e. converts struct passwd and struct group records as acquired with APIs such as getpwnam(1) to JSON user/group records, thus hiding the differences between the services as much as possible. io.systemd.DropIn makes JSON user/group records from the aforementioned drop-in directories available.

See Also

systemd(1), nss-systemd(8), userdbctl(1), systemd-homed.service(8)


  1. JSON User Records
  2. JSON Group Record
  3. User/Group Record Lookup API via Varlink
  4. Varlink

Referenced By

nss-systemd(8), systemd.directives(7), systemd.index(7), userdbctl(1).

The man page systemd-userdbd(8) is an alias of systemd-userdbd.service(8).

systemd 253