我的磁盘中已经安装了win7 c:
,文件系统格式是ntfs,还有一个磁盘e:
(fat32格式),我已经在中下载了grub4dos,和initrd.gz
,vmlinuz
和。debian7.5.iso
c:
编辑
boot.ini
[boot loader] [operating systems] c:\grldr.mbr="Grub4dos"
编辑
menu.lst
title Install Debian 7.5 kernel (hd0,0)/vmlinuz initrd (hd0,0)/initrd.gz boot
当我重新启动电脑时,我可以进入 grub ui,单击“安装 Debian 7.5”,出现错误:
kernel (hd0,0)/vmlinuz file not found.
可能是文件系统格式的原因,在ntfs下debian7.5.iso
无法vmlinuz
读取initrd.gz
,所以我把文件剪切到e:
磁盘中,现在该如何编辑呢menu.lst
?
这是一个打字错误,我已修复。
答案1
(hdD,P)
意思是“硬盘(因此高清) 设备 → 设备编号D
→ 分区编号P
"。GRUB 对设备 (在其类别内) 和分区 (设备内) 进行编号,从 0 开始。
在 initrd 映像的条目中您做对了:(hd0,0)
选择了第一个硬盘设备的第一个分区,但是在内核的条目中您由于某种原因删除了分区号,并且(hd0,)
没有意义((hd0)
确实有意义但它指的是整个设备,如果您的设备有分区,您就不想要它)。
所以我认为解决办法是改变
kernel (hd0,)/vmlinuz
到
kernel (hd0,0)/vmlinuz
请注意,此更改应修复卷的情况C:
。如果您希望此更改应用于卷,E:
则必须推断卷E:
使用的硬盘驱动器及其上的分区号,然后将其修复为(hd0,0)
类似以下内容(hd0,2)
。
要获取此信息,最简单的方法(可能)是使用diskpart
Windows 工具:
- 启动命令提示符,
cmd.exe
(可能具有提升的权限 - 我不确定)。 跑去
diskpart
它为你提供了自己的 shell,你可以在其中执行命令。你可以随时输入
help
并按回车键来获取帮助。diskpart
接下来的步骤在的 shell中进行。跑步
list disk
获取连接到计算机的磁盘的编号列表。它们以 0 开始索引,非常方便 — GRUB 正是使用这个索引。
跑步
select disk N
N
您要更改工具的磁盘数量在哪里语境到该磁盘。跑步
list partition
获取所选磁盘的分区列表。请注意,分区从 1 开始编号。
跑步
select partition M
将工具的上下文更改为分区号
M
选定磁盘。跑步
detail partition
获取所选分区的详细信息,包括其所属的卷号。
重复上述步骤,直到找到卷的分区
E:
。完成后,您将获得两个数字来构建规范(hdD,P)
。
您可以diskpart
输入 来退出exit
。