|
|
b7a469 |
From 0a6af5e7283ed2733753998043adac090ef12dd0 Mon Sep 17 00:00:00 2001
|
|
|
587c20 |
From: rpm-build <rpm-build>
|
|
|
587c20 |
Date: Tue, 4 Jun 2019 13:23:32 -0700
|
|
|
b7a469 |
Subject: [PATCH] unit file tweaks
|
|
|
587c20 |
|
|
|
587c20 |
---
|
|
|
b7a469 |
etc/systemd/iscsi-mark-root-nodes | 34 ++++++++++++++++++++++++++++++
|
|
|
b7a469 |
etc/systemd/iscsi-onboot.service | 15 +++++++++++++
|
|
|
b7a469 |
etc/systemd/iscsi-shutdown.service | 15 +++++++++++++
|
|
|
b7a469 |
etc/systemd/iscsi.service | 16 +++++++-------
|
|
|
b7a469 |
etc/systemd/iscsid.service | 3 +--
|
|
|
b7a469 |
etc/systemd/iscsiuio.service | 4 +---
|
|
|
b7a469 |
6 files changed, 74 insertions(+), 13 deletions(-)
|
|
|
587c20 |
create mode 100755 etc/systemd/iscsi-mark-root-nodes
|
|
|
b7a469 |
create mode 100644 etc/systemd/iscsi-onboot.service
|
|
|
587c20 |
create mode 100644 etc/systemd/iscsi-shutdown.service
|
|
|
587c20 |
|
|
|
587c20 |
diff --git a/etc/systemd/iscsi-mark-root-nodes b/etc/systemd/iscsi-mark-root-nodes
|
|
|
587c20 |
new file mode 100755
|
|
|
b7a469 |
index 0000000..9d48805
|
|
|
587c20 |
--- /dev/null
|
|
|
587c20 |
+++ b/etc/systemd/iscsi-mark-root-nodes
|
|
|
b7a469 |
@@ -0,0 +1,34 @@
|
|
|
587c20 |
+#!/bin/bash
|
|
|
587c20 |
+
|
|
|
587c20 |
+ISCSIADM=/usr/sbin/iscsiadm
|
|
|
587c20 |
+start_iscsid=0
|
|
|
587c20 |
+start_iscsiuio=0
|
|
|
587c20 |
+
|
|
|
587c20 |
+while read t num p target flash; do
|
|
|
587c20 |
+ # strip tag number from portal, keep "ip:port"
|
|
|
587c20 |
+ portal=${p%,*}
|
|
|
587c20 |
+ transport=${t%:}
|
|
|
587c20 |
+
|
|
|
b7a469 |
+ # use session number to find the iface name in use
|
|
|
b7a469 |
+ num=${num#[}; num=${num%]}
|
|
|
b7a469 |
+ iface=$(iscsiadm -m session -r $num | grep iface.iscsi_ifacename | cut -d= -f2)
|
|
|
b7a469 |
+
|
|
|
b7a469 |
+ $ISCSIADM -m node -p $portal -T $target -I $iface -o update -n node.startup -v onboot
|
|
|
587c20 |
+
|
|
|
587c20 |
+ start_iscsid=1
|
|
|
587c20 |
+
|
|
|
587c20 |
+ if [ "$transport" = bnx2i ] || [ "$transport" = qedi ]; then
|
|
|
587c20 |
+ start_iscsiuio=1
|
|
|
587c20 |
+ fi
|
|
|
587c20 |
+done < <( $ISCSIADM -m session )
|
|
|
587c20 |
+
|
|
|
587c20 |
+# force iscsid and iscsiuio to start if needed for
|
|
|
587c20 |
+# recovering sessions created in the initrd
|
|
|
587c20 |
+
|
|
|
587c20 |
+if [ "$start_iscsid" -eq 1 ]; then
|
|
|
587c20 |
+ systemctl --no-block start iscsid.service
|
|
|
587c20 |
+fi
|
|
|
587c20 |
+if [ "$start_iscsiuio" -eq 1 ]; then
|
|
|
587c20 |
+ systemctl --no-block start iscsiuio.service
|
|
|
587c20 |
+fi
|
|
|
587c20 |
+
|
|
|
b7a469 |
diff --git a/etc/systemd/iscsi-onboot.service b/etc/systemd/iscsi-onboot.service
|
|
|
b7a469 |
new file mode 100644
|
|
|
b7a469 |
index 0000000..42ced68
|
|
|
b7a469 |
--- /dev/null
|
|
|
b7a469 |
+++ b/etc/systemd/iscsi-onboot.service
|
|
|
b7a469 |
@@ -0,0 +1,15 @@
|
|
|
b7a469 |
+[Unit]
|
|
|
b7a469 |
+Description=Special handling of early boot iSCSI sessions
|
|
|
b7a469 |
+Documentation=man:iscsiadm(8) man:iscsid(8)
|
|
|
b7a469 |
+DefaultDependencies=no
|
|
|
b7a469 |
+RefuseManualStart=true
|
|
|
b7a469 |
+Before=iscsi.service
|
|
|
b7a469 |
+After=systemd-remount-fs.service
|
|
|
b7a469 |
+ConditionDirectoryNotEmpty=/sys/class/iscsi_session
|
|
|
b7a469 |
+
|
|
|
b7a469 |
+[Service]
|
|
|
b7a469 |
+Type=oneshot
|
|
|
b7a469 |
+ExecStart=-/usr/libexec/iscsi-mark-root-nodes
|
|
|
b7a469 |
+
|
|
|
b7a469 |
+[Install]
|
|
|
b7a469 |
+WantedBy=sysinit.target
|
|
|
587c20 |
diff --git a/etc/systemd/iscsi-shutdown.service b/etc/systemd/iscsi-shutdown.service
|
|
|
587c20 |
new file mode 100644
|
|
|
b7a469 |
index 0000000..caee933
|
|
|
587c20 |
--- /dev/null
|
|
|
587c20 |
+++ b/etc/systemd/iscsi-shutdown.service
|
|
|
b7a469 |
@@ -0,0 +1,15 @@
|
|
|
587c20 |
+[Unit]
|
|
|
587c20 |
+Description=Logout off all iSCSI sessions on shutdown
|
|
|
587c20 |
+Documentation=man:iscsid(8) man:iscsiadm(8)
|
|
|
587c20 |
+DefaultDependencies=no
|
|
|
587c20 |
+Conflicts=shutdown.target
|
|
|
587c20 |
+After=systemd-remount-fs.service network.target iscsid.service iscsiuio.service
|
|
|
587c20 |
+Before=remote-fs-pre.target
|
|
|
587c20 |
+Wants=remote-fs-pre.target
|
|
|
587c20 |
+RefuseManualStop=yes
|
|
|
587c20 |
+
|
|
|
587c20 |
+[Service]
|
|
|
587c20 |
+Type=oneshot
|
|
|
587c20 |
+RemainAfterExit=true
|
|
|
b7a469 |
+ExecStart=-/usr/bin/true
|
|
|
587c20 |
+ExecStop=-/usr/sbin/iscsiadm -m node --logoutall=all
|
|
|
587c20 |
diff --git a/etc/systemd/iscsi.service b/etc/systemd/iscsi.service
|
|
|
b7a469 |
index 2f2bf81..175cb2c 100644
|
|
|
587c20 |
--- a/etc/systemd/iscsi.service
|
|
|
587c20 |
+++ b/etc/systemd/iscsi.service
|
|
|
b7a469 |
@@ -1,18 +1,18 @@
|
|
|
587c20 |
[Unit]
|
|
|
587c20 |
Description=Login and scanning of iSCSI devices
|
|
|
b7a469 |
Documentation=man:iscsiadm(8) man:iscsid(8)
|
|
|
587c20 |
-Before=remote-fs.target
|
|
|
b7a469 |
-After=network.target network-online.target
|
|
|
b7a469 |
-After=iscsid.service iscsi-init.service
|
|
|
b7a469 |
-Requires=iscsid.socket iscsi-init.service
|
|
|
587c20 |
+DefaultDependencies=no
|
|
|
587c20 |
+Before=remote-fs-pre.target
|
|
|
b7a469 |
+After=network.target network-online.target iscsid.service iscsiuio.service systemd-remount-fs.service
|
|
|
587c20 |
+Wants=remote-fs-pre.target iscsi-shutdown.service
|
|
|
b7a469 |
+ConditionDirectoryNotEmpty=/var/lib/iscsi/nodes
|
|
|
587c20 |
|
|
|
587c20 |
[Service]
|
|
|
587c20 |
Type=oneshot
|
|
|
587c20 |
-ExecStart=/sbin/iscsiadm -m node --loginall=automatic
|
|
|
587c20 |
-ExecStop=/sbin/iscsiadm -m node --logoutall=automatic
|
|
|
587c20 |
-ExecStop=/sbin/iscsiadm -m node --logoutall=manual
|
|
|
b7a469 |
-SuccessExitStatus=21 15
|
|
|
587c20 |
RemainAfterExit=true
|
|
|
587c20 |
+ExecStart=-/usr/sbin/iscsiadm -m node --loginall=automatic
|
|
|
587c20 |
+ExecReload=-/usr/sbin/iscsiadm -m node --loginall=automatic
|
|
|
587c20 |
+SuccessExitStatus=21
|
|
|
587c20 |
|
|
|
587c20 |
[Install]
|
|
|
b7a469 |
WantedBy=remote-fs.target
|
|
|
587c20 |
diff --git a/etc/systemd/iscsid.service b/etc/systemd/iscsid.service
|
|
|
b7a469 |
index 648ceea..28402fb 100644
|
|
|
587c20 |
--- a/etc/systemd/iscsid.service
|
|
|
587c20 |
+++ b/etc/systemd/iscsid.service
|
|
|
b7a469 |
@@ -4,12 +4,11 @@ Documentation=man:iscsid(8) man:iscsiuio(8) man:iscsiadm(8)
|
|
|
587c20 |
DefaultDependencies=no
|
|
|
587c20 |
After=network.target iscsiuio.service
|
|
|
587c20 |
Before=remote-fs-pre.target
|
|
|
b7a469 |
-Wants=remote-fs-pre.target
|
|
|
587c20 |
|
|
|
587c20 |
[Service]
|
|
|
587c20 |
Type=notify
|
|
|
587c20 |
NotifyAccess=main
|
|
|
587c20 |
-ExecStart=/sbin/iscsid -f
|
|
|
587c20 |
+ExecStart=/usr/sbin/iscsid -f
|
|
|
587c20 |
KillMode=mixed
|
|
|
587c20 |
Restart=on-failure
|
|
|
587c20 |
|
|
|
587c20 |
diff --git a/etc/systemd/iscsiuio.service b/etc/systemd/iscsiuio.service
|
|
|
b7a469 |
index 923e019..fc0be93 100644
|
|
|
587c20 |
--- a/etc/systemd/iscsiuio.service
|
|
|
587c20 |
+++ b/etc/systemd/iscsiuio.service
|
|
|
b7a469 |
@@ -2,17 +2,15 @@
|
|
|
b7a469 |
Description=iSCSI UserSpace I/O driver
|
|
|
b7a469 |
Documentation=man:iscsiuio(8)
|
|
|
b7a469 |
DefaultDependencies=no
|
|
|
b7a469 |
-Conflicts=shutdown.target
|
|
|
b7a469 |
Requires=iscsid.service
|
|
|
b7a469 |
BindTo=iscsid.service
|
|
|
b7a469 |
After=network.target
|
|
|
b7a469 |
Before=remote-fs-pre.target iscsid.service
|
|
|
b7a469 |
-Wants=remote-fs-pre.target
|
|
|
b7a469 |
|
|
|
587c20 |
[Service]
|
|
|
587c20 |
Type=notify
|
|
|
587c20 |
NotifyAccess=main
|
|
|
587c20 |
-ExecStart=/sbin/iscsiuio -f
|
|
|
587c20 |
+ExecStart=/usr/sbin/iscsiuio -f
|
|
|
587c20 |
KillMode=mixed
|
|
|
587c20 |
Restart=on-failure
|
|
|
587c20 |
|
|
|
587c20 |
--
|
|
|
b7a469 |
2.26.2
|
|
|
587c20 |
|