64 lines
2.5 KiB
Diff
64 lines
2.5 KiB
Diff
|
From 78a78e4239e16a033134dde71830d5bb977f6814 Mon Sep 17 00:00:00 2001
|
||
|
From: Hannes Reinecke <hare@suse.de>
|
||
|
Date: Thu, 20 Nov 2014 15:56:45 +0100
|
||
|
Subject: [PATCH] 90multipath: install dracut-specific service file
|
||
|
|
||
|
The multipathd package might install a service and a socket
|
||
|
file. Using the original service file from the installed
|
||
|
system without the socket file triggers a bug in systemd,
|
||
|
causing systemd to crash.
|
||
|
|
||
|
As we don't actually need to socket file in the initrd we
|
||
|
should be installing our own service file which does not
|
||
|
reference the socket file at all.
|
||
|
|
||
|
References: bnc#871610
|
||
|
|
||
|
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||
|
Signed-off-by: Thomas Renninger <trenn@suse.de>
|
||
|
---
|
||
|
modules.d/90multipath/module-setup.sh | 7 +++----
|
||
|
modules.d/90multipath/multipathd.service | 15 +++++++++++++++
|
||
|
2 files changed, 18 insertions(+), 4 deletions(-)
|
||
|
create mode 100644 modules.d/90multipath/multipathd.service
|
||
|
|
||
|
diff --git a/modules.d/90multipath/module-setup.sh b/modules.d/90multipath/module-setup.sh
|
||
|
index 6f4728a..a8700f4 100755
|
||
|
--- a/modules.d/90multipath/module-setup.sh
|
||
|
+++ b/modules.d/90multipath/module-setup.sh
|
||
|
@@ -104,10 +104,9 @@ install() {
|
||
|
fi
|
||
|
|
||
|
if dracut_module_included "systemd"; then
|
||
|
- inst_multiple \
|
||
|
- $systemdsystemunitdir/multipathd.service
|
||
|
- mkdir -p "${initdir}${systemdsystemconfdir}/sysinit.target.wants"
|
||
|
- ln -rfs "${initdir}${systemdsystemunitdir}/multipathd.service" "${initdir}${systemdsystemconfdir}/sysinit.target.wants/multipathd.service"
|
||
|
+ inst_simple "${moddir}/multipathd.service" "${systemdsystemunitdir}/multipathd.service"
|
||
|
+ mkdir -p "${initdir}${systemdsystemunitdir}/sysinit.target.wants"
|
||
|
+ ln -rfs "${initdir}${systemdsystemunitdir}/multipathd.service" "${initdir}${systemdsystemunitdir}/sysinit.target.wants/multipathd.service"
|
||
|
else
|
||
|
inst_hook pre-trigger 02 "$moddir/multipathd.sh"
|
||
|
inst_hook cleanup 02 "$moddir/multipathd-stop.sh"
|
||
|
diff --git a/modules.d/90multipath/multipathd.service b/modules.d/90multipath/multipathd.service
|
||
|
new file mode 100644
|
||
|
index 0000000..44a7b80
|
||
|
--- /dev/null
|
||
|
+++ b/modules.d/90multipath/multipathd.service
|
||
|
@@ -0,0 +1,15 @@
|
||
|
+[Unit]
|
||
|
+Description=Device-Mapper Multipath Device Controller
|
||
|
+Before=iscsi.service iscsid.service lvm2-activation-early.service
|
||
|
+DefaultDependencies=no
|
||
|
+Conflicts=shutdown.target
|
||
|
+
|
||
|
+[Service]
|
||
|
+Type=simple
|
||
|
+ExecStartPre=/sbin/modprobe dm-multipath
|
||
|
+ExecStart=/sbin/multipathd -s -d
|
||
|
+ExecReload=/sbin/multipathd reconfigure
|
||
|
+ExecStop=/sbin/multipathd shutdown
|
||
|
+
|
||
|
+[Install]
|
||
|
+WantedBy=sysinit.target
|