1
0
mirror of https://github.com/systemd/systemd.git synced 2025-03-19 22:50:17 +03:00

docs: Add an examples for command line access

It took me almost an hour to read through the source code to construct
this line.

(cherry picked from commit 20634844ddfc55eebbd6696919f043e3272881c2)
This commit is contained in:
Andreas Schneider 2025-02-05 15:38:32 +01:00 committed by Yu Watanabe
parent bb22ed069b
commit 0a7c3f3ba3

View File

@ -270,3 +270,24 @@ result in more than one reply, because neither UID/GID nor name is specified) is
Services which are asked for enumeration may return the `EnumerationNotSupported` error in this case.
And that's really all there is to it.
## Command Line Access
For command line access you can use the
[userdbctl](https://www.freedesktop.org/software/systemd/man/latest/userdbctl.html)
or
[varlinkctl](https://www.freedesktop.org/software/systemd/man/latest/varlinkctl.html)
commands. The `userdbctl` command is more end user friendly and the `varlinkctl`
command can help developers to understand the user database better.
To figure out which methods in the user database are available you can use:
```sh
varlinkctl introspect /run/systemd/userdb/io.systemd.Multiplexer io.systemd.UserDatabase
```
To get a record for a specific user use:
```sh
varlinkctl call /run/systemd/userdb/io.systemd.Multiplexer io.systemd.UserDatabase.GetUserRecord '{"userName": "alice", "service": "io.systemd.Multiplexer"}'
```