'\" t .TH "SYSTEMD\-USERDBD\&.SERVICE" "8" "" "systemd 255" "systemd-userdbd.service" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" systemd-userdbd.service, systemd-userdbd \- JSON User/Group Record Query Multiplexer/NSS Compatibility .SH "SYNOPSIS" .PP systemd\-userdbd\&.service .PP /usr/lib/systemd/systemd\-userdbd .SH "DESCRIPTION" .PP \fBsystemd\-userdbd\fR 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 files in /etc/userdb/, /run/userdb/, /run/host/userdb/ and /usr/lib/userdb/ with the "\&.user" extension\&. .PP Most of \fBsystemd\-userdbd\fR\*(Aqs functionality is accessible through the \fBuserdbctl\fR(1) command\&. .PP The user and group records this service provides access to follow the \m[blue]\fBJSON User Records\fR\m[]\&\s-2\u[1]\d\s+2 and \m[blue]\fBJSON Group Record\fR\m[]\&\s-2\u[2]\d\s+2 definitions\&. This service implements the \m[blue]\fBUser/Group Record Lookup API via Varlink\fR\m[]\&\s-2\u[3]\d\s+2, and multiplexes access other services implementing this API, too\&. It is thus both server and client of this API\&. .PP This service provides three distinct \m[blue]\fBVarlink\fR\m[]\&\s-2\u[4]\d\s+2 services: \fBio\&.systemd\&.Multiplexer\fR 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\&. \fBio\&.systemd\&.NameServiceSwitch\fR provides compatibility with classic UNIX/glibc NSS user records, i\&.e\&. converts \fBstruct passwd\fR and \fBstruct group\fR records as acquired with APIs such as \fBgetpwnam\fR(1) to JSON user/group records, thus hiding the differences between the services as much as possible\&. \fBio\&.systemd\&.DropIn\fR makes JSON user/group records from the aforementioned drop\-in directories available\&. .SH "SEE ALSO" .PP \fBsystemd\fR(1), \fBnss-systemd\fR(8), \fBuserdbctl\fR(1), \fBsystemd-homed.service\fR(8) .SH "NOTES" .IP " 1." 4 JSON User Records .RS 4 \%https://systemd.io/USER_RECORD .RE .IP " 2." 4 JSON Group Record .RS 4 \%https://systemd.io/GROUP_RECORD .RE .IP " 3." 4 User/Group Record Lookup API via Varlink .RS 4 \%https://systemd.io/USER_GROUP_API .RE .IP " 4." 4 Varlink .RS 4 \%https://varlink.org/ .RE