79ba08 dracut-020-72.git20120710

Authored and Committed by Harald Hoyer 12 years ago
    dracut-020-72.git20120710
    
    - stop journal rather than restart
    - copy over dracut services to /run/systemd/system
    
        
0070-systemd-initrd-switch-root.service-stop-journald-rat.patch ADDED
@@ -0,0 +1,23 @@
1
+ From ad401d1eaf51677ac324523f9e11869cb29fee11 Mon Sep 17 00:00:00 2001
2
+ From: Harald Hoyer <harald@redhat.com>
3
+ Date: Tue, 10 Jul 2012 16:19:56 +0200
4
+ Subject: [PATCH] systemd/initrd-switch-root.service: stop journald, rather
5
+ than restart
6
+
7
+ ---
8
+ modules.d/98systemd/initrd-switch-root.service | 2 +-
9
+ 1 file changed, 1 insertion(+), 1 deletion(-)
10
+
11
+ diff --git a/modules.d/98systemd/initrd-switch-root.service b/modules.d/98systemd/initrd-switch-root.service
12
+ index 84fc11e..493b085 100644
13
+ --- a/modules.d/98systemd/initrd-switch-root.service
14
+ +++ b/modules.d/98systemd/initrd-switch-root.service
15
+ @@ -15,7 +15,7 @@ OnFailure=emergency.service
16
+ Type=oneshot
17
+ EnvironmentFile=/run/initramfs/switch-root.conf
18
+ ExecStart=/usr/bin/systemctl --force switch-root ${NEWROOT} ${NEWINIT}
19
+ -ExecStopPost=-/usr/bin/systemctl restart systemd-journald.service
20
+ +ExecStopPost=-/usr/bin/systemctl stop systemd-journald.service
21
+ StandardInput=null
22
+ StandardOutput=null
23
+ StandardError=null
0071-systemd-install-all-dracut-units-in-etc-and-let-the-.patch ADDED
@@ -0,0 +1,108 @@
1
+ From bef2fd9722c6f2fd972515c41963639e3bae0bc7 Mon Sep 17 00:00:00 2001
2
+ From: Harald Hoyer <harald@redhat.com>
3
+ Date: Tue, 10 Jul 2012 16:20:23 +0200
4
+ Subject: [PATCH] systemd: install all dracut units in /etc and let the
5
+ generator cp to /run
6
+
7
+ All custom units, which should appear in the system later on should be
8
+ installed in /etc/systemd. They should have a guard like:
9
+ ConditionPathExists=/etc/initrd-release
10
+
11
+ So, we can later query via systemctl:
12
+
13
+ $ systemctl status dracut-initqueue.service
14
+ dracut-initqueue.service - Dracut initqueue hook
15
+ Loaded: loaded (/run/systemd/system/dracut-initqueue.service; enabled-runtime)
16
+ Active: inactive (dead) since Tue, 10 Jul 2012 16:01:22 +0200; 1min 37s ago
17
+ start condition failed at Tue, 10 Jul 2012 16:01:23 +0200; 1min 36s ago
18
+ Main PID: 173 (code=exited, status=0/SUCCESS)
19
+ CGroup: name=systemd:/system/dracut-initqueue.service
20
+
21
+ Jul 10 16:01:22 lenovo dracut-initqueue[173]: Checking, if btrfs device complete
22
+ Jul 10 16:01:22 lenovo dracut-initqueue[173]: Remounting /dev/disk/by-uuid/ade13292-d23f-45be-b732-fa9a391a56b0 with -o compress=lzo,ssd,rw
23
+ Jul 10 16:01:22 lenovo dracut-initqueue[173]: Mounted root filesystem /dev/sda3
24
+ ---
25
+ modules.d/98systemd/module-setup.sh | 41 ++++++++++++++++-----------------
26
+ modules.d/98systemd/service-to-run.sh | 6 ++---
27
+ 2 files changed, 22 insertions(+), 25 deletions(-)
28
+
29
+ diff --git a/modules.d/98systemd/module-setup.sh b/modules.d/98systemd/module-setup.sh
30
+ index f9bb799..5cb236c 100755
31
+ --- a/modules.d/98systemd/module-setup.sh
32
+ +++ b/modules.d/98systemd/module-setup.sh
33
+ @@ -112,42 +112,41 @@ install() {
34
+
35
+ ln -fs $systemdutildir/systemd "$initdir/init"
36
+
37
+ - rm -f "${initdir}${systemdsystemunitdir}/emergency.service"
38
+ inst_simple "$moddir/emergency.service" ${systemdsystemunitdir}/emergency.service
39
+ -
40
+ - rm -f "${initdir}${systemdsystemunitdir}/rescue.service"
41
+ inst_simple "$moddir/rescue.service" ${systemdsystemunitdir}/rescue.service
42
+ + ln -fs "basic.target" "${initdir}${systemdsystemunitdir}/default.target"
43
+ +
44
+ + dracutsystemunitdir="/etc/systemd/system"
45
+
46
+ - inst_simple "$moddir/initrd-switch-root.target" ${systemdsystemunitdir}/initrd-switch-root.target
47
+ - inst_simple "$moddir/initrd-switch-root.service" ${systemdsystemunitdir}/initrd-switch-root.service
48
+ - ln -fs basic.target "${initdir}${systemdsystemunitdir}/default.target"
49
+ + mkdir -p "${initdir}${dracutsystemunitdir}/basic.target.wants"
50
+
51
+ - mkdir -p "${initdir}${systemdsystemunitdir}/basic.target.wants"
52
+ + inst_simple "$moddir/initrd-switch-root.target" ${dracutsystemunitdir}/initrd-switch-root.target
53
+ + inst_simple "$moddir/initrd-switch-root.service" ${dracutsystemunitdir}/initrd-switch-root.service
54
+
55
+ inst_script "$moddir/dracut-cmdline.sh" /bin/dracut-cmdline
56
+ - inst_simple "$moddir/dracut-cmdline.service" ${systemdsystemunitdir}/dracut-cmdline.service
57
+ - ln -fs ../dracut-cmdline.service "${initdir}${systemdsystemunitdir}/basic.target.wants/dracut-cmdline.service"
58
+ + inst_simple "$moddir/dracut-cmdline.service" ${dracutsystemunitdir}/dracut-cmdline.service
59
+ + ln -fs ../dracut-cmdline.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-cmdline.service"
60
+
61
+ inst_script "$moddir/dracut-pre-udev.sh" /bin/dracut-pre-udev
62
+ - inst_simple "$moddir/dracut-pre-udev.service" ${systemdsystemunitdir}/dracut-pre-udev.service
63
+ - ln -fs ../dracut-pre-udev.service "${initdir}${systemdsystemunitdir}/basic.target.wants/dracut-pre-udev.service"
64
+ + inst_simple "$moddir/dracut-pre-udev.service" ${dracutsystemunitdir}/dracut-pre-udev.service
65
+ + ln -fs ../dracut-pre-udev.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-pre-udev.service"
66
+
67
+ inst_script "$moddir/dracut-pre-trigger.sh" /bin/dracut-pre-trigger
68
+ - inst_simple "$moddir/dracut-pre-trigger.service" ${systemdsystemunitdir}/dracut-pre-trigger.service
69
+ - ln -fs ../dracut-pre-trigger.service "${initdir}${systemdsystemunitdir}/basic.target.wants/dracut-pre-trigger.service"
70
+ + inst_simple "$moddir/dracut-pre-trigger.service" ${dracutsystemunitdir}/dracut-pre-trigger.service
71
+ + ln -fs ../dracut-pre-trigger.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-pre-trigger.service"
72
+
73
+ inst_script "$moddir/dracut-initqueue.sh" /bin/dracut-initqueue
74
+ - inst_simple "$moddir/dracut-initqueue.service" ${systemdsystemunitdir}/dracut-initqueue.service
75
+ - ln -fs ../dracut-initqueue.service "${initdir}${systemdsystemunitdir}/basic.target.wants/dracut-initqueue.service"
76
+ + inst_simple "$moddir/dracut-initqueue.service" ${dracutsystemunitdir}/dracut-initqueue.service
77
+ + ln -fs ../dracut-initqueue.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-initqueue.service"
78
+
79
+ inst_script "$moddir/dracut-pre-pivot.sh" /bin/dracut-pre-pivot
80
+ - inst_simple "$moddir/dracut-pre-pivot.service" ${systemdsystemunitdir}/dracut-pre-pivot.service
81
+ - ln -fs ../dracut-pre-pivot.service "${initdir}${systemdsystemunitdir}/basic.target.wants/dracut-pre-pivot.service"
82
+ + inst_simple "$moddir/dracut-pre-pivot.service" ${dracutsystemunitdir}/dracut-pre-pivot.service
83
+ + ln -fs ../dracut-pre-pivot.service "${initdir}${dracutsystemunitdir}/basic.target.wants/dracut-pre-pivot.service"
84
+
85
+ - inst_simple "$moddir/udevadm-cleanup-db.service" ${systemdsystemunitdir}/udevadm-cleanup-db.service
86
+ - mkdir -p "${initdir}${systemdsystemunitdir}/initrd-switch-root.target.requires"
87
+ - ln -fs ../udevadm-cleanup-db.service "${initdir}${systemdsystemunitdir}/initrd-switch-root.target.requires/udevadm-cleanup-db.service"
88
+ + inst_simple "$moddir/udevadm-cleanup-db.service" ${dracutsystemunitdir}/udevadm-cleanup-db.service
89
+ + mkdir -p "${initdir}${dracutsystemunitdir}/initrd-switch-root.target.requires"
90
+ + ln -fs ../udevadm-cleanup-db.service "${initdir}${dracutsystemunitdir}/initrd-switch-root.target.requires/udevadm-cleanup-db.service"
91
+
92
+ - inst_script "$moddir/service-to-run.sh" $systemdutildir/system-generators/service-to-run
93
+ + inst_script "$moddir/service-to-run.sh" "${systemdutildir}/system-generators/service-to-run"
94
+ }
95
+
96
+ diff --git a/modules.d/98systemd/service-to-run.sh b/modules.d/98systemd/service-to-run.sh
97
+ index 3e46ba4..797958e 100755
98
+ --- a/modules.d/98systemd/service-to-run.sh
99
+ +++ b/modules.d/98systemd/service-to-run.sh
100
+ @@ -1,6 +1,4 @@
101
+ #!/bin/sh
102
+ -
103
+ -cp -a /lib/systemd/system/dracut*.service /run/systemd/system/
104
+ -cp -a /lib/systemd/system/initrd-* /run/systemd/system/
105
+ -cp -a /lib/systemd/system/udevadm*.service /run/systemd/system/
106
+ +mkdir -p /run/systemd/system/
107
+ +cp -a -t /run/systemd/system/ /etc/systemd/system/*
108
+
file modified
+7 -1
dracut.spec CHANGED
@@ -10,7 +10,7 @@
10
10
11
11
Name: dracut
12
12
Version: 020
13
- Release: 70.git20120710%{?dist}
13
+ Release: 72.git20120710%{?dist}
14
14
15
15
Summary: Initramfs generator using udev
16
16
%if 0%{?fedora} || 0%{?rhel}
@@ -98,6 +98,8 @@ Patch66: 0066-plymouth-add-plymouth-wait-quit.service-to-initrd.patch
98
98
Patch67: 0067-TEST-01-BASIC-turn-on-systemd-debugging.patch
99
99
Patch68: 0068-TEST-01-BASIC-enable-selinux.patch
100
100
Patch69: 0069-install-dracut-install.c-redirect-stderr-to-stdout-a.patch
101
+ Patch70: 0070-systemd-initrd-switch-root.service-stop-journald-rat.patch
102
+ Patch71: 0071-systemd-install-all-dracut-units-in-etc-and-let-the-.patch
101
103
102
104
103
105
BuildRequires: dash bash git
@@ -424,6 +426,10 @@ rm -rf $RPM_BUILD_ROOT
424
426
%dir /var/lib/dracut/overlay
425
427
426
428
%changelog
429
+ * Tue Jul 10 2012 Harald Hoyer <harald@redhat.com> 020-72.git20120710
430
+ - stop journal rather than restart
431
+ - copy over dracut services to /run/systemd/system
432
+
427
433
* Tue Jul 10 2012 Harald Hoyer <harald@redhat.com> 020-70.git20120710
428
434
- more systemd unit fixups
429
435
- restart systemd-journald in switch-root post