无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 5371|回复: 10
打印 上一主题 下一主题

[求助] 请问用G4D引导从ipxe启动,ipxe获取DHCP失败后如何自动引导硬盘第一个分区的XP呢?

[复制链接]
跳转到指定楼层
1#
发表于 2014-5-10 08:44:04 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
大家好,我在一块硬盘上划分了两个分区,在(hd0,0)安装了XP,在(hd0,1)的根目录下放了ipxe.krn文件用以ipxe启动。现在默认设为ipxe启动。但是我希望在ipxe失败后能够自动切换到(hd0,0)上的XP启动

menu.lst的内容是

timeout 5

title ipxe
root (hd0,1)
kernel /ipxe.krn

title Windows XP
root (hd0,0)
chainloader +1
11#
 楼主| 发表于 2014-5-15 16:44:19 | 只看该作者
kennedy_98 发表于 2014-5-15 16:40
我觉得你如果默认第一个就起ipxe且启动成功之后,无论能不能链接到DHCP都不可能转而去启动本地xp了

恩,您说对。我现在正在尝试在ipxe代码的结尾,移植grub4dos中的一些代码。但是grub4dos的代码看的云里雾里的。
回复

使用道具 举报

10#
发表于 2014-5-15 16:40:29 | 只看该作者
wqlyyy 发表于 2014-5-12 09:05
感谢您的回复,但是ipxe要是获取不到DHCP的地址,会现实reboot and select proper boot device or insert ...

我觉得你如果默认第一个就起ipxe且启动成功之后,无论能不能链接到DHCP都不可能转而去启动本地xp了

点评

恩,您说对。我现在正在尝试在ipxe代码的结尾,移植grub4dos中的一些代码。但是grub4dos的代码看的云里雾里的。  详情 回复 发表于 2014-5-15 16:44
回复

使用道具 举报

9#
 楼主| 发表于 2014-5-12 09:05:59 | 只看该作者
pseudo 发表于 2014-5-11 20:25
试试这样:
timeout 5
title [0]ipxe

感谢您的回复,但是ipxe要是获取不到DHCP的地址,会现实reboot and select proper boot device or insert boot media in selected boot device and press a key。这里应该是BIOS的打印了吧?启动控制权是不是又回到BIOS的手中了?

点评

我觉得你如果默认第一个就起ipxe且启动成功之后,无论能不能链接到DHCP都不可能转而去启动本地xp了  详情 回复 发表于 2014-5-15 16:40
回复

使用道具 举报

8#
发表于 2014-5-11 20:25:31 | 只看该作者
本帖最后由 pseudo 于 2014-5-11 20:53 编辑

试试这样:
timeout 5
title [0]ipxe
root  (hd0,1)
kernel /ipxe.krn || goto 1

title [1]Windows XP
root (hd0,0)
chainloader +1

不过,kernel /ipxe.krn只是加载ipxe.krn,一般只有不存在(hd0,1)/ipxe.krn才会失败,才会转到title [1]。

如果存在(hd0,1)/ipxe.krn,一般会加载成功,ipxe.krn获得控制权,然后就是ipxe的天下了。
然后ipxe运行过程即使遇到问题,也是死机、重启之类的下场,
估计再没机会回到grub4dos,谈不上由grub4dos转xp。
要转xp也得由ipxe本身去转。

点评

感谢您的回复,但是ipxe要是获取不到DHCP的地址,会现实reboot and select proper boot device or insert boot media in selected boot device and press a key。这里应该是BIOS的打印了吧?启动控制权是不是又回到B  详情 回复 发表于 2014-5-12 09:05
回复

使用道具 举报

7#
 楼主| 发表于 2014-5-11 16:33:41 | 只看该作者
不点 发表于 2014-5-11 00:20
加号与1之间没有空格。

您好,我去掉了fallback +1中,+和1中间的那个空格。还是有问题。还是现实同样的错误。会是grldr有问题吧。
回复

使用道具 举报

6#
 楼主| 发表于 2014-5-11 15:24:26 | 只看该作者

不好意思,刚刚误会您的意思啦。我加了空格。我马上改一下。
回复

使用道具 举报

5#
 楼主| 发表于 2014-5-11 14:51:10 | 只看该作者
不点 发表于 2014-5-11 00:20
加号与1之间没有空格。

有啊

点评

不好意思,刚刚误会您的意思啦。我加了空格。我马上改一下。  详情 回复 发表于 2014-5-11 15:24
回复

使用道具 举报

4#
发表于 2014-5-11 00:20:07 | 只看该作者
加号与1之间没有空格。

点评

您好,我去掉了fallback +1中,+和1中间的那个空格。还是有问题。还是现实同样的错误。会是grldr有问题吧。  详情 回复 发表于 2014-5-11 16:33
有啊  详情 回复 发表于 2014-5-11 14:51
回复

使用道具 举报

3#
 楼主| 发表于 2014-5-10 22:19:49 | 只看该作者
不点 发表于 2014-5-10 21:11
楼主兄弟,你的 ipxe 菜单命令有错,当然会失败。root  (hd0,1) 的左括号是中文字符,肯定不行。应该换成 ...

您好,那个左括弧是我打错了。
可是我按您的方法添加了fallback + 1好像出现了。Error 23: Error while parsing number的错误。
回复

使用道具 举报

2#
发表于 2014-5-10 21:11:20 | 只看该作者
楼主兄弟,你的 ipxe 菜单命令有错,当然会失败。root  (hd0,1) 的左括号是中文字符,肯定不行。应该换成英文字符。

添加一条 fallback +1 命令,那么失败后会自动跳到下一个启动项目上。菜单如下,你可以试试:

timeout 5

title ipxe
fallback +1
root  (hd0,1)
kernel /ipxe.krn

title Windows XP
root (hd0,0)
chainloader +1

点评

您好,那个左括弧是我打错了。 可是我按您的方法添加了fallback + 1好像出现了。Error 23: Error while parsing number的错误。  详情 回复 发表于 2014-5-10 22:19
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-27 12:35

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表