SYSTEMD-LOGIND.SERVICE(8)

NAME
systemd-logind.service, systemd-logind - Login manager

SYNOPSIS

systemd-logind.service

/usr/lib/systemd/systemd-logind

DESCRIPTION

systemd-logind is a system service that manages user logins. It is responsible for:

    • Keeping track of users and sessions, their processes and their idle state. This is implemented by allocating a systemd slice unit for each user below user.slice, and a scope unit below it for each concurrent session of a user. Also, a per-user service manager is started as system service instance of user@.service for each logged in user.

    • Generating and managing session IDs. If auditing is available and an audit session ID is already set for a session, then this ID is reused as the session ID. Otherwise, an independent session counter is used.

    • Providing polkit[1]-based access for users for operations such as system shutdown or sleep

    • Implementing a shutdown/sleep inhibition logic for applications

    • Handling of power/sleep hardware keys

    • Multi-seat management

    • Session switch management

    • Device access management for users

    • Automatic spawning of text logins (gettys) on virtual console activation and user runtime directory management

    • Scheduled shutdown

    • Sending "wall" messages

User sessions are registered with logind via the pam_systemd(8) PAM module.

See logind.conf(5) for information about the configuration of this service.

See sd-login(3) for information about the basic concepts of logind such as users, sessions and seats.

See org.freedesktop.login1(5) and org.freedesktop.LogControl1(5) for information about the D-Bus APIs systemd-logind provides.

In addition to the D-Bus interface, systemd-logind also provides a Varlink interface io.systemd.Shutdown for shutting down or rebooting the system. It supports PowerOff, Reboot, Halt, KExec, and SoftReboot methods. Each method accepts an optional skipInhibitors boolean parameter to bypass active block inhibitors (matching the SD_LOGIND_SKIP_INHIBITORS flag of the D-Bus interface). The interface can be queried with varlinkctl introspect /run/systemd/io.systemd.Login io.systemd.Shutdown.

For more information see Inhibitor Locks[2].

If you are interested in writing a display manager that makes use of logind, please have look at Writing Display Managers[3]. If you are interested in writing a desktop environment that makes use of logind, please have look at Writing Desktop Environments[4].

SIGNAL

SIGHUP
    Reloads the service configuration file.

SEE ALSO

systemd(1), systemd-user-sessions.service(8), loginctl(1), logind.conf(5), pam_systemd(8), sd-login(3), org.freedesktop.login1(5)

NOTES

1.  polkit
    https://www.freedesktop.org/wiki/Software/polkit

2.  Inhibitor Locks
    https://systemd.io/INHIBITOR_LOCKS

3.  Writing Display Managers
    https://systemd.io/WRITING_DISPLAY_MANAGERS

4.  Writing Desktop Environments
    https://systemd.io/WRITING_DESKTOP_ENVIRONMENTS