mirror of
https://github.com/raspiblitz/raspiblitz.git
synced 2025-09-20 04:37:19 +02:00
Add EFI GRUB install
This commit is contained in:
@@ -688,6 +688,8 @@ if [ "$1" = "setup" ]; then
|
|||||||
|
|
||||||
if [ setupType="SEPERATE-SYSTEM" ] || [ ${setupBootFromStorage} -eq 1 ]; then
|
if [ setupType="SEPERATE-SYSTEM" ] || [ ${setupBootFromStorage} -eq 1 ]; then
|
||||||
echo "# MAKE BOOTABLE"
|
echo "# MAKE BOOTABLE"
|
||||||
|
|
||||||
|
# RASPBERRY PI
|
||||||
if [ "${computerType}" = "raspberrypi" ]; then
|
if [ "${computerType}" = "raspberrypi" ]; then
|
||||||
echo "# RaspberryPi - set LBA flag"
|
echo "# RaspberryPi - set LBA flag"
|
||||||
parted /dev/${setupDevice} --script set 1 lba on
|
parted /dev/${setupDevice} --script set 1 lba on
|
||||||
@@ -707,6 +709,8 @@ if [ "$1" = "setup" ]; then
|
|||||||
else
|
else
|
||||||
echo "# .. Bootorder already set"
|
echo "# .. Bootorder already set"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# VM & PC
|
||||||
else
|
else
|
||||||
echo "# VM & PC - set BOOT/ESP flag"
|
echo "# VM & PC - set BOOT/ESP flag"
|
||||||
parted /dev/${setupDevice} --script set 1 boot on
|
parted /dev/${setupDevice} --script set 1 boot on
|
||||||
@@ -777,17 +781,45 @@ if [ "$1" = "setup" ]; then
|
|||||||
|
|
||||||
# fstab link & command.txt
|
# fstab link & command.txt
|
||||||
echo "# Perma mount boot & system drives"
|
echo "# Perma mount boot & system drives"
|
||||||
BOOT_PARTUUID=$(sudo blkid -s PARTUUID -o value /dev/${setupDevicePartitionBase}1)
|
BOOT_UUID=$(sudo blkid -s PARTUUID -o value /dev/${setupDevicePartitionBase}1)
|
||||||
ROOT_PARTUUID=$(sudo blkid -s PARTUUID -o value /dev/${setupDevicePartitionBase}2)
|
ROOT_UUID=$(sudo blkid -s PARTUUID -o value /dev/${setupDevicePartitionBase}2)
|
||||||
echo "# - BOOT_PARTUUID(${BOOT_PARTUUID})"
|
echo "# - BOOT_UUID(${BOOT_UUID})"
|
||||||
echo "# - ROOT_PARTUUID(${ROOT_PARTUUID})"
|
echo "# - ROOT_UUID(${ROOT_UUID})"
|
||||||
if [ "${computerType}" = "raspberrypi" ]; then
|
if [ "${computerType}" = "raspberrypi" ]; then
|
||||||
echo "# - RaspberryPi - edit command.txt"
|
echo "# - RaspberryPi - edit command.txt"
|
||||||
sed -i "s|PARTUUID=[^ ]*|PARTUUID=$ROOT_PARTUUID|" /mnt/disk_boot/cmdline.txt
|
sed -i "s|UUID=[^ ]*|UUID=$ROOT_UUID|" /mnt/disk_boot/cmdline.txt
|
||||||
|
fi
|
||||||
|
cat > /mnt/disk_system/etc/fstab << EOF
|
||||||
|
# /etc/fstab: static file system information
|
||||||
|
#
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <pass>
|
||||||
|
UUID=${ROOT_UUID} / ext4 defaults,noatime 0 1
|
||||||
|
UUID=${BOOT_UUID} /boot vfat defaults,noatime,umask=0077 0 2
|
||||||
|
EOF
|
||||||
|
|
||||||
|
# install EFI GRUB for VM & PC
|
||||||
|
if [ "${computerType}" != "raspberrypi" ]; then
|
||||||
|
echo "# EFI GRUB"
|
||||||
|
DISK_SYSTEM="/mnt/disk_system"
|
||||||
|
BOOT_PARTITION="/dev/${setupDevicePartitionBase}1"
|
||||||
|
ROOT_PARTITION="/dev/${setupDevicePartitionBase}2"
|
||||||
|
echo "# Mounting root and boot partitions..."
|
||||||
|
mkdir -p $DISK_SYSTEM
|
||||||
|
mount $ROOT_PARTITION $DISK_SYSTEM || { echo "Failed to mount root partition"; exit 1; }
|
||||||
|
mkdir -p $DISK_SYSTEM/boot
|
||||||
|
mount $BOOT_PARTITION $DISK_SYSTEM/boot || { echo "Failed to mount boot partition"; exit 1; }
|
||||||
|
echo "# Bind mounting system directories..."
|
||||||
|
mount --bind /dev $DISK_SYSTEM/dev || { echo "Failed to bind /dev"; exit 1; }
|
||||||
|
mount --bind /sys $DISK_SYSTEM/sys || { echo "Failed to bind /sys"; exit 1; }
|
||||||
|
mount --bind /proc $DISK_SYSTEM/proc || { echo "Failed to bind /proc"; exit 1; }
|
||||||
|
cp /etc/resolv.conf $DISK_SYSTEM/etc/resolv.conf || { echo "Failed to copy resolv.conf"; exit 1; }
|
||||||
|
echo "# Entering chroot and setting up GRUB..."
|
||||||
|
chroot $DISK_SYSTEM /bin/bash <<EOF
|
||||||
|
apt-get install -y grub-efi-amd64
|
||||||
|
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debian --recheck
|
||||||
|
update-grub
|
||||||
|
EOF
|
||||||
fi
|
fi
|
||||||
echo "# - edit fstab"
|
|
||||||
sed -i "/[[:space:]]${bootPathEscpaed}[[:space:]]/ s|PARTUUID=[^[:space:]]*|PARTUUID=$BOOT_PARTUUID|" /mnt/disk_system/etc/fstab
|
|
||||||
sed -i "/[[:space:]]\/[[:space:]]/ s|PARTUUID=[^[:space:]]*|PARTUUID=$ROOT_PARTUUID|" /mnt/disk_system/etc/fstab
|
|
||||||
|
|
||||||
else
|
else
|
||||||
echo "# skipping: SystemCopy"
|
echo "# skipping: SystemCopy"
|
||||||
|
Reference in New Issue
Block a user