无忧启动论坛

标题: 请教大佬们,怎么用refind加 vdiskchain插件启动 vDisk 文件? [打印本页]

作者: wdtx    时间: 2022-10-28 18:19
标题: 请教大佬们,怎么用refind加 vdiskchain插件启动 vDisk 文件?
按如下官方说明:
使用其他 bootloader 启动 vDisk 文件
通过前面的说明我们知道,Ventoy 可以启动 Ventoy 所在的磁盘上的 vdisk 文件,也可以启动非 Ventoy 盘(本地磁盘)上的 vdisk 文件。 但是这两者都必须要通过 Ventoy 才可以启动。 实际上 vdisk 启动这个功能是可以独立出来的。 可以集成到其他 bootloader 中来启动,比如 grub4dos/grub2/rEFInd/Systemd-boot 等。
唯一的要求是 vdisk 文件所在的分区文件系统只能是 FAT32/NTFS/exFAT/XFS/Ext2/Ext3/Ext4/UDF 中的一种。使用方法如下:

================== i386-pc ======================
GRUB4DOS:
kernel /ipxe.krn vdisk=/MyVdiskDir/Deepin.vdi.vtoy
initrd /vdiskchain

GRUB2:
linux16  (hd0,1)/test123/ipxe.krn vdisk=/MyVdiskDir/Deepin.vdi.vtoy
initrd16 (hd0,1)/test123/vdiskchain


================== x86-64-efi ======================
GRUB2:
chainloader (hd0,1)/test123/vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy

rEFInd:
loader /vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy

Systemd-boot:
efi /vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy
这里的 ipxe.krn 和 vdiskchain 是两个文件,需要从 https://github.com/ventoy/vdiskchain/releases 下载最新版本。 vdisk 参数和上面的 my_vdisk_path 参数是一样的含义和要求。

以上说的不详细啊,我想用refind启动硬盘上的 vdiskchain,上面说的 vdiskchain文件要放到哪个位置?还有refind的启动 vdisk文件的完整代码要怎样写呢,上面示例的只写了一行,没有指定分区号应该不能启动吧,请高手指点,多谢了!
作者: caofeng36    时间: 2022-10-30 18:23
顶  学习一下
作者: my9823    时间: 2022-10-30 20:38
您可能需要更改 volume以匹配文件系统的标签、PARTLABEL 或内核镜像所在分区的 PARTUUID。PARTUUID 必须大写的。
作者: my9823    时间: 2022-10-30 20:39
以上内容摘自archlinux的wiki
作者: Yuanshen    时间: 2022-10-31 08:58
也想知道。
作者: wdtx    时间: 2022-11-2 15:25
my9823 发表于 2022-10-30 20:38
您可能需要更改 volume以匹配文件系统的标签、PARTLABEL 或内核镜像所在分区的 PARTUUID。PARTUUID 必须大 ...

用 volume设定了目标分区的GUID,refind可以加载分区中的efi文件了,但是这个vdiskchain插件还是不能用,
把代码写成loader /vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy没反应,试验了一下启动efi文件,如果改成loader /MyVdiskDir/grubfm.efi就能启动grub文件管理器,难道refind不支持这个vdiskchain插件?
作者: ZMLoveLH    时间: 2022-11-3 11:06
同问,我也想知道啊,看看楼上的牛人解答
作者: xiaojbojj    时间: 2022-11-4 00:21
vdisk 就放在你的 rEFInd 所在的分区,根目录或其它目录均可,我的是放在 EFI 目录下,但在使用如下书写格式时,启动不成功
loader /EFI/vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy

改写为如下格式后,启动成功

loader /EFI/vdiskchain
options "vdisk=/VHD/deepin/deepin.vhd.vtoy"

注意:第1行中 vdiskchain 以及第2行中的 .vtoy 文件要根据具体的存放路径书写



作者: wdtx    时间: 2022-11-6 20:10
xiaojbojj 发表于 2022-11-4 00:21
vdisk 就放在你的 rEFInd 所在的分区,根目录或其它目录均可,我的是放在 EFI 目录下,但在使用如下书写格 ...

谢谢老师,有时间试试看
作者: 517769154    时间: 2022-12-9 13:43
请问有大佬知道grub2 那个引导菜单怎么写吗?
上面写的也很简陋,我写到grub2引导失败了。
GRUB2:
chainloader (hd0,1)/test123/vdiskchain vdisk=/MyVdiskDir/Deepin.vdi.vtoy
作者: 517769154    时间: 2022-12-9 15:21
xiaojbojj 发表于 2022-11-4 00:21
vdisk 就放在你的 rEFInd 所在的分区,根目录或其它目录均可,我的是放在 EFI 目录下,但在使用如下书写格 ...

你好,我按照了你的方法,将vdiskchain 放在refind所在分区,vdisk文件放在了根目录。菜单照着你的写的。启动的时候报错了:!error:not found while loading vdiskchain 请问这个是什么原因呢?
作者: xiaojbojj    时间: 2022-12-9 15:48
517769154 发表于 2022-12-9 15:21
你好,我按照了你的方法,将vdiskchain 放在refind所在分区,vdisk文件放在了根目录。菜单照着你的写的。 ...

你把菜单贴出来看看
作者: 517769154    时间: 2022-12-9 16:26
xiaojbojj 发表于 2022-12-9 15:48
你把菜单贴出来看看

#
# refind.conf
# Configuration file for the rEFInd boot menu
#

timeout 60

dont_scan_dirs /EFI/Microsoft/Boot,/EFI/Boot,/EFI/ubuntu,/EFI/UOS,/EFI/PhoenixOS,/EFI/PhoenixOS/boot,/EFI/fydeos,/EFI/CLOVER,/EFI/kylin,/EFI/opensuse,/EFI/centos,/EFI/redflag,/EFI/RedFlag_Linux_Desktop_V11.0

#dont_scan_files

scan_all_linux_kernels false

#fold_linux_kernels false

default_selection 1

include themes/rEFInd-minimal/theme.conf

menuentry "CentOS(grub)" {
        icon /EFI/refind/icons/os_centos.png
        loader /EFI/centos/grubx64.efi
}

menuentry "vdisk" {
        icon /EFI/refind/icons/os_linux.png
        loader /EFI/vdiskchain
        options="vdisk=/myvdisk/centos7.vdi.vtoy"


vdiskchain 文件我是放在/boot/efi/EFI/
centos7.vdi.vtoy 放在/目录下的。
作者: 517769154    时间: 2022-12-9 16:28
517769154 发表于 2022-12-9 16:26
#
# refind.conf
# Configuration file for the rEFInd boot menu

options="vdisk=/myvdisk/centos7.vdi.vtoy"  这里粘错了应该是这样的
options "vdisk=/myvdisk/centos7.vdi.vtoy"
作者: xiaojbojj    时间: 2022-12-9 16:33
517769154 发表于 2022-12-9 16:26
#
# refind.conf
# Configuration file for the rEFInd boot menu

既然你的 vdiskchain 放在 /boot/efi/EFI/
那么应该写成:
loader /boot/efi/EFI/vdiskchain
你再试试
作者: xiaojbojj    时间: 2022-12-9 16:49
517769154 发表于 2022-12-9 16:28
options="vdisk=/myvdisk/centos7.vdi.vtoy"  这里粘错了应该是这样的
options "vdisk=/myvdisk/centos7 ...

这一句没问题,这两种写法都可以,是等效的
作者: 517769154    时间: 2022-12-9 17:32
本帖最后由 517769154 于 2022-12-9 17:43 编辑
xiaojbojj 发表于 2022-12-9 16:49
这一句没问题,这两种写法都可以,是等效的

我修改我的引导菜单为如下:
menuentry "vdisk" {
        icon /EFI/refind/icons/os_linux.png
        loader /boot/efi/EFI/vdiskchain
        options "vdisk=/myvdisk/centos.vdi.vtoy"
}
启动还是不行,具体报错是:
starting vdiskchain
using load  options 'vdisk=/myvdisk/centos.vdi.vtoy'
invalid loader file!
error:not fonud while loading vdiskchain


作者: xiaojbojj    时间: 2022-12-9 17:43
517769154 发表于 2022-12-9 17:32
我修改我的引导菜单为如下:
menuentry "vdisk" {
        icon /EFI/refind/icons/os_linux.png

从报错信息来分析,现在 vdiskchain 已正常启动,错误有可能是你的 .vtoy 文件本身有错,或者是路径书写时有误
作者: 517769154    时间: 2022-12-9 17:44
xiaojbojj 发表于 2022-12-9 17:43
从报错信息来分析,现在 vdiskchain 已正常启动,错误有可能是你的 .vtoy 文件本身有错,或者是路径书写 ...

好的,谢谢了。请问你是这样启动成功过的对吧
作者: xiaojbojj    时间: 2022-12-9 18:12
517769154 发表于 2022-12-9 17:44
好的,谢谢了。请问你是这样启动成功过的对吧

我装的是 deepin,启动正常。
再者,ventoy 的作者也提醒过,虚拟磁盘必须是固定大小的,不能使用动态扩展的格式。
希望你能成功
作者: xiaojbojj    时间: 2022-12-9 20:52
517769154 发表于 2022-12-9 17:44
好的,谢谢了。请问你是这样启动成功过的对吧

刚才又试了一下,严格按照 Ventoy 官网教程装了一个 CentOS7,使用 rEFInd 引导成功。
镜像文件是:CentOS-7-x86_64-Minimal-2009.iso
作者: 517769154    时间: 2022-12-12 09:35
xiaojbojj 发表于 2022-12-9 20:52
刚才又试了一下,严格按照 Ventoy 官网教程装了一个 CentOS7,使用 rEFInd 引导成功。
镜像文件是:Cent ...

谢谢,麻烦了,我也是用的这个版本,我做好镜像之后,用U盘引导了一遍。是可行的。然后用refind引导就不行。我再试试呢。
作者: abovo484    时间: 2022-12-12 11:39
517769154 发表于 2022-12-9 17:32
我修改我的引导菜单为如下:
menuentry "vdisk" {
        icon /EFI/refind/icons/os_linux.png

error:not fonud while loading vdiskchain
是没有找到vdiskchain,如果你接解压出来的是个目录,那么应该是vdiskchain/vdiskchain
作者: abovo484    时间: 2022-12-12 11:40
abovo484 发表于 2022-12-12 11:39
error:not fonud while loading vdiskchain
是没有找到vdiskchain,如果你接解压出来的是个目录,那么应 ...

loader /boot/efi/EFI/vdiskchain/vdiskchain
具体看文件在哪里
作者: 517769154    时间: 2022-12-12 11:42
本帖最后由 517769154 于 2022-12-12 11:43 编辑
abovo484 发表于 2022-12-12 11:39
error:not fonud while loading vdiskchain
是没有找到vdiskchain,如果你接解压出来的是个目录,那么应 ...

vdiskchain解压出来是一个二进制文件。我刚刚又做了一遍镜像。还是相同的报错。不知道什么原因,制作镜像的流程是安装ventoy官网走的。难道是因为我在windows下面解压的vdiskchain,再传到linux下面的。需要我直接在linux下面解压?
作者: 517769154    时间: 2022-12-12 11:49
abovo484 发表于 2022-12-12 11:40
loader /boot/efi/EFI/vdiskchain/vdiskchain
具体看文件在哪里

我把镜像文件和vdiskchain都放在centos的根目录下面的
作者: abovo484    时间: 2022-12-12 12:14
517769154 发表于 2022-12-12 11:49
我把镜像文件和vdiskchain都放在centos的根目录下面的

直接解压成一个目录,目录里有个vdiskchain文件,路径就是这个文件的路径
比如
vdiskchain文件夹放在efi目录
loader /EFI/vdiskchain/vdiskchain
作者: 517769154    时间: 2022-12-12 13:53
xiaojbojj 发表于 2022-12-9 20:52
刚才又试了一下,严格按照 Ventoy 官网教程装了一个 CentOS7,使用 rEFInd 引导成功。
镜像文件是:Cent ...

哥,方便贴一下引导菜单吗,我搞得没思路了。感觉自己没有错的,镜像从U盘是可以启动的。唯一怀疑就是centos的文件系统格式不支持ventoy启动。我是在一个已经装好的centos7上面把引导器改为refind,然后把镜像放在centos的文件系统上。
作者: 517769154    时间: 2022-12-12 14:18
abovo484 发表于 2022-12-12 12:14
直接解压成一个目录,目录里有个vdiskchain文件,路径就是这个文件的路径
比如
vdiskchain文件夹放在ef ...

我试了一下,还是之前的那种报错呢
作者: abovo484    时间: 2022-12-12 16:17
    loader /EFI/vdiskchain/vdiskchain
    options "vdisk=/backup/vhdx/ubuntu.vhd.vtoy"

文件位置



作者: 517769154    时间: 2022-12-12 17:07
abovo484 发表于 2022-12-12 16:17
loader /EFI/vdiskchain/vdiskchain
    options "vdisk=/backup/vhdx/ubuntu.vhd.vtoy"

我的跟你没什么区别呢。只是vdisk文件目录不一样,有点奇怪,我现在尝试用ntfs来装vdisk
作者: 517769154    时间: 2022-12-12 17:08
本帖最后由 517769154 于 2022-12-12 17:10 编辑
abovo484 发表于 2022-12-12 16:17
loader /EFI/vdiskchain/vdiskchain
    options "vdisk=/backup/vhdx/ubuntu.vhd.vtoy"
您是使用的ntfs文件系统还是什么呢?
作者: abovo484    时间: 2022-12-12 17:16
517769154 发表于 2022-12-12 17:08
您是使用的ntfs文件系统还是什么呢?

镜像分区是nfts,eps分区默认的
作者: 517769154    时间: 2022-12-12 18:07
abovo484 发表于 2022-12-12 17:16
镜像分区是nfts,eps分区默认的

终于引导起来了,谢谢了。应该是centos的根目录是lvm做的,导致引导不起来。
作者: abovo484    时间: 2022-12-13 00:36
517769154 发表于 2022-12-12 18:07
终于引导起来了,谢谢了。应该是centos的根目录是lvm做的,导致引导不起来。

恭喜
作者: 517769154    时间: 2022-12-13 11:35
abovo484 发表于 2022-12-13 00:36
恭喜

谢谢了
作者: 2012dimliy    时间: 2023-8-31 16:41
学习了,在本帖中学习到,refind设置成功,deepin正常启动!
作者: nowayer    时间: 2023-11-30 07:32
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 无忧启动论坛 (http://bbs.c3.wuyou.net/) Powered by Discuz! X3.3