chiark / gitweb /
install: optionally remove all symlinks from configuration tree recursively
[elogind.git] / man / systemd-install.xml
index c3ec4bdcd8f24988c459494340919dcbfebd5531..47dc63a615b33df56ca514b7f16e045f3fdc43b7 100644 (file)
@@ -55,6 +55,9 @@
                 <cmdsynopsis>
                         <command>systemd-install <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="plain">disable</arg> <arg choice="opt" rep="repeat">NAME</arg></command>
                 </cmdsynopsis>
+                <cmdsynopsis>
+                        <command>systemd-install <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="plain">realize</arg> <arg choice="opt" rep="repeat">NAME</arg></command>
+                </cmdsynopsis>
                 <cmdsynopsis>
                         <command>systemd-install <arg choice="opt" rep="repeat">OPTIONS</arg> <arg choice="plain">test</arg> <arg choice="opt" rep="repeat">NAME</arg></command>
                 </cmdsynopsis>
@@ -65,7 +68,8 @@
 
                 <para><command>systemd-install</command> enables or
                 disables systemd units, or checks whether they are
-                enabled.</para>
+                enabled, according to the installation suggestions
+                included in the unit files.</para>
 
                 <para>This command is useful to apply or undo the
                 installation instructions encoded in the <literal>[Install]</literal>
                 files in the configuration tree, but does not start
                 them. The latter equals starting them, but does not
                 necessarily require them to be enabled.</para>
+
+                <para>Note that while
+                <command>systemd-install</command> is the recommended
+                tool to create or remove symlinks in the systemd
+                configuration directory the administrator can also
+                create links there manually, which is particularly
+                useful to use configurations that deviate from the
+                installation suggestions included in the unit
+                files.</para>
         </refsect1>
 
         <refsect1>
                         </varlistentry>
 
                         <varlistentry>
-                                <term><option>--start[=MODE]</option></term>
+                                <term><option>--realize[=MODE]</option></term>
 
                                 <listitem><para>After
-                                enabling/disabling stop/restart the
-                                unit and reload manager
+                                enabling/disabling stop/restart/stop
+                                the unit and reload manager
                                 configuration. Optionally, takes one
                                 of <option>no</option>,
+                                <option>reload</option>,
                                 <option>minimal</option>,
                                 <option>maybe</option> or
                                 <option>yes</option>. If
                                 configuration and no service will be
                                 started or stopped after
                                 enabling/disabling of the unit
-                                files. If <option>minimal</option> is
-                                passed and a unit is being enabled it
-                                will also be restarted should it
-                                already be running. If a unit is being
-                                disabled it will be stopped should it
-                                be running. In either case the
-                                daemon configuration is
+                                files. If <option>reload</option> is
+                                passed the daemon configuration is
+                                reloaded but the unit otherwise not
+                                started/stopped/restarted. If
+                                <option>minimal</option> is passed and
+                                a unit is being enabled it will also
+                                be restarted should it already be
+                                running. If a unit is being disabled
+                                it will be stopped should it be
+                                running. In either case the daemon
+                                configuration is
                                 reloaded. <option>maybe</option> is
                                 similar to this, but the unit will
                                 also be started if it is being enabled
                                 <option>yes</option> starts the unit
                                 unconditionally after enabling. This
                                 setting defaults to
-                                <option>no</option>. If the mode value
-                                is omitted defaults to
+                                <option>no</option>. If
+                                <option>--realize</option> is
+                                specifieed but the mode value is
+                                omitted defaults to
                                 <option>maybe</option>. This option
                                 has no effect when
                                 <option>--global</option> or
-                                <command>test</command> is
-                                used.</para></listitem>
+                                <command>test</command> is used, or
+                                when systemd is not running or the
+                                command is executed in a
+                                <citerefentry><refentrytitle>chroot</refentrytitle><manvolnum>2</manvolnum></citerefentry>
+                                environment. This option is implied if
+                                the <command>realize</command> command
+                                is used.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>--all</option></term>
+
+                                <listitem><para>If set makes sure that
+                                all symlinks on the specified unit are
+                                removed from the configuration
+                                directory and its subdirectories, not
+                                just those specified in the
+                                <literal>[Install]</literal>
+                                section.</para></listitem>
+                        </varlistentry>
+
+                        <varlistentry>
+                                <term><option>--verbose</option></term>
+                                <term><option>-v</option></term>
+
+                                <listitem><para>Show what is done as
+                                it is done.</para></listitem>
                         </varlistentry>
+
                 </variablelist>
 
                 <para>The following commands are understood:</para>
                         <varlistentry>
                                 <term><command>enable</command></term>
 
-                                <listitem><para>Enable a unit. This
-                                will create a number of symlinks as
-                                encoded in the
+                                <listitem><para>Enable one or more
+                                units. This will create a number of
+                                symlinks as encoded in the
                                 <literal>[Install]</literal> section
                                 of a unit file.</para></listitem>
                         </varlistentry>
                         <varlistentry>
                                 <term><command>disable</command></term>
 
-                                <listitem><para>Disable a unit. This
-                                will remove a number of symlinks as
-                                encoded in the
+                                <listitem><para>Disable or more
+                                units. This will remove a number of
+                                symlinks as encoded in the
                                 <literal>[Install]</literal> section
                                 of a unit file.</para></listitem>
                         </varlistentry>
 
+                        <varlistentry>
+                                <term><command>realize</command></term>
+
+                                <listitem><para>Does not enable or
+                                disable any unit. Checks whether any
+                                of the units specified are enabled,
+                                and then starts/stops/restarts the
+                                units accordingly. This will check for
+                                the existence of a number of symlinks
+                                as encoded in the
+                                <literal>[Install]</literal> section
+                                of a unit file, and then executes the
+                                action normally specified by
+                                <option>--realize</option>. If
+                                <option>--realize</option> is not
+                                specified implies
+                                <option>maybe</option> mode. To
+                                override this mode specify
+                                <option>--realize=</option> in
+                                addition to
+                                <command>realize</command>.</para></listitem>
+                        </varlistentry>
+
                         <varlistentry>
                                 <term><command>test</command></term>
 
-                                <listitem><para>Checks whether any of
-                                the units specified are
-                                installed. This will check for the
+                                <listitem><para>Does not enable or
+                                disable any unit. Checks whether any
+                                of the units specified are
+                                enabled. This will check for the
                                 existence of a number of symlinks as
                                 encoded in the
                                 <literal>[Install]</literal> section
-                                of a unit file.</para></listitem>
+                                of a unit file, and return with an
+                                exit code of 0 if a unit is enabled, 1
+                                otherwise.</para></listitem>
                         </varlistentry>
+
                 </variablelist>
 
         </refsect1>