-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathboot_dvd.sh
34 lines (29 loc) · 1.06 KB
/
boot_dvd.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/bash
# Exit if there is any error
set -e
echo "Copying bootfiles ..."
mkdir -p iso/EFI
cp -r /bootfiles/* iso/EFI
echo "Building EFI boot image ..."
mkdir -p iso/EFI/grub/x86_64-efi
dd if=/dev/zero of=iso/EFI/grub/x86_64-efi/efi.img bs=512 count=32K
mkfs.vfat iso/EFI/grub/x86_64-efi/efi.img
mount iso/EFI/grub/x86_64-efi/efi.img /mnt
grub-install --target=x86_64-efi --removable --efi-directory=/mnt --boot-directory=/mnt/EFI iso/EFI/grub/x86_64-efi/efi.img
cp -r /mnt/EFI/* iso/EFI
umount /mnt
echo "Building boot image for legacy BIOS ..."
grub-mkimage -O i386-pc -o core.img -p /EFI/grub iso9660 biosdisk search probe
mkdir -p iso/EFI/grub/i386-pc
cat /usr/lib/grub/i386-pc/cdboot.img core.img > iso/EFI/grub/i386-pc/eltorito.img
cp /usr/lib/grub/i386-pc/* iso/EFI/grub/i386-pc/
# Create disk image
xorriso -as mkisofs -r \
-V 'Debian 12' \
-o debian-12.4.0-xfce-ramfs.iso \
-J -joliet-long \
-b EFI/grub/i386-pc/eltorito.img \
-boot-load-size 4 -boot-info-table -no-emul-boot \
-eltorito-alt-boot \
-e EFI/grub/x86_64-efi/efi.img -no-emul-boot \
iso