浏览代码

Added luks to archinstall

Viktor Grahn 1 年之前
父节点
当前提交
1582e743fb
共有 1 个文件被更改,包括 16 次插入0 次删除
  1. 16 0
      archInstall.sh

+ 16 - 0
archInstall.sh

@@ -172,6 +172,22 @@ function chrootStep {
   systemctl enable NetworkManager >&2 || exit $?
   systemctl start NetworkManager >&2 || exit $?
 
+  printf "Add decryption kernel options\n" | tee -a $LOGFILE
+  LUKSUUID=$(blkid | grep ${ROOTPART} | sed -E 's/^.*\bUUID\b="(\S+)".*$/\1/') || exit $?
+  mkdir -p /etc/cmdline.d >&2 || exit $?
+  echo "rd.luks.name=${LUKSUUID}=cryptlvm root=/dev/VolGroup1/root rw rootfstype=ext4 rd.shell=0 rd.emergency=reboot" > /etc/cmdline.d/root.conf
+
+  printf "Add LUKS related hooks to mkinitcpio.conf" | tee -a $LOGFILE
+  for OPT in systemd keyboard sd-vconsole sd-encrypt lvm2; do
+    sed -i -E '/^HOOKS=.*\b'$OPT'\b/!/s/^(.*)\)$/\1 '$OPT'\)/' /etc/mkinitcpio.conf >&2 || exit $?
+  done
+
+  printf "Rebuild kernel\n" | tee -a $LOGFILE
+  mkinitcpio -p linux 2>&1 || exit $?
+
+  printf "Install bootloader (systemd)\n" | tee -a $LOGFILE
+  bootctl install
+  
   printf "Exiting chroot\n" | tee -a $LOGFILE
   exit
 }