|
建议看看ventoy的esp分区的grub.cfg:
//我猜应该是获取启动设备名称,赋值vtoy_dev。
vt_device $root vtoy_dev
//这部分应该是tfpt启动的判断。
if [ "$vtoy_dev" = "tftp" ]; then
set vtoy_path=($root)
for vtid in 0 1 2 3; do
if [ -f (hd$vtid,2)/ventoy/ventoy.cpio ]; then
set vtoy_iso_part=(hd$vtid,1)
set vtoy_efi_part=(hd$vtid,2)
set vtoydev=hd$vtid
break
fi
done
loadfont ascii
if [ -n "$vtoy_efi_part" ]; then
vt_load_file_to_mem "auto" $vtoy_efi_part/grub/fonts/unicode.pf2 vtoy_font_mem
loadfont mem:${vtoy_font_mem_addr}:size:${vtoy_font_mem_size}
fi
if [ -f $vtoy_iso_part/ventoy/ventoy.json ]; then
set vt_plugin_path=$vtoy_iso_part
else
set vt_plugin_path=$prefix
vt_load_plugin $vt_plugin_path
fi
else
if [ "$prefix" = "(ventoydisk)/grub" ]; then
set vtoy_path=(ventoydisk)/ventoy
else
set vtoy_path=($root)/ventoy
fi
set vtoydev=$vtoy_dev
//有没有可能就是这个变量呢?
set vtoy_iso_part=($vtoy_dev,1)
set vtoy_efi_part=($vtoy_dev,2)
vt_load_file_to_mem "auto" $prefix/fonts/unicode.pf2 vtoy_font_mem
loadfont mem:${vtoy_font_mem_addr}:size:${vtoy_font_mem_size}
set vt_plugin_path=$vtoy_iso_part
fi |
|