@@ -802,6 +802,15 @@ if [ -n "$1" ]; then
802802 PART_SIZE[$i ]=" $( translate_unit " $( echo " $PART_LINE " | awk ' { print $4 }' ) " ) "
803803 PART_CRYPT[$i ]=" $( echo " $PART_LINE " | awk ' {print $5}' ) "
804804 MOUNT_POINT_SIZE[$i ]=${PART_SIZE[$i]}
805+
806+ # Print in awk columns from 6 until the end.
807+ EXTRAS=" $( echo " $PART_LINE " | awk ' {for(i=6;i<=NF;++i)print $i}' ) "
808+
809+ for extra in $EXTRAS ; do
810+ eval " $extra "
811+ PART_EXTRAS[$i ]=" ${PART_EXTRAS[$i]} $extra "
812+ done
813+
805814 # calculate new partition size if software raid is enabled and it is not /boot or swap
806815 if [ " $SWRAID " = " 1" ]; then
807816 if [ " ${PART_MOUNT[$i]} " != " /boot" ] && [ " ${PART_MOUNT[$i]} " != " /boot/efi" ] && [ " ${PART_SIZE[$i]} " != " all" ] && [ " ${PART_MOUNT[$i]} " != " swap" ]; then
@@ -826,8 +835,8 @@ if [ -n "$1" ]; then
826835 if [ " ${PART_MOUNT[$i]} " = " /" ]; then
827836 HASROOT=" true"
828837 fi
829- if [[ -n " ${PART_CRYPT[$i]} " ] ]; then
830- CRYPT=1
838+ if [ " ${PART_CRYPT[$i]} " = " yes " ]; then
839+ CRYPT=" 1 "
831840 fi
832841 done < /tmp/part_lines.tmp
833842
@@ -2055,7 +2064,7 @@ create_partitions() {
20552064 else
20562065 crypt_part=$( grep " ${PART_MOUNT[$i]} " /tmp/part_lines.tmp | grep " crypt" | awk ' {print $3}' )
20572066 fi
2058- [ -n " $crypt_part " ] && is_crypted=' crypt' || is_crypted=' '
2067+ [ -n " $crypt_part " ] && is_crypted=' crypt' || is_crypted=' no '
20592068
20602069 # create GPT partitions
20612070 if [ $GPT -eq 1 ]; then
@@ -2088,7 +2097,7 @@ create_partitions() {
20882097 fi
20892098 fi
20902099
2091- make_fstab_entry " $1 " " $i " " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted "
2100+ make_fstab_entry " $1 " " $i " " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted " " ${PART_EXTRAS[$i]} "
20922101
20932102 else
20942103 # part without GPT
@@ -2157,9 +2166,9 @@ create_partitions() {
21572166 fi
21582167
21592168 if [ " $PART_COUNT " -ge " 4" -a " $i " -ge " 4" ]; then
2160- make_fstab_entry " $1 " " $[$i +1]" " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted "
2169+ make_fstab_entry " $1 " " $[$i +1]" " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted " " ${PART_EXTRAS[$i]} "
21612170 else
2162- make_fstab_entry " $1 " " $i " " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted "
2171+ make_fstab_entry " $1 " " $i " " ${PART_MOUNT[$i]} " " ${PART_FS[$i]} " " $is_crypted " " ${PART_EXTRAS[$i]} "
21632172 fi
21642173 fi
21652174 done
@@ -2209,7 +2218,7 @@ create_partitions() {
22092218}
22102219
22112220# create fstab entries
2212- # make_fstab_entry "DRIVE" "NUMBER" "MOUNTPOINT" "FILESYSTEM" ("crypt")
2221+ # make_fstab_entry "DRIVE" "NUMBER" "MOUNTPOINT" "FILESYSTEM" ("crypt") ("extras")
22132222make_fstab_entry () {
22142223 if [ " $1 " -a " $2 " -a " $3 " -a " $4 " ]; then
22152224 ENTRY=" "
@@ -2254,6 +2263,10 @@ make_fstab_entry() {
22542263 fi
22552264 fi
22562265
2266+ if [ -n " $6 " ]; then
2267+ ENTRY=" $ENTRY # HZ-CFG:$6 "
2268+ fi
2269+
22572270 echo $ENTRY >> " $FOLD /fstab"
22582271
22592272 if [ " $3 " = " /" ]; then
@@ -2331,6 +2344,16 @@ make_swraid() {
23312344 while read line ; do
23322345 PARTNUM=" $( next_partnum $count ) "
23332346 echo " Line is: \" $line \" " | debugoutput
2347+
2348+ local array_raidlevel=" $SWRAIDLEVEL "
2349+
2350+ OVERRIDES=$( echo $line | sed -n " /HZ-CFG/s/.*# HZ-CFG:\(.*\)$/\1/p" )
2351+ if [ -n " $OVERRIDES " ]; then
2352+ for override in $OVERRIDES ; do
2353+ eval " $override "
2354+ done
2355+ fi
2356+
23342357 # If multiple ESPs are supported by grub-efi-amd64, a workaround for the fstab is necessary in order to create the RAID array correctly
23352358 if [ -n " $( echo " $line " | grep " /boot/efi" ) " ] && [ " $IAM " == " ubuntu" -a " $IMG_VERSION " -ge 2004 ] && [ " $UEFI " -eq 1 ]; then
23362359 if [ " $EFIPART " -eq 0 ] && [ -n " $( echo $line | grep $LASTDRIVE ) " ]; then
@@ -2367,7 +2390,6 @@ make_swraid() {
23672390 done
23682391
23692392 local array_metadata=" $metadata "
2370- local array_raidlevel=" $SWRAIDLEVEL "
23712393 local can_assume_clean=' '
23722394 local array_layout=' '
23732395
0 commit comments