'\" t .TH "LOGINCTL" "1" "" "systemd 241" "loginctl" .\" ----------------------------------------------------------------- .\" * 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" loginctl \- Control the systemd login manager .SH "SYNOPSIS" .HP \w'\fBloginctl\fR\ 'u \fBloginctl\fR [OPTIONS...] {COMMAND} [NAME...] .SH "DESCRIPTION" .PP \fBloginctl\fR may be used to introspect and control the state of the \fBsystemd\fR(1) login manager \fBsystemd-logind.service\fR(8)\&. .SH "OPTIONS" .PP The following options are understood: .PP \fB\-\-no\-ask\-password\fR .RS 4 Do not query the user for authentication for privileged operations\&. .RE .PP \fB\-p\fR, \fB\-\-property=\fR .RS 4 When showing session/user/seat properties, limit display to certain properties as specified as argument\&. If not specified, all set properties are shown\&. The argument should be a property name, such as "Sessions"\&. If specified more than once, all properties with the specified names are shown\&. .RE .PP \fB\-\-value\fR .RS 4 When showing session/user/seat properties, only print the value, and skip the property name and "="\&. .RE .PP \fB\-a\fR, \fB\-\-all\fR .RS 4 When showing session/user/seat properties, show all properties regardless of whether they are set or not\&. .RE .PP \fB\-l\fR, \fB\-\-full\fR .RS 4 Do not ellipsize process tree entries\&. .RE .PP \fB\-\-kill\-who=\fR .RS 4 When used with \fBkill\-session\fR, choose which processes to kill\&. Must be one of \fBleader\fR, or \fBall\fR to select whether to kill only the leader process of the session or all processes of the session\&. If omitted, defaults to \fBall\fR\&. .RE .PP \fB\-s\fR, \fB\-\-signal=\fR .RS 4 When used with \fBkill\-session\fR or \fBkill\-user\fR, choose which signal to send to selected processes\&. Must be one of the well known signal specifiers, such as \fBSIGTERM\fR, \fBSIGINT\fR or \fBSIGSTOP\fR\&. If omitted, defaults to \fBSIGTERM\fR\&. .RE .PP \fB\-n\fR, \fB\-\-lines=\fR .RS 4 When used with \fBuser\-status\fR and \fBsession\-status\fR, controls the number of journal lines to show, counting from the most recent ones\&. Takes a positive integer argument\&. Defaults to 10\&. .RE .PP \fB\-o\fR, \fB\-\-output=\fR .RS 4 When used with \fBuser\-status\fR and \fBsession\-status\fR, controls the formatting of the journal entries that are shown\&. For the available choices, see \fBjournalctl\fR(1)\&. Defaults to "short"\&. .RE .PP \fB\-H\fR, \fB\-\-host=\fR .RS 4 Execute the operation remotely\&. Specify a hostname, or a username and hostname separated by "@", to connect to\&. The hostname may optionally be suffixed by a port ssh is listening on, seperated by ":", and then a container name, separated by "/", which connects directly to a specific container on the specified host\&. This will use SSH to talk to the remote machine manager instance\&. Container names may be enumerated with \fBmachinectl \-H \fR\fB\fIHOST\fR\fR\&. Put IPv6 addresses in brackets\&. .RE .PP \fB\-M\fR, \fB\-\-machine=\fR .RS 4 Execute operation on a local container\&. Specify a container name to connect to\&. .RE .PP \fB\-\-no\-pager\fR .RS 4 Do not pipe output into a pager\&. .RE .PP \fB\-\-no\-legend\fR .RS 4 Do not print the legend, i\&.e\&. column headers and the footer with hints\&. .RE .PP \fB\-h\fR, \fB\-\-help\fR .RS 4 Print a short help text and exit\&. .RE .PP \fB\-\-version\fR .RS 4 Print a short version string and exit\&. .RE .SH "COMMANDS" .PP The following commands are understood: .SS "Session Commands" .PP \fBlist\-sessions\fR .RS 4 List current sessions\&. .RE .PP \fBsession\-status\fR [\fIID\fR\&...] .RS 4 Show terse runtime status information about one or more sessions, followed by the most recent log data from the journal\&. Takes one or more session identifiers as parameters\&. If no session identifiers are passed, the status of the caller\*(Aqs session is shown\&. This function is intended to generate human\-readable output\&. If you are looking for computer\-parsable output, use \fBshow\-session\fR instead\&. .RE .PP \fBshow\-session\fR [\fIID\fR\&...] .RS 4 Show properties of one or more sessions or the manager itself\&. If no argument is specified, properties of the manager will be shown\&. If a session ID is specified, properties of the session are shown\&. By default, empty properties are suppressed\&. Use \fB\-\-all\fR to show those too\&. To select specific properties to show, use \fB\-\-property=\fR\&. This command is intended to be used whenever computer\-parsable output is required\&. Use \fBsession\-status\fR if you are looking for formatted human\-readable output\&. .RE .PP \fBactivate\fR [\fIID\fR] .RS 4 Activate a session\&. This brings a session into the foreground if another session is currently in the foreground on the respective seat\&. Takes a session identifier as argument\&. If no argument is specified, the session of the caller is put into foreground\&. .RE .PP \fBlock\-session\fR [\fIID\fR\&...], \fBunlock\-session\fR [\fIID\fR\&...] .RS 4 Activates/deactivates the screen lock on one or more sessions, if the session supports it\&. Takes one or more session identifiers as arguments\&. If no argument is specified, the session of the caller is locked/unlocked\&. .RE .PP \fBlock\-sessions\fR, \fBunlock\-sessions\fR .RS 4 Activates/deactivates the screen lock on all current sessions supporting it\&. .RE .PP \fBterminate\-session\fR \fIID\fR\&... .RS 4 Terminates a session\&. This kills all processes of the session and deallocates all resources attached to the session\&. .RE .PP \fBkill\-session\fR \fIID\fR\&... .RS 4 Send a signal to one or more processes of the session\&. Use \fB\-\-kill\-who=\fR to select which process to kill\&. Use \fB\-\-signal=\fR to select the signal to send\&. .RE .SS "User Commands" .PP \fBlist\-users\fR .RS 4 List currently logged in users\&. .RE .PP \fBuser\-status\fR [\fIUSER\fR\&...] .RS 4 Show terse runtime status information about one or more logged in users, followed by the most recent log data from the journal\&. Takes one or more user names or numeric user IDs as parameters\&. If no parameters are passed, the status is shown for the user of the session of the caller\&. This function is intended to generate human\-readable output\&. If you are looking for computer\-parsable output, use \fBshow\-user\fR instead\&. .RE .PP \fBshow\-user\fR [\fIUSER\fR\&...] .RS 4 Show properties of one or more users or the manager itself\&. If no argument is specified, properties of the manager will be shown\&. If a user is specified, properties of the user are shown\&. By default, empty properties are suppressed\&. Use \fB\-\-all\fR to show those too\&. To select specific properties to show, use \fB\-\-property=\fR\&. This command is intended to be used whenever computer\-parsable output is required\&. Use \fBuser\-status\fR if you are looking for formatted human\-readable output\&. .RE .PP \fBenable\-linger\fR [\fIUSER\fR\&...], \fBdisable\-linger\fR [\fIUSER\fR\&...] .RS 4 Enable/disable user lingering for one or more users\&. If enabled for a specific user, a user manager is spawned for the user at boot and kept around after logouts\&. This allows users who are not logged in to run long\-running services\&. Takes one or more user names or numeric UIDs as argument\&. If no argument is specified, enables/disables lingering for the user of the session of the caller\&. .sp See also \fIKillUserProcesses=\fR setting in \fBlogind.conf\fR(5)\&. .RE .PP \fBterminate\-user\fR \fIUSER\fR\&... .RS 4 Terminates all sessions of a user\&. This kills all processes of all sessions of the user and deallocates all runtime resources attached to the user\&. .RE .PP \fBkill\-user\fR \fIUSER\fR\&... .RS 4 Send a signal to all processes of a user\&. Use \fB\-\-signal=\fR to select the signal to send\&. .RE .SS "Seat Commands" .PP \fBlist\-seats\fR .RS 4 List currently available seats on the local system\&. .RE .PP \fBseat\-status\fR [\fINAME\fR\&...] .RS 4 Show terse runtime status information about one or more seats\&. Takes one or more seat names as parameters\&. If no seat names are passed the status of the caller\*(Aqs session\*(Aqs seat is shown\&. This function is intended to generate human\-readable output\&. If you are looking for computer\-parsable output, use \fBshow\-seat\fR instead\&. .RE .PP \fBshow\-seat\fR [\fINAME\fR\&...] .RS 4 Show properties of one or more seats or the manager itself\&. If no argument is specified, properties of the manager will be shown\&. If a seat is specified, properties of the seat are shown\&. By default, empty properties are suppressed\&. Use \fB\-\-all\fR to show those too\&. To select specific properties to show, use \fB\-\-property=\fR\&. This command is intended to be used whenever computer\-parsable output is required\&. Use \fBseat\-status\fR if you are looking for formatted human\-readable output\&. .RE .PP \fBattach\fR \fINAME\fR \fIDEVICE\fR\&... .RS 4 Persistently attach one or more devices to a seat\&. The devices should be specified via device paths in the /sys file system\&. To create a new seat, attach at least one graphics card to a previously unused seat name\&. Seat names may consist only of a\(enz, A\(enZ, 0\(en9, "\-" and "_" and must be prefixed with "seat"\&. To drop assignment of a device to a specific seat, just reassign it to a different seat, or use \fBflush\-devices\fR\&. .RE .PP \fBflush\-devices\fR .RS 4 Removes all device assignments previously created with \fBattach\fR\&. After this call, only automatically generated seats will remain, and all seat hardware is assigned to them\&. .RE .PP \fBterminate\-seat\fR \fINAME\fR\&... .RS 4 Terminates all sessions on a seat\&. This kills all processes of all sessions on the seat and deallocates all runtime resources attached to them\&. .RE .SH "EXIT STATUS" .PP On success, 0 is returned, a non\-zero failure code otherwise\&. .SH "EXAMPLES" .PP \fBExample\ \&1.\ \&Querying user status\fR .sp .if n \{\ .RS 4 .\} .nf $ loginctl user\-status fatima (1005) Since: Sat 2016\-04\-09 14:23:31 EDT; 54min ago State: active Sessions: 5 *3 Unit: user\-1005\&.slice ├─user@1005\&.service \&... ├─session\-3\&.scope \&... └─session\-5\&.scope ├─3473 login \-\- fatima └─3515 \-zsh Apr 09 14:40:30 laptop login[2325]: pam_unix(login:session): session opened for user fatima by LOGIN(uid=0) Apr 09 14:40:30 laptop login[2325]: LOGIN ON tty3 BY fatima .fi .if n \{\ .RE .\} .PP There are two sessions, 3 and 5\&. Session 3 is a graphical session, marked with a star\&. The tree of processing including the two corresponding scope units and the user manager unit are shown\&. .SH "ENVIRONMENT" .PP \fI$SYSTEMD_PAGER\fR .RS 4 Pager to use when \fB\-\-no\-pager\fR is not given; overrides \fI$PAGER\fR\&. If neither \fI$SYSTEMD_PAGER\fR nor \fI$PAGER\fR are set, a set of well\-known pager implementations are tried in turn, including \fBless\fR(1) and \fBmore\fR(1), until one is found\&. If no pager implementation is discovered no pager is invoked\&. Setting this environment variable to an empty string or the value "cat" is equivalent to passing \fB\-\-no\-pager\fR\&. .RE .PP \fI$SYSTEMD_LESS\fR .RS 4 Override the options passed to \fBless\fR (by default "FRSXMK")\&. .sp If the value of \fI$SYSTEMD_LESS\fR does not include "K", and the pager that is invoked is \fBless\fR, Ctrl+C will be ignored by the executable\&. This allows \fBless\fR to handle Ctrl+C itself\&. .RE .PP \fI$SYSTEMD_LESSCHARSET\fR .RS 4 Override the charset passed to \fBless\fR (by default "utf\-8", if the invoking terminal is determined to be UTF\-8 compatible)\&. .RE .SH "SEE ALSO" .PP \fBsystemd\fR(1), \fBsystemctl\fR(1), \fBsystemd-logind.service\fR(8), \fBlogind.conf\fR(5)