From c44eccadf84ba0d9d0d449a870aad63bb03fd8d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20B=C3=A4chler?= Date: Fri, 28 Jan 2011 20:58:45 +0100 Subject: Only call activate_vgs a second time if any logical volumes have actually been activated. --- functions | 6 +++++- rc.sysinit | 7 +++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/functions b/functions index 9cec7a0..b424879 100644 --- a/functions +++ b/functions @@ -272,7 +272,11 @@ read_crypttab() { while read line; do [[ $line && ${line:0:1} != '#' ]] || continue eval nspo=("${line%#*}") - $1 "${nspo[0]}" "${nspo[1]}" "${nspo[2]}" "${nspo[*]:3}" || failed=1 + if $1 "${nspo[0]}" "${nspo[1]}" "${nspo[2]}" "${nspo[*]:3}"; then + crypto_unlocked=1 + else + failed=1 + fi done < /etc/crypttab return $failed } diff --git a/rc.sysinit b/rc.sysinit index d562e36..3ed61c7 100755 --- a/rc.sysinit +++ b/rc.sysinit @@ -202,13 +202,16 @@ if [[ -f /etc/crypttab && $CS ]]; then fi return $failed } + crypto_unlocked=0 if read_crypttab do_unlock; then stat_done else stat_fail fi - # Maybe someone has LVM on an encrypted block device - activate_vgs + if [[ ${crypto_unlocked} -eq 1 ]]; then + # Maybe someone has LVM on an encrypted block device + activate_vgs + fi fi status "Mounting Root Read-only" /bin/mount -n -o remount,ro / -- cgit v1.2.3