pve-iso-builder/grub.cfg
2025-03-03 13:57:20 +08:00

169 lines
6.0 KiB
INI

insmod gzio
insmod iso9660
insmod zfs
if [ x$feature_default_font_path = xy ] ; then
font=unicode
else
font=$prefix/unicode.pf2
fi
set gfxmode=1024x768,640x480
# set kernel parameter vga=791
# do not specify color depth here (else efifb can fall back to 800x600)
set gfxpayload=1024x768
#set gfxmode=auto
#set gfxpayload=keep
if loadfont $font; then
insmod efi_gop
insmod efi_uga
insmod video_bochs
insmod video_cirrus
insmod all_video
insmod png
insmod gfxterm
set theme=/boot/grub/pvetheme/theme.txt
export theme
terminal_input console
terminal_output gfxterm
fi
# Enable serial console
insmod serial
# FIXME: add below to our fixed-modules for next shim-review
insmod usbserial_common
insmod usbserial_ftdi
insmod usbserial_pl2303
insmod usbserial_usbdebug
if serial --unit=0 --speed=115200; then
terminal_input --append serial
terminal_output --append serial
set show_serial_entry=y
fi
if [ -f auto-installer-mode.toml ]; then
set timeout-style=menu
set timeout=10
menuentry 'Install Pxvirt (Automated)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt Automatic Installer ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw quiet splash=silent Pxvirt-start-auto-installer
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
fi
menuentry 'Install Pxvirt (Graphical)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt Installer ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw quiet splash=silent
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
menuentry 'Install Pxvirt (Terminal UI)' --class debian --class gnu-linux --class gnu --class os {
set background_color=black
echo 'Loading Pxvirt Console Installer ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw quiet splash=silent proxtui vga=788
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
if [ x"${show_serial_entry}" == 'xy' ]; then
menuentry 'Install Pxvirt (Terminal UI, Serial Console)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt Console Installer (serial) ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw splash=verbose proxtui console=ttyS0,115200
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
fi
if [ -f /boot/linux26-phytium ];then
menuentry 'Install Pxvirt With Phytium Kernel' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt With Phytium Kernel ...'
linux /boot/linux26-phytium ro ramdisk_size=16777216 rw splash=verbose
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-phytium
}
fi
if [ -f /boot/linux26-generic ];then
menuentry 'Install Pxvirt With Generic Kernel' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt With Generic Kernel ...'
linux /boot/linux26-generic ro ramdisk_size=16777216 rw splash=verbose
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-generic
}
fi
if [ -f /boot/linux26-openeuler ];then
menuentry 'Install Pxvirt With Openeuler Kernel' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt With Openeuler Kernel ...'
linux /boot/linux26-openeuler ro ramdisk_size=16777216 rw splash=verbose
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-openeuler
}
fi
submenu 'Advanced Options' {
menuentry 'Install Pxvirt (Graphical, Debug Mode)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt GUI Installer (debug) ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw splash=verbose proxdebug vga=788
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
menuentry 'Install Pxvirt (Terminal UI, Debug Mode)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt TUI Installer (debug) ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw splash=verbose proxdebug proxtui vga=788
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
menuentry 'Install Pxvirt (Serial Console Debug Mode)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt TUI Installer (serial, debug) ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw splash=verbose proxdebug proxtui console=ttyS0,115200
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
if [ ! -f auto-installer-mode.toml ]; then
menuentry 'Install Pxvirt (Automated)' --class debian --class gnu-linux --class gnu --class os {
echo 'Loading Pxvirt Automatic Installer ...'
linux /boot/linux26 ro ramdisk_size=16777216 rw quiet splash=silent Pxvirt-start-auto-installer
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img
}
fi
}
menuentry 'Rescue Boot' --class debian --class gnu-linux --class gnu --class os {
insmod lvm
insmod ext2
set tmproot=$root
if test -e (lvm/pve-root)/boot/pve/vmlinuz; then
echo 'LVM Rescue Boot ...'
linux (lvm/pve-root)/boot/pve/vmlinuz ro ramdisk_size=16777216 root=/dev/mapper/pve-root
initrd (lvm/pve-root)/boot/pve/initrd.img
boot
else
insmod zfs
search --no-floppy --label rpool --set root
if test -e /ROOT/pve-1/@//boot/pve/vmlinuz; then
echo 'ZFS Rescue Boot ...'
linux /ROOT/pve-1/@//boot/pve/vmlinuz ro ramdisk_size=16777216 root=ZFS=rpool/ROOT/pve-1 boot=zfs
initrd /ROOT/pve-1/@//boot/pve/initrd.img
boot
else
echo 'ERROR: unable to find boot disk automatically.'
fi
fi
set root=$tmproot
}
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}