From e589c414387ae4fa51351866fe5f0aa8668fffd4 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Thu, 18 Apr 2019 11:18:24 +0200 Subject: status quo --- mount-crypts | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 mount-crypts diff --git a/mount-crypts b/mount-crypts new file mode 100755 index 0000000..e434adc --- /dev/null +++ b/mount-crypts @@ -0,0 +1,32 @@ +#!/bin/bash + +i=1 +maxWait=60 + +while [ $i -le $(sed "s/#.*$//" /etc/crypttab | grep -vc '^ *$') ] +do + s="$(sed "s/#.*$//" /etc/crypttab | grep -v '^ *$' | tail -n$i | head -n1 | sed "s/ */ /g")" + name=$(echo $s | awk '{print $1}') + device=$(echo $s | awk '{print $2}') + key=$(echo $s | awk '{print $3}') + while [ ${maxWait} -gt 0 ] && [ ! -b "${device}" ] + do + sleep 1 + maxWait=$[${maxWait}-1] + done + if [ "$1" == "-u" ] + then + if ! /usr/sbin/cryptsetup luksClose $name + then + >&2 echo "FEHLER: cryptsetup luksClose $name" + exit 1 + fi + else + if ! /usr/sbin/cryptsetup luksOpen $device $name --key-file $key + then + >&2 echo "FEHLER: cryptsetup luksOpen $device $name --key-file $key" + exit 1 + fi + fi + i=$[$i+1] +done -- cgit v1.2.3-54-g00ecf