| <?xml version='1.0'?> <!--*-nxml-*--> |
| <!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN" |
| "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"> |
| |
| <!-- |
| This file is part of systemd. |
| |
| Copyright 2010 Lennart Poettering |
| |
| systemd is free software; you can redistribute it and/or modify it |
| under the terms of the GNU Lesser General Public License as published by |
| the Free Software Foundation; either version 2.1 of the License, or |
| (at your option) any later version. |
| |
| systemd is distributed in the hope that it will be useful, but |
| WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| Lesser General Public License for more details. |
| |
| You should have received a copy of the GNU Lesser General Public License |
| along with systemd; If not, see <http://www.gnu.org/licenses/>. |
| --> |
| |
| <refentry id="loginctl"> |
| |
| <refentryinfo> |
| <title>loginctl</title> |
| <productname>systemd</productname> |
| |
| <authorgroup> |
| <author> |
| <contrib>Developer</contrib> |
| <firstname>Lennart</firstname> |
| <surname>Poettering</surname> |
| <email>lennart@poettering.net</email> |
| </author> |
| </authorgroup> |
| </refentryinfo> |
| |
| <refmeta> |
| <refentrytitle>loginctl</refentrytitle> |
| <manvolnum>1</manvolnum> |
| </refmeta> |
| |
| <refnamediv> |
| <refname>loginctl</refname> |
| <refpurpose>Control the systemd login manager</refpurpose> |
| </refnamediv> |
| |
| <refsynopsisdiv> |
| <cmdsynopsis> |
| <command>loginctl <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="req">COMMAND</arg> <arg choice="opt" rep="repeat">NAME</arg></command> |
| </cmdsynopsis> |
| </refsynopsisdiv> |
| |
| <refsect1> |
| <title>Description</title> |
| |
| <para><command>loginctl</command> may be used to |
| introspect and control the state of the |
| <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry> |
| login manager.</para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Options</title> |
| |
| <para>The following options are understood:</para> |
| |
| <variablelist> |
| <varlistentry> |
| <term><option>--help</option></term> |
| <term><option>-h</option></term> |
| |
| <listitem><para>Prints a short help |
| text and exits.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--version</option></term> |
| |
| <listitem><para>Prints a short version |
| string and exits.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--property=</option></term> |
| <term><option>-p</option></term> |
| |
| <listitem><para>When showing |
| session/user/ 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 |
| <literal>Sessions</literal>. If |
| specified more than once all |
| properties with the specified names |
| are shown.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--all</option></term> |
| <term><option>-a</option></term> |
| |
| <listitem><para>When showing |
| unit/job/manager properties, show all |
| properties regardless whether they are |
| set or not.</para></listitem> |
| </varlistentry> |
| |
| |
| <varlistentry> |
| <term><option>--no-pager</option></term> |
| |
| <listitem><para>Do not pipe output into a |
| pager.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--no-ask-password</option></term> |
| |
| <listitem><para>Don't query the user |
| for authentication for privileged |
| operations.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--kill-who=</option></term> |
| |
| <listitem><para>When used with |
| <command>kill-session</command>, |
| choose which processes to kill. Must |
| be one of <option>leader</option>, or |
| <option>all</option> to select whether |
| to kill only the leader process of the |
| session or all processes of the |
| session. If omitted defaults to |
| <option>all</option>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>--signal=</option></term> |
| <term><option>-s</option></term> |
| |
| <listitem><para>When used with |
| <command>kill-session</command> or |
| <command>kill-user</command>, choose |
| which signal to send to selected |
| processes. Must be one of the well |
| known signal specifiers such as |
| SIGTERM, SIGINT or SIGSTOP. If omitted |
| defaults to |
| <option>SIGTERM</option>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>-H</option></term> |
| <term><option>--host</option></term> |
| |
| <listitem><para>Execute operation |
| remotely. Specify a hostname, or |
| username and hostname separated by @, |
| to connect to. This will use SSH to |
| talk to the remote login manager |
| instance.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><option>-P</option></term> |
| <term><option>--privileged</option></term> |
| |
| <listitem><para>Acquire privileges via |
| PolicyKit before executing the |
| operation.</para></listitem> |
| </varlistentry> |
| </variablelist> |
| |
| <para>The following commands are understood:</para> |
| |
| <variablelist> |
| <varlistentry> |
| <term><command>list-sessions</command></term> |
| |
| <listitem><para>List current sessions.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>session-status [ID...]</command></term> |
| |
| <listitem><para>Show terse runtime |
| status information about one or more |
| sessions. This function is intended to |
| generate human-readable output. If you |
| are looking for computer-parsable |
| output, use |
| <command>show-session</command> |
| instead.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>show-session [ID...]</command></term> |
| |
| <listitem><para>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 is shown. By |
| default, empty properties are |
| suppressed. Use <option>--all</option> |
| to show those too. To select specific |
| properties to show use |
| <option>--property=</option>. This |
| command is intended to be used |
| whenever computer-parsable output is |
| required. Use |
| <command>session-status</command> if |
| you are looking for formatted |
| human-readable |
| output.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>activate [ID...]</command></term> |
| |
| <listitem><para>Activate one or more |
| sessions. This brings one or more |
| sessions into the foreground, if |
| another session is currently in the |
| foreground on the respective |
| seat.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>lock-session [ID...]</command></term> |
| <term><command>unlock-session [ID...]</command></term> |
| |
| <listitem><para>Activates/deactivates |
| the screen lock on one or more |
| sessions, if the session supports it.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>terminate-session [ID...]</command></term> |
| |
| <listitem><para>Terminates a |
| session. This kills all processes of |
| the session and deallocates all |
| resources attached to the |
| session.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>kill-session [ID...]</command></term> |
| |
| <listitem><para>Send a signal to one |
| or more processes of the session. Use |
| <option>--kill-who=</option> to select |
| which process to kill. Use |
| <option>--signal=</option> to select |
| the signal to send.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>list-users</command></term> |
| |
| <listitem><para>List currently logged |
| in users.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>user-status [USER...]</command></term> |
| |
| <listitem><para>Show terse runtime |
| status information about one or more |
| logged in users. This function is |
| intended to generate human-readable |
| output. If you are looking for |
| computer-parsable output, use |
| <command>show-user</command> |
| instead. Users may be specified by |
| their usernames or numeric user |
| IDs.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>show-user [USER...]</command></term> |
| |
| <listitem><para>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 is shown. By |
| default, empty properties are |
| suppressed. Use <option>--all</option> |
| to show those too. To select specific |
| properties to show use |
| <option>--property=</option>. This |
| command is intended to be used |
| whenever computer-parsable output is |
| required. Use |
| <command>user-status</command> if |
| you are looking for formatted |
| human-readable |
| output.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>enable-linger [USER...]</command></term> |
| <term><command>disable-linger [USER...]</command></term> |
| |
| <listitem><para>Enable/disable user |
| lingering for one or more users. If |
| enabled for a specific user a user |
| manager is spawned for him/her at |
| boot, and kept around after |
| logouts. This allows users who aren't |
| logged in to run long-running |
| services.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>terminate-user [USER...]</command></term> |
| |
| <listitem><para>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.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>kill-user [USER...]</command></term> |
| |
| <listitem><para>Send a signal to all |
| processes of a user. Use |
| <option>--signal=</option> to select |
| the signal to send.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>list-seats</command></term> |
| |
| <listitem><para>List currently |
| available seats on the local |
| system.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>seat-status [NAME...]</command></term> |
| |
| <listitem><para>Show terse runtime |
| status information about one or more |
| seats. This function is |
| intended to generate human-readable |
| output. If you are looking for |
| computer-parsable output, use |
| <command>show-seat</command> |
| instead.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>show-seat [NAME...]</command></term> |
| |
| <listitem><para>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 <option>--all</option> |
| to show those too. To select specific |
| properties to show use |
| <option>--property=</option>. This |
| command is intended to be used |
| whenever computer-parsable output is |
| required. Use |
| <command>seat-status</command> if you |
| are looking for formatted |
| human-readable |
| output.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>attach [NAME] [DEVICE...]</command></term> |
| |
| <listitem><para>Attach one or more |
| devices to a seat. The devices should |
| be specified via device paths in the |
| <filename>/sys</filename> file |
| system. To create a new seat attach at |
| least one graphics card to a |
| previously unused seat names. seat |
| names may consist only of a-z, A-Z, |
| 0-9, "-" 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 |
| <command>flush-devices</command>.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>flush-devices</command></term> |
| |
| <listitem><para>Removes all device |
| assignments previously created with |
| <command>attach</command>. After this |
| call only automatically generated |
| seats will remain and all seat |
| hardware is assigned to |
| them.</para></listitem> |
| </varlistentry> |
| |
| <varlistentry> |
| <term><command>terminate-seat [NAME...]</command></term> |
| |
| <listitem><para>Terminates all |
| sessions on a seat. This kills all |
| processes of all sessions on a seat and |
| deallocates all runtime resources |
| attached to them.</para></listitem> |
| </varlistentry> |
| </variablelist> |
| |
| </refsect1> |
| |
| <refsect1> |
| <title>Exit status</title> |
| |
| <para>On success 0 is returned, a non-zero failure |
| code otherwise.</para> |
| </refsect1> |
| |
| <refsect1> |
| <title>Environment</title> |
| |
| <variablelist> |
| <varlistentry> |
| <term><varname>$SYSTEMD_PAGER</varname></term> |
| <listitem><para>Pager to use when |
| <option>--no-pager</option> is not given; |
| overrides <varname>$PAGER</varname>. Setting |
| this to an empty string or the value |
| <literal>cat</literal> is equivalent to passing |
| <option>--no-pager</option>.</para></listitem> |
| </varlistentry> |
| </variablelist> |
| </refsect1> |
| |
| <refsect1> |
| <title>See Also</title> |
| <para> |
| <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, |
| <citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>, |
| <citerefentry><refentrytitle>logind.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry> |
| </para> |
| </refsect1> |
| |
| </refentry> |