[systemd-commits] Makefile.am man/systemd.special.xml.in src/manager.h src/service.c units/basic.target units/basic.target.m4 units/dev-hugepages.automount units/dev-mqueue.automount units/.gitignore units/proc-sys-fs-binfmt_misc.automount units/sysinit.target.m4 units/sys-kernel-debug.automount units/sys-kernel-security.automount units/systemd-initctl.socket units/systemd-logger.socket

Lennart Poettering lennart at kemper.freedesktop.org
Fri Jun 4 09:43:48 PDT 2010


 Makefile.am                             |   16 +++++++------
 man/systemd.special.xml.in              |   37 +++++++++++++++++++++++---------
 src/manager.h                           |    1 
 src/service.c                           |    4 +--
 units/.gitignore                        |    2 -
 units/basic.target                      |   14 ++++++++++++
 units/basic.target.m4                   |   21 ------------------
 units/dev-hugepages.automount           |    2 -
 units/dev-mqueue.automount              |    2 -
 units/proc-sys-fs-binfmt_misc.automount |    2 -
 units/sys-kernel-debug.automount        |    2 -
 units/sys-kernel-security.automount     |    2 -
 units/sysinit.target.m4                 |   19 ++++++++++++++++
 units/systemd-initctl.socket            |    1 
 units/systemd-logger.socket             |    1 
 15 files changed, 80 insertions(+), 46 deletions(-)

New commits:
commit f92a18f5274ad506aed600b2ed8f4a560c510807
Author: Lennart Poettering <lennart at poettering.net>
Date:   Fri Jun 4 18:43:40 2010 +0200

    units: introduce and explain sysinit.target

diff --git a/Makefile.am b/Makefile.am
index b255b7a..28e52fe 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -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 at .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 at .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 at .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 at .service getty at tty5.service && \
 		$(LN_S) $(systemunitdir)/getty at .service getty at 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 \
diff --git a/man/systemd.special.xml.in b/man/systemd.special.xml.in
index 1d9c132..a2e1bb2 100644
--- a/man/systemd.special.xml.in
+++ b/man/systemd.special.xml.in
@@ -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>
@@ -587,6 +587,23 @@
                                 </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>
                                         <para>A special unit for the
diff --git a/src/manager.h b/src/manager.h
index 210e660..a2084e9 100644
--- a/src/manager.h
+++ b/src/manager.h
@@ -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"
 
diff --git a/src/service.c b/src/service.c
index 2ce95f5..c276a9a 100644
--- a/src/service.c
+++ b/src/service.c
@@ -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"
diff --git a/units/.gitignore b/units/.gitignore
index 7e61543..ea85dc0 100644
--- a/units/.gitignore
+++ b/units/.gitignore
@@ -1,7 +1,7 @@
 systemd-initctl.service
 systemd-logger.service
 syslog.target
-basic.target
+sysinit.target
 graphical.target
 multi-user.target
 getty at .service
diff --git a/units/basic.target b/units/basic.target
new file mode 100644
index 0000000..aa94b94
--- /dev/null
+++ b/units/basic.target
@@ -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
diff --git a/units/basic.target.m4 b/units/basic.target.m4
deleted file mode 100644
index 537ad8d..0000000
--- a/units/basic.target.m4
+++ /dev/null
@@ -1,21 +0,0 @@
-#  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=local-fs.target swap.target sockets.target
-After=local-fs.target swap.target sockets.target
-Conflicts=emergency.service
-OnlyByDependency=yes
-m4_dnl
-m4_ifdef(`TARGET_FEDORA',
-m4_dnl Hook in Fedora's /etc/rc.d/rc.sysinit
-Requires=sysinit.service
-After=sysinit.service
-)m4_dnl
diff --git a/units/dev-hugepages.automount b/units/dev-hugepages.automount
index 9fef9ee..4e7f8ff 100644
--- a/units/dev-hugepages.automount
+++ b/units/dev-hugepages.automount
@@ -7,7 +7,7 @@
 
 [Unit]
 Description=Huge Pages File System Automount Point
-Before=basic.target
+Before=sysinit.target
 
 [Automount]
 Where=/dev/hugepages
diff --git a/units/dev-mqueue.automount b/units/dev-mqueue.automount
index a24ffe6..4df53dc 100644
--- a/units/dev-mqueue.automount
+++ b/units/dev-mqueue.automount
@@ -7,7 +7,7 @@
 
 [Unit]
 Description=POSIX Message Queue File System Automount Point
-Before=basic.target
+Before=sysinit.target
 
 [Automount]
 Where=/dev/mqueue
diff --git a/units/proc-sys-fs-binfmt_misc.automount b/units/proc-sys-fs-binfmt_misc.automount
index 4e9b23b..82369c5 100644
--- a/units/proc-sys-fs-binfmt_misc.automount
+++ b/units/proc-sys-fs-binfmt_misc.automount
@@ -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
diff --git a/units/sys-kernel-debug.automount b/units/sys-kernel-debug.automount
index 3d5b52d..4da3f20 100644
--- a/units/sys-kernel-debug.automount
+++ b/units/sys-kernel-debug.automount
@@ -7,7 +7,7 @@
 
 [Unit]
 Description=Debug File System Automount Point
-Before=basic.target
+Before=sysinit.target
 
 [Automount]
 Where=/sys/kernel/debug
diff --git a/units/sys-kernel-security.automount b/units/sys-kernel-security.automount
index 061a5a2..5d8356e 100644
--- a/units/sys-kernel-security.automount
+++ b/units/sys-kernel-security.automount
@@ -7,7 +7,7 @@
 
 [Unit]
 Description=Security File System Automount Point
-Before=basic.target
+Before=sysinit.target
 
 [Automount]
 Where=/sys/kernel/security
diff --git a/units/sysinit.target.m4 b/units/sysinit.target.m4
new file mode 100644
index 0000000..68c661e
--- /dev/null
+++ b/units/sysinit.target.m4
@@ -0,0 +1,19 @@
+#  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=Systemd Initialization
+Conflicts=emergency.service
+OnlyByDependency=yes
+m4_dnl
+m4_ifdef(`TARGET_FEDORA',
+m4_dnl Hook in Fedora's /etc/rc.d/rc.sysinit
+Requires=sysinit.service
+After=sysinit.service
+)m4_dnl
diff --git a/units/systemd-initctl.socket b/units/systemd-initctl.socket
index fdb95de..af5cca2 100644
--- a/units/systemd-initctl.socket
+++ b/units/systemd-initctl.socket
@@ -9,6 +9,7 @@
 
 [Unit]
 Description=systemd /dev/initctl Compatibility Socket
+After=sysinit.target
 
 [Socket]
 ListenFIFO=/dev/initctl
diff --git a/units/systemd-logger.socket b/units/systemd-logger.socket
index f62b582..7195a9e 100644
--- a/units/systemd-logger.socket
+++ b/units/systemd-logger.socket
@@ -9,6 +9,7 @@
 
 [Unit]
 Description=systemd Logging Socket
+After=sysinit.target
 
 [Socket]
 ListenStream=@/org/freedesktop/systemd1/logger


More information about the systemd-commits mailing list