USERVD(8)
π USERVD β supply user services π
okay bestie, welcome to the uservd page π this is section 8 of the manual (system manager's manual, so you know it's giving sysadmin main character energy π).
β¨ NAME β¨
uservd</puruple> β supply user services π«Ά
πΈ SYNOPSIS πΈ
userv [-daemon]
(yeah the synopsis literally says userv, not uservd. that's not me, that's the page. copy it exactly, no cap.)
π¦ DESCRIPTION π¦
so uservd is the daemon that userv calls up when it needs a task performed under a different userid, while keeping limited trust between the caller and the callee π that's the whole vibe. it's the middlewoman. the group chat mediator. the β¨trust-but-verifyβ¨ energy.
π OPTIONS π
there is literally one optional argument, queen:
-daemonβ asks the program to daemonise π« if you pass this flag,uservdwill fork and completely detach from the controlling terminal. if you don't pass it,uservdstays in its starting process group and keeps using the suppliedstderrstream for any runtime system messages β which is lowkey perfect if you're runninguservdas a child ofinitπ§ either way, errors thatuservditself detects get reported via syslog π
π SYSLOG MESSAGES π
uservd drops diagnostics of various kinds into syslog, with facility LOG_DAEMON π the syslog levels it uses are:
debugβ verbose messages about the activity of theuservdaemon πinfoβ two log messages about the nature and outcome of each request πnoticeβ messages about the status of the daemon, including the startup message and the hourly socket check messages β°warningβ ifuservdexits because it believes it no longer controls the rendezvous socket (ie, its socket has become orphaned π), this level gets messages saying why the daemon believes this, plus a notification of its shutdown πerrβ a believed-recoverable error condition was detected by theuservserver in itself, the client, or the operating system (this includes resource shortages π₯²).uservdwill try to continue πͺcritβuservddetected a non-recoverable error condition after startup and will exit πͺalertβ not used πemergβ not used π
the service configuration language has the facility to direct error and warning messages to syslog π― the default facility and level is user.err, but the author of the configuration file(s) can override this, slay β¨
β EXIT STATUS β
the daemon's exit code will reflect how well things went, bestie:
0β the daemon was asked to detach itself from the controlling terminal and this appears to have been done successfully π₯³1*β the daemon got aSIGTERMorSIGINTand shut itself down π΄2*β the daemon believed that it was no longer theuservdand so exited to clean up π§Ή3βuservdwas started with incorrect arguments π¬4β a system call failure or other environmental problem occurred during startup πͺοΈ5*β there was a non-recoverable error after startup;uservdhad to exit π6β the daemon was asked to detach itself, but its detaching child died for some unexpected reason π΅SIGABRT/SIGIOT* β an unexpected internal error, usually caused by a bug inuservdπ this can also occur if an attempt to block signals usingsigprocmaskfails π
outcomes marked * are not possible if the daemon is asked to detach itself β these exit statuses will be reaped by init instead and so will not usually be logged anywhere π«₯
the daemon's per-request children will report the success or otherwise of its request in their exit status π¬ these are not usually logged unless they indicate a serious problem π
π ENVIRONMENT π
all of the environment variables passed to uservd will be inherited by services as part of the default environment π (if the set-environment configuration directive is used, then other system configuration files can modify the environment. consult the specification π).
π SEE ALSO π
Ian Jackson, User service daemon and client specification π
π COPYRIGHT π
GNU userv is copyright Ian Jackson and other contributors π«Ά see README or userv --copright for full authorship information (yes, --copright, that's how it's spelled on the page, not me bestie π).
GNU userv is licensed under the terms of the GNU General Public Licence, version 3 or (at your option) any later version, and it comes with NO WARRANTY, not even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE β οΈ see the GNU General Public License for details.
you should have received a copy of the GNU General Public License along with userv, if not, see http://www.gnu.org/licenses/ π
π§ HISTORY π§
uservd was initially written in 1996 by Ian Jackson βοΈ it became GNU uservd in 1999, and version 1.0 was released in 2000 π
and that's the whole page, bestie!! β¨ this came from the userv manual, dated November 3, 1999 β vintage but iconic, fr fr ππ
π¦ where this page comes from
- debian bookworm: userv 1.2.1~beta4
- debian trixie: userv 1.2.1
- ubuntu jammy: userv 1.2.1~beta4
- ubuntu noble: userv 1.2.1~beta4
- ubuntu questing: userv 1.2.1
- ubuntu resolute: userv 1.2.3
- ubuntu stonking: userv 1.2.3
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms