aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarios Andreopoulos <opensource@andmarios.com>2012-06-11 19:17:49 +0200
committerSebastian Pipping <sebastian@pipping.org>2012-06-11 19:17:49 +0200
commitf95264added35c25fb557931116edd3cd0aec7ba (patch)
tree983a19914e2a247a11b87bf107550d53e8992db5 /defaults
parentExtend change log (diff)
downloadgenkernel-f95264added35c25fb557931116edd3cd0aec7ba.tar.gz
genkernel-f95264added35c25fb557931116edd3cd0aec7ba.tar.bz2
genkernel-f95264added35c25fb557931116edd3cd0aec7ba.zip
Use real_root option for (plain) Luks setup
Diffstat (limited to 'defaults')
-rwxr-xr-xdefaults/initrd.scripts5
1 files changed, 4 insertions, 1 deletions
diff --git a/defaults/initrd.scripts b/defaults/initrd.scripts
index 258f2bd0..fd9ac273 100755
--- a/defaults/initrd.scripts
+++ b/defaults/initrd.scripts
@@ -751,16 +751,19 @@ openLUKS() {
# please use 'tr' and this line, or remove it
# eval local TYPE=`uppercase $1`
+ local LUKS_NAME="$1"
+
case $1 in
root)
local TYPE=ROOT
+ [ -n "${REAL_ROOT}" ] && local LUKS_NAME="$(echo "$REAL_ROOT" | sed -e 's/.*\///')"
;;
swap)
local TYPE=SWAP
;;
esac
- eval local LUKS_DEVICE='"${CRYPT_'${TYPE}'}"' LUKS_NAME="$1" LUKS_KEY='"${CRYPT_'${TYPE}'_KEY}"' LUKS_KEYDEV='"${CRYPT_'${TYPE}'_KEYDEV}"' LUKS_TRIM='"${CRYPT_'${TYPE}'_TRIM}"'
+ eval local LUKS_DEVICE='"${CRYPT_'${TYPE}'}"' LUKS_NAME="$LUKS_NAME" LUKS_KEY='"${CRYPT_'${TYPE}'_KEY}"' LUKS_KEYDEV='"${CRYPT_'${TYPE}'_KEYDEV}"' LUKS_TRIM='"${CRYPT_'${TYPE}'_TRIM}"'
local DEV_ERROR=0 KEY_ERROR=0 KEYDEV_ERROR=0
local mntkey="/mnt/key/" cryptsetup_options=''