中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-25 03:46
中国DOS联盟论坛 » GRUB4DOS、SYSLINUX及其它启动管理软件讨论专区 » 请教:关于用syslinux引导grub4dos的问题。 查看 2,117 回复 7
楼 主 请教:关于用syslinux引导grub4dos的问题。 发表于 2008-01-03 14:29 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
请教:关于用syslinux引导grub4dos的问题。



据说u盘启动的,采用syslinux的兼容性不错。因此考虑采用syslinux来加载gghost.img.
试了一下,发现加载非标准镜像的速度特别慢。而且对img的要求比较严格,我的gghost.img载入后提示不能启动。

于是就想到用syslinux引导grub后启动img。

试了一下, 用
label 1
KERNEL grub.exe

可以启动grub,可是却找不到放在u盘根目录的menu.lst,从而直接进入了命令行。【通过菜单内置解决了找不到菜单问题,请问此时,假如不内置的话,如何设置才能找到菜单文件?】

假如用syslinux能直接引导grldr,就能解决找不到根目录的菜单问,于是翻了帖子,看到bean有一个帖子"在grub2-syslinux里引导grub4dos和ntldr"介绍了syslinux引导grub4dos,于是下载了文件loadbin.bin,根据里面的说明写入了syslinux.cfg,
kernel loadbin.bin
append initrd=grldr

可是运行后提示找不到linux,不知何故?也不清楚哪里用错了。

请知道的人指教。


u盘启动方式很多,也不清楚到底哪种方式兼容性最好。
Windows 一键还原
http://www.yjhy.com
2 发表于 2008-01-03 15:51 ·  中国 福建 厦门 电信
中级用户
★★
积分 480
发帖 197
注册 2006-09-20 00:40
19年会员
UID 63115
来自 黄冈
状态 离线
label 1
KERNEL grub.exe

menu.lst是否和grub.exe放在同一目录?




第二种方法提示找不到linux,你的syslinux用的是什么版本,试看看debug版本会出现些什么提示,还有就是syslinux.cfg配置是什么样的
3 发表于 2008-01-03 16:06 ·  中国 河南 南阳 联通
银牌会员
★★★★
不甘寂寞的人
积分 2,491
发帖 1,115
注册 2003-09-24 00:00
22年会员
UID 10292
性别 男
状态 离线
通过 grub.exe 启动的,好像就没有默认的“当前设备”了,所以,就找不到 menu.lst 了。不过,你可以用

label 1
KERNEL grub.exe --config-file=(fd0)/menu.lst

或者类似的参数,来指定菜单文件。
因为我们亲手创建,这个世界更加美丽。
4 发表于 2008-01-03 17:07 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
Originally posted by barton at 2008-1-3 15:51:
label 1
KERNEL grub.exe

menu.lst是否和grub.exe放在同一目录?




第二种方法提示找不到linux,你的syslinux用的是什么版本,试看看debug版本会出现些什么提示,还有就是syslinux.cfg配置是什么样的


在同一目录,试过readme中提到的都不行,看来就是不点讲的不存在当前设备了。

考虑了指定fd0,但是会不会变成是hd0? 不会的话倒没问题,若可能成了(hd0,0),如何解决比较有通用性?

syslinux版本是3.51的。以前下的,用过一次,加载img太慢就没用了。今天有人要u盘启动gghost,试用dos启动不行,所以就想到兼容性好的sysliinux了。

(DOS file) .\menu.lst, the MENU.LST in the current dir.

(DOS file) \menu.lst, the MENU.LST in the root dir of
the current drive.
(GRUB file) /menu.lst, the MENU.LST in the root dir of
the boot device.
Windows 一键还原
http://www.yjhy.com
5 发表于 2008-01-03 17:23 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
Originally posted by barton at 2008-1-3 15:51:
试看看debug版本会出现些什么提示,还有就是syslinux.cfg配置是什么样的


用法是bean的帖子里写的。

kernel loadbin.bin
append initrd=grldr

文件文件都没找到,换debug版本的grldr也没用吧。
个人理解这是syslinux没引导成功grldr。
应是kernel loadbin.bin未执行成功。
Windows 一键还原
http://www.yjhy.com
6 发表于 2008-01-03 20:51 ·  中国 福建 厦门 海沧区 电信
中级用户
★★
积分 480
发帖 197
注册 2006-09-20 00:40
19年会员
UID 63115
来自 黄冈
状态 离线
Originally posted by 不点 at 2008-1-3 16:06:
通过 grub.exe 启动的,好像就没有默认的“当前设备”了,所以,就找不到 menu.lst 了。不过,你可以用

label 1
KERNEL grub.exe --config-file="(fd0)/menu.lst"

或者类似的参数,来指定菜单文件。


看看不点说的或者下面这个是否找到菜单

label 1
KERNEL grub.exe
APPEND --config-file="(fd0)/menu.lst"




我说的debug版本是syslinux的,o(∩_∩)o... 好像只有isolinux有debug版本

[ Last edited by barton on 2008-1-4 at 03:00 PM ]
7 发表于 2008-01-04 07:39 ·  中国 安徽 马鞍山 电信
金牌会员
★★★★
积分 3,946
发帖 1,884
注册 2006-01-20 13:00
20年会员
UID 49283
性别 男
状态 离线
Originally posted by barton at 2008-1-3 20:51:
看看不点说的或者下面这个是否找到菜单
label 1
KERNEL grub.exe
APPEND --config-file=(fd0)/menu.lst
我说的debug版本是syslinux的,o(∩_∩)o... 好像只有isolinux有debug版本

不好意思,我对syslinux了解很少,是拿来主义。呵呵。
除了照猫画虎,其他的不会。

假如是会不会启动后是HD0? 假如会的话,如何处理妥当些?
Windows 一键还原
http://www.yjhy.com
8 发表于 2008-01-04 14:58 ·  中国 福建 电信
中级用户
★★
积分 480
发帖 197
注册 2006-09-20 00:40
19年会员
UID 63115
来自 黄冈
状态 离线
syslinux我也只是用其中的isolinux和pxelinux而已, 和grub4dos用法很类似

但是对于U盘被识别为fd或者hd的问题,可以用grub的find来定位看看是否可行,syslinux好像也没办法解决这个问题

(syslinux里是根据是否有 " / " 符号来确定是否是当前设备根目录,不带任何符号表示在isolinux/pxelinux文件夹内-相对路径, syslinux.exe-syslinux.com没用过,不明)

你看看下面的这个用法是否可以奏效

label 1
KERNEL grub.exe
APPEND --config-file="find --set-root /gghost.txt;configfile /menu.lst;boot"



如果不成功就考虑用内置菜单吧

:-)

[ Last edited by barton on 2008-1-4 at 03:21 PM ]
论坛跳转: