When user install for example Windows in the reserved space of Ventoy USB stick in UEFI mode.
Windows will create part 3 as the EFI partition and when you boot the USB stick, the BIOS may skip Ventoy and directly boot the Windows.
To avoid this, we suggest to rename the directory name from EFI to VTEFI.
terminal_output console
chainloader /efi/Microsoft/Boot/bootmgfw.efi
boot
terminal_output console
chainloader /efi/Microsoft/Boot/bootmgfw.efi
boot
+ elif [ -f ($vtoydev,$partid)/VTEFI/Microsoft/Boot/bootmgfw.efi ]; then
+ set root=($vtoydev,$partid)
+ terminal_output console
+ chainloader /VTEFI/Microsoft/Boot/bootmgfw.efi
+ boot
fi
else
break
fi
vt_incr partid 1
done
fi
else
break
fi
vt_incr partid 1
done
if search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi; then
terminal_output console
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
if search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi; then
terminal_output console
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
terminal_output console
chainloader /efi/boot/bootia32.efi
boot
terminal_output console
chainloader /efi/boot/bootia32.efi
boot
+ elif search -n -s -f /vtefi/boot/bootia32.efi; then
+ unset VTOY_SEARCH_NO_VTOYEFI
+ terminal_output console
+ chainloader /vtefi/boot/bootia32.efi
+ boot
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTIA32.EFI NOT found ..."
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTIA32.EFI NOT found ..."
chainloader /efi/xorboot/xorboot.efi
fi
boot
chainloader /efi/xorboot/xorboot.efi
fi
boot
+ elif search -n -s -f /vtefi/xorboot/xorboot32.xor; then
+ unset VTOY_SEARCH_NO_VTOYEFI
+ terminal_output console
+ if [ -f /vtefi/xorboot/bootia32.efi ]; then
+ chainloader /vtefi/xorboot/bootia32.efi
+ elif [ -f /vtefi/xorboot/xorboot.efi ]; then
+ chainloader /vtefi/xorboot/xorboot.efi
+ fi
+ boot
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "xorboot NOT found ..."
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "xorboot NOT found ..."
terminal_output console
chainloader /efi/boot/bootaa64.efi
boot
terminal_output console
chainloader /efi/boot/bootaa64.efi
boot
+ elif search -n -s -f /vtefi/boot/bootaa64.efi; then
+ unset VTOY_SEARCH_NO_VTOYEFI
+ terminal_output console
+ chainloader /vtefi/boot/bootaa64.efi
+ boot
+ else
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTAA64.EFI NOT found ..."
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTAA64.EFI NOT found ..."
terminal_output console
chainloader /efi/boot/bootx64.efi
boot
terminal_output console
chainloader /efi/boot/bootx64.efi
boot
+ elif search -n -s -f /vtefi/boot/bootx64.efi; then
+ unset VTOY_SEARCH_NO_VTOYEFI
+ terminal_output console
+ chainloader /vtefi/boot/bootx64.efi
+ boot
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTX64.EFI NOT found ..."
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "BOOTX64.EFI NOT found ..."
chainloader /efi/xorboot/xorboot.efi
fi
boot
chainloader /efi/xorboot/xorboot.efi
fi
boot
+ elif search -n -s -f /vtefi/xorboot/xorboot.xor; then
+ unset VTOY_SEARCH_NO_VTOYEFI
+ terminal_output console
+ if [ -f /vtefi/xorboot/bootx64.efi ]; then
+ chainloader /vtefi/xorboot/bootx64.efi
+ elif [ -f /vtefi/xorboot/xorboot.efi ]; then
+ chainloader /vtefi/xorboot/xorboot.efi
+ fi
+ boot
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "xorboot NOT found ..."
else
unset VTOY_SEARCH_NO_VTOYEFI
echo "xorboot NOT found ..."