#!/bin/bash # Varidate whether script is executed as sourced or not (return 0 2>/dev/null) && sourced=1 || sourced=0 if [ $sourced -eq 0 ] ; then cat <&2 ***** ERROR : Must execute as source ***** Execute as following : source 3-post-install.sh Installation terminated. HEREDOC exit # use "exit" instead of "return", if not "sourced" execusion fi # "sourced" validation ## Mount the target file system # /target is created by the Ubiquity installer echo "...Mount /dev/mapper/${VGNAME}-${LVROOTNAME} on /mnt/target." mount /dev/mapper/${VGNAME}-${LVROOTNAME} /mnt/target # And mount other directories echo "...Mount all other dirs." for n in proc sys dev etc/resolv.conf; do mount --rbind "/$n" "/mnt/target/$n"; done # Change root and create the keyfile and ramfs image for Linux kernel. echo "...Chroot to /target." cat <> /etc/crypttab echo "...Register key file to the ramfs" echo 'install_items+=" /etc/luks/boot_os.keyfile /etc/crypttab " ' > /etc/dracut.conf.d/10-crypt.conf # Finally, update the ramfs initial image with the key file. echo "...Upadte initramfs." xbps-reconfigure -fa echo "...grub-mkconfig." grub-mkconfig -o /boot/grub/grub.cfg # Leave chroot exit HEREDOC # Finishing message cat <