1<?xml version="1.0"?>
2<!--*-nxml-*-->
3<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
4  "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
5<!-- SPDX-License-Identifier: LGPL-2.1-or-later -->
6<refentry id="systemd-sysv-generator" conditional="HAVE_SYSV_COMPAT">
7
8  <refentryinfo>
9    <title>systemd-sysv-generator</title>
10    <productname>systemd</productname>
11  </refentryinfo>
12
13  <refmeta>
14    <refentrytitle>systemd-sysv-generator</refentrytitle>
15    <manvolnum>8</manvolnum>
16  </refmeta>
17
18  <refnamediv>
19    <refname>systemd-sysv-generator</refname>
20    <refpurpose>Unit generator for SysV init scripts</refpurpose>
21  </refnamediv>
22
23  <refsynopsisdiv>
24    <para><filename>/usr/lib/systemd/system-generators/systemd-sysv-generator</filename></para>
25  </refsynopsisdiv>
26
27  <refsect1>
28    <title>Description</title>
29
30    <para><filename>systemd-sysv-generator</filename> is a generator
31    that creates wrapper .service units for
32    <ulink url="https://savannah.nongnu.org/projects/sysvinit">SysV init</ulink>
33    scripts in <filename>/etc/init.d/*</filename> at boot and when
34    configuration of the system manager is reloaded. This allows
35    <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
36    to support them similarly to native units.</para>
37
38    <para><ulink url="http://refspecs.linuxbase.org/LSB_3.1.1/LSB-Core-generic/LSB-Core-generic/iniscrptact.html">LSB headers</ulink>
39    in SysV init scripts are interpreted, and the ordering specified
40    in the header is turned into dependencies between the generated
41    unit and other units. The LSB facilities
42    <literal>$remote_fs</literal>, <literal>$network</literal>,
43    <literal>$named</literal>, <literal>$portmap</literal>,
44    <literal>$time</literal> are supported and will be turned into
45    dependencies on specific native systemd targets.  See
46    <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>
47    for more details.</para>
48
49    <para>Note that compatibility is quite comprehensive but not 100%, for more details see <ulink
50    url="https://www.freedesktop.org/wiki/Software/systemd/Incompatibilities">Incompatibilities with
51    SysV</ulink>.</para>
52
53    <para>SysV runlevels have corresponding systemd targets
54    (<filename>runlevel<replaceable>X</replaceable>.target</filename>).
55    The wrapper unit that is generated will be wanted by those targets
56    which correspond to runlevels for which the script is
57    enabled.</para>
58
59    <para><command>systemd</command> does not support SysV scripts as
60    part of early boot, so all wrapper units are ordered after
61    <filename>basic.target</filename>.</para>
62
63    <para><filename>systemd-sysv-generator</filename> implements
64    <citerefentry><refentrytitle>systemd.generator</refentrytitle><manvolnum>7</manvolnum></citerefentry>.</para>
65  </refsect1>
66
67  <refsect1>
68    <title>See Also</title>
69    <para>
70      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
71      <citerefentry><refentrytitle>systemd.service</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
72      <citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>
73    </para>
74  </refsect1>
75
76</refentry>
77