summaryrefslogtreecommitdiff
path: root/modules/losetup/files/setup-loop-device
diff options
context:
space:
mode:
Diffstat (limited to 'modules/losetup/files/setup-loop-device')
-rwxr-xr-xmodules/losetup/files/setup-loop-device16
1 files changed, 16 insertions, 0 deletions
diff --git a/modules/losetup/files/setup-loop-device b/modules/losetup/files/setup-loop-device
new file mode 100755
index 0000000..4215273
--- /dev/null
+++ b/modules/losetup/files/setup-loop-device
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+target_file="$1"
+safe_name="$(systemd-escape "$target_file")"
+
+set +x
+
+loop_device=$(losetup --find --show "$target_file")
+
+ln -s $loop_device "/dev/loop-by-name/${safe_name}"
+
+for part in "${loop_device}"p*; do
+ last_two=${part:$[${#part}-2]}
+ ln -s $part \
+ "/dev/loop-by-name/${safe_name}-${last_two}"
+done