summaryrefslogtreecommitdiffstats
path: root/modules.d/95rootfs-block/rootfallback.sh
diff options
context:
space:
mode:
Diffstat (limited to 'modules.d/95rootfs-block/rootfallback.sh')
-rwxr-xr-xmodules.d/95rootfs-block/rootfallback.sh22
1 files changed, 22 insertions, 0 deletions
diff --git a/modules.d/95rootfs-block/rootfallback.sh b/modules.d/95rootfs-block/rootfallback.sh
new file mode 100755
index 0000000..ce4ee85
--- /dev/null
+++ b/modules.d/95rootfs-block/rootfallback.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh
+
+for root in $(getargs rootfallback=); do
+ root=$(label_uuid_to_dev "$root")
+
+ if ! [ -b "$root" ]; then
+ warn "Could not find rootfallback $root"
+ continue
+ fi
+
+ if mount "$root" /sysroot; then
+ info "Mounted rootfallback $root"
+ exit 0
+ else
+ warn "Failed to mount rootfallback $root"
+ exit 1
+ fi
+done
+
+[ -e "$job" ] && rm -f "$job"