units: introduce and explain sysinit.target

This commit is contained in:
Lennart Poettering 2010-06-04 18:43:40 +02:00
parent 2f630e5ffd
commit f92a18f527
14 changed files with 62 additions and 28 deletions

View File

@ -87,6 +87,7 @@ interface_DATA = \
dist_systemunit_DATA = \
units/emergency.service \
units/basic.target \
units/getty.target \
units/halt.target \
units/local-fs.target \
@ -119,7 +120,7 @@ dist_systemunit_DATA = \
units/var-run.mount
systemunit_DATA = \
units/basic.target \
units/sysinit.target \
units/getty@.service \
units/graphical.target \
units/multi-user.target \
@ -135,7 +136,7 @@ sessionunit_DATA = \
units/session/exit.service
EXTRA_DIST = \
units/basic.target.m4 \
units/sysinit.target.m4 \
units/getty@.service.m4 \
units/graphical.target.m4 \
units/multi-user.target.m4 \
@ -398,7 +399,7 @@ CLEANFILES = \
units/systemd-initctl.service \
units/systemd-logger.service \
units/syslog.target \
units/basic.target \
units/sysinit.target \
units/getty@.service \
units/graphical.target \
units/multi-user.target \
@ -470,7 +471,7 @@ install-data-hook:
$(DESTDIR)$(systemunitdir) \
$(DESTDIR)$(sessionunitdir) \
$(DESTDIR)$(systemunitdir)/sockets.target.wants \
$(DESTDIR)$(systemunitdir)/basic.target.wants \
$(DESTDIR)$(systemunitdir)/sysinit.target.wants \
$(DESTDIR)$(pkgsysconfdir)/system \
$(DESTDIR)$(pkgsysconfdir)/system/getty.target.wants \
$(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants \
@ -516,9 +517,10 @@ install-data-hook:
$(LN_S) $(systemunitdir)/getty@.service getty@tty5.service && \
$(LN_S) $(systemunitdir)/getty@.service getty@tty6.service )
( cd $(DESTDIR)$(pkgsysconfdir)/system/multi-user.target.wants && \
rm -f getty.target && \
$(LN_S) $(systemunitdir)/getty.target getty.target )
( cd $(DESTDIR)$(systemunitdir)/basic.target.wants && \
rm -f getty.target remote-fs.target && \
$(LN_S) $(systemunitdir)/getty.target getty.target && \
$(LN_S) $(systemunitdir)/remote-fs.target remote-fs.target )
( cd $(DESTDIR)$(systemunitdir)/sysinit.target.wants && \
rm -f dev-hugepages.automount \
dev-mqueue.automount \
proc-sys-fs-binfmt_misc.automount \

View File

@ -80,6 +80,7 @@
<filename>sigpwr.target</filename>,
<filename>sockets.target</filename>,
<filename>swap.target</filename>,
<filename>sysinit.target</filename>,
<filename>syslog.target</filename>,
<filename>@SPECIAL_SYSLOG_SERVICE@</filename>,
<filename>systemd-initctl.service</filename>,
@ -111,16 +112,15 @@
target unit to all SysV
service units configured for
runlevel 1 to 5.</para>
<para>systemd automatically
adds dependencies of the types
Wants and After for all
SysV service units configured
for runlevels that are not 0
to 6 to this target unit.
This covers the special
boot-up runlevels some
distributions have, such as S
or b.</para>
<para>Usually this should pull
in all sockets, mount points,
swap devices and other basic
initialization necessary for
the general purpose
daemons. Most normal daemon
should have dependencies of
type After and Requires on
this unit.</para>
</listitem>
</varlistentry>
<varlistentry>
@ -586,6 +586,23 @@
service).</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>sysinit.target</filename></term>
<listitem>
<para>A special target unit
covering early boot-up scripts.</para>
<para>systemd automatically
adds dependencies of the types
Wants and After for all
SysV service units configured
for runlevels that are not 0
to 6 to this target unit.
This covers the special
boot-up runlevels some
distributions have, such as S
or b.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><filename>@SPECIAL_SYSLOG_SERVICE@</filename></term>
<listitem>

View File

@ -108,6 +108,7 @@ struct Watch {
#define SPECIAL_DISPLAY_MANAGER_SERVICE "display-manager.service" /* Debian's $x-display-manager */
#define SPECIAL_MAIL_TRANSFER_AGENT_TARGET "mail-transfer-agent.target" /* Debian's $mail-{transport|transfer-agent */
#define SPECIAL_BASIC_TARGET "basic.target"
#define SPECIAL_SYSINIT_TARGET "sysinit.target"
#define SPECIAL_RESCUE_TARGET "rescue.target"
#define SPECIAL_EXIT_SERVICE "exit.service"

View File

@ -58,10 +58,10 @@ static const struct {
{ "rc6.d", SPECIAL_RUNLEVEL6_TARGET, RUNLEVEL_DOWN },
/* SUSE style boot.d */
{ "boot.d", SPECIAL_BASIC_TARGET, RUNLEVEL_BASIC },
{ "boot.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_BASIC },
/* Debian style rcS.d */
{ "rcS.d", SPECIAL_BASIC_TARGET, RUNLEVEL_BASIC },
{ "rcS.d", SPECIAL_SYSINIT_TARGET, RUNLEVEL_BASIC },
};
#define RUNLEVELS_UP "12345"

2
units/.gitignore vendored
View File

@ -1,7 +1,7 @@
systemd-initctl.service
systemd-logger.service
syslog.target
basic.target
sysinit.target
graphical.target
multi-user.target
getty@.service

14
units/basic.target Normal file
View File

@ -0,0 +1,14 @@
# This file is part of systemd.
#
# systemd is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# See systemd.special(7) for details
[Unit]
Description=Basic System
Requires=sysinit.target local-fs.target swap.target sockets.target
After=sysinit.target local-fs.target swap.target sockets.target
OnlyByDependency=yes

View File

@ -7,7 +7,7 @@
[Unit]
Description=Huge Pages File System Automount Point
Before=basic.target
Before=sysinit.target
[Automount]
Where=/dev/hugepages

View File

@ -7,7 +7,7 @@
[Unit]
Description=POSIX Message Queue File System Automount Point
Before=basic.target
Before=sysinit.target
[Automount]
Where=/dev/mqueue

View File

@ -7,7 +7,7 @@
[Unit]
Description=Arbitrary Executable File Formats File System Automount Point
Before=basic.target
Before=sysinit.target
[Automount]
Where=/proc/sys/fs/binfmt_misc

View File

@ -7,7 +7,7 @@
[Unit]
Description=Debug File System Automount Point
Before=basic.target
Before=sysinit.target
[Automount]
Where=/sys/kernel/debug

View File

@ -7,7 +7,7 @@
[Unit]
Description=Security File System Automount Point
Before=basic.target
Before=sysinit.target
[Automount]
Where=/sys/kernel/security

View File

@ -8,9 +8,7 @@
# See systemd.special(7) for details
[Unit]
Description=Basic System
Requires=local-fs.target swap.target sockets.target
After=local-fs.target swap.target sockets.target
Description=Systemd Initialization
Conflicts=emergency.service
OnlyByDependency=yes
m4_dnl

View File

@ -9,6 +9,7 @@
[Unit]
Description=systemd /dev/initctl Compatibility Socket
After=sysinit.target
[Socket]
ListenFIFO=/dev/initctl

View File

@ -9,6 +9,7 @@
[Unit]
Description=systemd Logging Socket
After=sysinit.target
[Socket]
ListenStream=@/org/freedesktop/systemd1/logger