summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJonathon <[email protected]>2020-07-29 23:52:18 +0000
committerGitHub <[email protected]>2020-07-29 16:52:18 -0700
commitae12b023082fd91e89507a2a1fc014e64c6767f0 (patch)
tree1d16650c4cb9574bead108699f19ec3bbb1e45d0
parent27d96d22542282b81a055e2108268dc78d08eda8 (diff)
Verify zfs module loaded before starting services
This is a minor change to the systemd service templates that verifies the zfs kernel module is loaded by the kernel prior to attempting to import any zpool. Reviewed-by: Richard Laager <[email protected]> Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Jonathon Fernyhough <[email protected]> Closes #10627
-rw-r--r--etc/systemd/system/zfs-import-cache.service.in1
-rw-r--r--etc/systemd/system/zfs-import-scan.service.in1
-rw-r--r--etc/systemd/system/zfs-mount.service.in1
3 files changed, 3 insertions, 0 deletions
diff --git a/etc/systemd/system/zfs-import-cache.service.in b/etc/systemd/system/zfs-import-cache.service.in
index 82495638f..3697f09c7 100644
--- a/etc/systemd/system/zfs-import-cache.service.in
+++ b/etc/systemd/system/zfs-import-cache.service.in
@@ -13,6 +13,7 @@ ConditionPathExists=@sysconfdir@/zfs/zpool.cache
[Service]
Type=oneshot
RemainAfterExit=yes
+ExecCondition=/usr/bin/grep -q "^zfs " /proc/modules
ExecStart=@sbindir@/zpool import -c @sysconfdir@/zfs/zpool.cache -aN
[Install]
diff --git a/etc/systemd/system/zfs-import-scan.service.in b/etc/systemd/system/zfs-import-scan.service.in
index 278f937fe..1a352a8ac 100644
--- a/etc/systemd/system/zfs-import-scan.service.in
+++ b/etc/systemd/system/zfs-import-scan.service.in
@@ -12,6 +12,7 @@ ConditionPathExists=!@sysconfdir@/zfs/zpool.cache
[Service]
Type=oneshot
RemainAfterExit=yes
+ExecCondition=/usr/bin/grep -q "^zfs " /proc/modules
ExecStart=@sbindir@/zpool import -aN -o cachefile=none
[Install]
diff --git a/etc/systemd/system/zfs-mount.service.in b/etc/systemd/system/zfs-mount.service.in
index 6507c0765..e0d4bb37f 100644
--- a/etc/systemd/system/zfs-mount.service.in
+++ b/etc/systemd/system/zfs-mount.service.in
@@ -11,6 +11,7 @@ Before=systemd-random-seed.service
[Service]
Type=oneshot
RemainAfterExit=yes
+ExecCondition=/usr/bin/grep -q "^zfs " /proc/modules
ExecStart=@sbindir@/zfs mount -a
[Install]