diff -Naur genkernel-4.1.2.orig/defaults/initrd.scripts genkernel-4.1.2/defaults/initrd.scripts --- genkernel-4.1.2.orig/defaults/initrd.scripts 2020-08-29 06:33:36.000000000 +0900 +++ genkernel-4.1.2/defaults/initrd.scripts 2020-09-01 18:56:14.247756642 +0900 @@ -1795,6 +1795,12 @@ local DEV_ERROR=0 KEY_ERROR=0 KEYDEV_ERROR=0 local mntkey="/mnt/key/" crypt_filter_ret= + if [ $2 -gt 0 ] + then + eval local LUKS_NAME="$1_$2" + eval local OPENED_LOCKFILE='"${CRYPT_'${TYPE}'_OPENED_LOCKFILE}_$2"' + fi + while true do local cryptsetup_options='' @@ -2296,7 +2302,11 @@ if [ -n "${CRYPT_ROOT}" ] then - openLUKS "root" + local crypt_index=0 + for CRYPT_ROOT in ${CRYPT_ROOTS}; do + openLUKS "root" ${crypt_index} + let crypt_index=${crypt_index}+1 + done if [ -n "${REAL_ROOT}" ] then # Rescan volumes @@ -2346,6 +2356,7 @@ write_env_file \ "${CRYPT_ENV_FILE}" \ CRYPT_ROOT \ + CRYPT_ROOTS \ CRYPT_ROOT_TRIM \ CRYPT_SILENT \ CRYPT_SWAP diff -Naur genkernel-4.1.2.orig/defaults/linuxrc genkernel-4.1.2/defaults/linuxrc --- genkernel-4.1.2.orig/defaults/linuxrc 2020-08-29 06:33:36.000000000 +0900 +++ genkernel-4.1.2/defaults/linuxrc 2020-09-01 18:56:14.247756642 +0900 @@ -243,8 +243,9 @@ ISCSI_NOIBFT=1 ;; # Crypto - crypt_root=*) - CRYPT_ROOT=${x#*=} + crypt_root=*|crypt_roots=*) + CRYPT_ROOT=${CRYPT_ROOT:=${x#*=}} + CRYPT_ROOTS="${CRYPT_ROOTS} ${x#*=}" USE_CRYPTSETUP=1 ;; crypt_swap=*)