无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 6686|回复: 10
打印 上一主题 下一主题

[讨论] 无盘计算机从LINUX服务器上PXE启动碰到的问题

[复制链接]
跳转到指定楼层
1#
发表于 2012-4-27 12:28:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我在一台UBUNTU服务器上安装了DHCP服务与TFTP服务,将grldr、menu.lst、0pe.iso这三个文件放入tftp根目录内,并赋予777文件属性,如下图一:



我编辑DHCP服务的配置文件,使其配置如下图二:



在确认DHCP服务与TFTP服务都正确启动后,我用一个未挂载硬盘的虚拟机测试PXE启动,虚拟机顺利连接上UBUNTU服务器并加载grldr文件,如图三:



接下来,我希望在GRUB4DOS环境下,加载服务器“/tftpboot”目录下面的0pe.iso,我的启动项如下图四:



我卡在引导服务器上的0pe.iso镜像的部分,grldr返回“error 15:file not found”的错误提示,如下图五:



我不知道是我的命令还是服务器路径有问题,请大家帮忙看看,谢谢了。

[ 本帖最后由 2012fastdie 于 2012-4-27 12:57 编辑 ]
2#
发表于 2012-4-27 13:26:30 | 只看该作者
如果不是文件名大小写问题,试试将 PXE KEEP放到TITLE前面看看。
回复

使用道具 举报

3#
 楼主| 发表于 2012-4-27 14:12:27 | 只看该作者
原帖由 xianglang 于 2012-4-27 13:26 发表
如果不是文件名大小写问题,试试将 PXE KEEP放到TITLE前面看看。


感谢关注,已经尝试调整"PXE KEEP"语句位置到TITLE前,但是问题没有解决。
回复

使用道具 举报

4#
 楼主| 发表于 2012-4-27 14:22:48 | 只看该作者
将图四的代码添加到本机硬盘的grldr引导文件中,重新启动后选择用该段代码引导,grldr返回“error 23”的错误提示,受条件限制无法截图。

我下载最新的0.45C版本grldr文件来执行操作,错误依旧;查看grub4dos相关文档,只找到了启动软盘镜像的例子。

请有PXE启动经验的朋友赐教,谢谢了。
回复

使用道具 举报

5#
发表于 2012-4-27 14:59:16 | 只看该作者
把"pxe basedir /tftpboot“去掉就可以了。

如果你一定要写,也是相对tftp设置的目录而言的,改成pxe basedir /
回复

使用道具 举报

6#
 楼主| 发表于 2012-4-27 16:26:00 | 只看该作者
原帖由 zhaohj 于 2012-4-27 14:59 发表
把"pxe basedir /tftpboot“去掉就可以了。

如果你一定要写,也是相对tftp设置的目录而言的,改成pxe basedir /


我重命名了ISO文件,并且按照你的方式修改了menu.lst,并且重新上传了grldr文件及menu.lst文件,下图是我的菜单截图:



做完以上工作之后,我使用虚拟机测试,结果虚拟机启动后就一直在滚屏,不能进入grub菜单,错误截图如下:



百思不得其解,继续求指导。
回复

使用道具 举报

7#
发表于 2012-4-27 16:58:24 | 只看该作者
不能进入grub菜单,那我还是怀疑你的TFTP有问题,或者网络环境不好。
1楼的图至少能出菜单,6楼怎么菜单也出不了?
”cannot open bootflile“,这句话明显是dhcp或tftp配置出现问题。
回复

使用道具 举报

8#
发表于 2012-4-27 19:22:31 | 只看该作者
属于 “ 自扰 ” 的结果。抱歉,这话不是贬义,不要多心。

pxe detect 语句通常只用在 preset menu 中,不可以随意滥用。

遇到这条命令,都会再次查找和执行服务器端的 menu 文件。

所以你遇到了无限循环。这就是 pxe detect 语句 “ 自扰 ” 的结果。

menu.lst 中不要带上 pxe detect。实在想用它的话,也不要用在 title 之前。

[ 本帖最后由 不点 于 2012-4-27 20:23 编辑 ]
回复

使用道具 举报

9#
发表于 2012-4-27 20:11:34 | 只看该作者
下载官方发布的grub4dos压缩包,里面有grldr和样例menu.lst。可直接用这两个现成文件。
这个menu.lst中假定iso是在0PE目录的,自己移动iso位置或修改menu.lst里面的目录使之与iso位置对应即可。
回复

使用道具 举报

10#
 楼主| 发表于 2012-4-28 12:55:17 | 只看该作者
原帖由 不点 于 2012-4-27 19:22 发表
属于 “ 自扰 ” 的结果。抱歉,这话不是贬义,不要多心。

pxe detect 语句通常只用在 preset menu 中,不可以随意滥用。

遇到这条命令,都会再次查找和执行服务器端的 menu 文件。

所以你遇到了无限循 ...


感谢回复。我重新调整了服务器上的menu.lst文件,如下图:



启动虚拟机测试之后,虚拟机PXE启动并从服务器上的grldr文件引导载入menu.lst,并顺利载入ISO镜像文件,结果停止在下面这个情况:



重新用物理机测试了一下,发现这个是虚拟机的问题;物理机设置网卡PXE启动之后顺利地加载启动了0pe.iso 。稍晚一些时候,我多换几个硬件平台测试PXE启动。

简单总结:

一、 把grldr、menu.lst、ISO文件放到UBUNTU服务器的tftp服务的根目录下;
二、 在UBUNTU服务器的DHCP配置文件中指定pxe远程启动文件;
三、 编辑服务器上的menu.lst文件如上图;
四、 用物理机测试。

[ 本帖最后由 2012fastdie 于 2012-4-28 13:31 编辑 ]
回复

使用道具 举报

11#
 楼主| 发表于 2012-4-28 13:33:44 | 只看该作者
原帖由 pseudo 于 2012-4-27 20:11 发表
下载官方发布的grub4dos压缩包,里面有grldr和样例menu.lst。可直接用这两个现成文件。
这个menu.lst中假定iso是在0PE目录的,自己移动iso位置或修改menu.lst里面的目录使之与iso位置对应即可。


感谢回复,问题已解决。晚一些时候我会将帖子整理出一个教程,希望能够帮助到更多刚刚接触grub4dos与pxe启动的朋友。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-19 18:13

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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