Исправления

* добавлено определение того, что шифрование уже подключено
* исправлено определение ошибки при подключении
* добавлено удаления открытого ssh ключа при добавлении машины
master
parent 96d62fc200
commit e7563f5780

@ -1,5 +1,17 @@
#!/bin/bash
already_open() {
local dev=$1
local cryptdev=$2
if /sbin/cryptsetup status $cryptdev | grep -q "is active"
then
if /sbin/cryptsetup status $cryptdev | grep -qP "device:\s+$dev"
then
return 0
fi
fi
return 1
}
for mountdata in /dev/shm/access/{0..9} /dev/shm/access{10..99}
do
@ -25,11 +37,14 @@ do
then
headerpart="--header $mountdata/header"
fi
/sbin/cryptsetup $headerpart -d $mountdata/key luksOpen $dev $cryptdev
res=$?
if [[ $res -ne 0 ]]
if ! already_open $dev $cryptdev
then
exit $res
/sbin/cryptsetup $headerpart -d $mountdata/key luksOpen $dev $cryptdev
res=$?
if [[ $res -ne 0 ]]
then
exit $res
fi
fi
echo "/sbin/cryptsetup luksClose $cryptdev"
@ -41,5 +56,6 @@ do
fi
echo "/bin/umount $mountpoint"
done | tac >/dev/shm/access/stop
res=${PIPESTATUS[0]}
chmod 700 /dev/shm/access/stop
exit ${PIPESTATUS[0]}
exit $res

@ -287,5 +287,6 @@ create_record "$ID" "$KEY" "$DEVICE" "$MP" "$HEADER"
[[ -n $HEADER ]] && rm -f $HEADER
[[ -n $KEY ]] && rm -f $KEY
[[ -n $SSHKEY ]] && rm -f $SSHKEY
einfo "All OK!"

Loading…
Cancel
Save