我下载了 GParted live archive 并将其解压到 /dev/sda4。 GParted 指南解释了使用 grub 的安装,但由于我没有使用 grub,所以我想尝试一下向 rEFInd 添加手动条目。这就是实践树。
NAME MOUNTPOINT LABEL SIZE TYPE FSTYPE
sda 111.8G disk
├─sda1 Recovery 499M part ntfs
├─sda2 99M part vfat
├─sda3 16M part
├─sda4 ARCH_202104 16.1G part vfat
└─sda5 Data 95.1G part ntfs
sdb 931.5G disk
├─sdb1 1M part
├─sdb2 15M part
├─sdb3 Main 833.8G part ntfs
└─sdb4 /mnt/ArchData 97.7G part ext4
nvme0n1 931.5G disk
├─nvme0n1p1 16M part
├─nvme0n1p2 Main M.2 433G part ntfs
└─nvme0n1p3 / Arch 494.6G part ext4
rEFInd 已安装sda2
,GParted 已打开sda4(ARCH_202104)
,并且refind.conf
我添加了一个条目,如下所示:
menuentry "GParted Live" {
icon /EFI/refind/icons/os_linux.png
volume "ARCH_202104"
loader /live/vmlinuz
initrd /live/initrd.img
options "root=/dev/sda4 rw add_efi_memmap"
}
从 rEFInd 中的新条目重新启动和引导会产生错误Invalid loader file. Error not found while loading.
,并将我拉回 rEFInd 加载程序。最后,我让 rEFInd 本身扫描新条目,它正确添加它并且我可以启动 GParted,但是当我手动添加该节时它不起作用。我想知道我犯了什么错误?
答案1
根据https://gparted.org/livehd.php字符串options
应该更长一些。就像是:
options "boot=live config union=overlay username=user components noswap noeject vga=788 ip= net.ifnames=0 live-media-path=/live bootfrom=/dev/sda4 toram=filesystem.squashfs"
该错误似乎表明/live/vmlinuz
未找到。确保您的/dev/sda4
文件系统包含一个名为 的目录live
,并且它包含文件vmlinuz
和initrd.img
.如果我理解正确的话,filesystem.squashfs
同一目录中应该还有一个名为的文件。文件的位置filesystem.squashfs
由两部分给出:live-media-path=
选项中的目录和toram=
选项中的文件名。
如果vmlinuz
和initrd.img
文件位于其他位置,请确保 和 行上的路径名与loader
实际initrd
路径名(相对于该行标识的文件系统的根)相匹配volume
。同样,如果filesystem.squashfs
文件位于不同位置或名称不同,请调整该options
行以匹配实际情况。
大胆猜测,如果 GParted Live 的 Linux 内核启动成功,但找不到该filesystem.squashfs
文件,您可以尝试将行bootfrom=
中的部分调整options
为bootfrom=LABEL=ARCH_202104
.如果 GParted 的内核以不同的顺序检测到您的磁盘,这可能有帮助,也可能没有帮助。
因为您的文件系统类型似乎是 VFAT,所以它应该不区分大小写...但 rEFInd 使用 UEFI 固件的文件系统支持,并且已知某些 UEFI 固件实现会出现不区分大小写的错误。如果您可以看到自动检测到的版本,请使用与其完全相同的字符大小写。