summary refs log tree commit diff
path: root/core-services/03-filesystems.sh
diff options
context:
space:
mode:
Diffstat (limited to 'core-services/03-filesystems.sh')
-rw-r--r--core-services/03-filesystems.sh9
1 files changed, 8 insertions, 1 deletions
diff --git a/core-services/03-filesystems.sh b/core-services/03-filesystems.sh
index 8b1e16b..e46c83d 100644
--- a/core-services/03-filesystems.sh
+++ b/core-services/03-filesystems.sh
@@ -22,7 +22,14 @@ fi
 
 if [ -e /etc/crypttab ]; then
     msg "Activating encrypted devices...\n"
-    awk -f /etc/runit/crypt.awk /etc/crypttab
+    if [ -e /etc/runit/crypt.awk ]; then
+        awk -f /etc/runit/crypt.awk /etc/crypttab
+    else:
+        msg_warn "parsing file not found, fallback to dest src filds\n"
+        awk '/^#/ || /^$/ { next }
+           NF>2 { print "unsupported crypttab: " $0 >"/dev/stderr"; next}
+           { system("cryptsetup luksOpen " $2 " " $1) }' /etc/crypttab
+    fi
 
     if [ -x /sbin/vgchange ]; then
         msg "Activating LVM devices for dm-crypt...\n"