无忧启动论坛

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

[求助] GRLDR能引导UD区外的第二个分区吗?

[复制链接]
跳转到指定楼层
1#
发表于 2012-1-17 19:37:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=205307&;extra=page%3D1我想用UD区的内置GRLDR菜单来启动可见区的USB系统,求高手帮忙,谢谢了,GRUB4DOS版高手如云,请求帮助,
下图是USB系统区的启动文件

[ 本帖最后由 yuan-0918 于 2012-1-18 11:04 编辑 ]
2#
发表于 2012-1-17 20:03:29 | 只看该作者
应该可以吧
(ud)表示ud区,(cd)表示光盘,改成你需要的就可以了吧,或者用(),不管什么区都可以。
回复

使用道具 举报

3#
 楼主| 发表于 2012-1-17 20:58:11 | 只看该作者
title 【10】    启动         USB XP系统
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
map (hd1) ()
map () (hd1)
map --rehook
checkrange 0x21 read 0x8280 && cat --locatei=\"echo (hd1,2)/windows/system32/$winnt$.inf > nul
checkrange 0x21 read 0x8280 && cat --skip=%?% (hd1,2)/windows/system32/$winnt$.inf | set isopath=
checkrange 0x21 read 0x8280 && if exist %isopath% map --mem %isopath:~6,-1% (0xff) && map --rehook
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
chainloader /ntldr || chainloader /bootmgr


试着上面这样做不成功,启动了电脑上的XP

注意是把可见区再分两个区,启动后一区,请各位大师帮下忙。。。。。。。
回复

使用道具 举报

4#
 楼主| 发表于 2012-1-18 08:30:24 | 只看该作者
不点大师说
grldr 是根据中国 DOS 联盟上的一位会员的想法而做出来的。我也忘记了他是谁。

做成 grldr 起初是很困难的一件事。主要困难在于,如何让 BOOT.INI 来启动它。通过试验发现 BOOT.INI 有 8192 字节的启动秘密,后来还发现在偏移 0x200 以后的若干个字节区域有“跳转”秘密。

上面是BOOT。INI启动GRLDR,我现在要GRLDR启动BOOT。INI行吗?继续求助
回复

使用道具 举报

5#
发表于 2012-1-18 09:55:23 | 只看该作者

回复 #4 yuan-0918 的帖子

先把顺序理清了  boot.ini是ntldr必须的  只能是grldr启动nrldr   ntldr再调用boot.ini
回复

使用道具 举报

6#
 楼主| 发表于 2012-1-18 10:59:37 | 只看该作者

回复 #5 sratlf 的帖子

版主帮下忙,请问如何写菜单啊

[ 本帖最后由 yuan-0918 于 2012-1-18 11:10 编辑 ]
回复

使用道具 举报

7#
发表于 2012-1-18 11:33:08 | 只看该作者
GRLDR绝对启动不了BOOT.INI,在现阶段或者相当长一个阶段,也是连想都不要想了。
回复

使用道具 举报

8#
发表于 2012-1-24 01:17:05 | 只看该作者
原帖由 yuan-0918 于 2012-1-17 20:58 发表
title 【10】    启动         USB XP系统
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
map (hd1) ()
map () (hd1)
map --rehook
checkrange 0x21 read 0x8280 && cat - ...

这么复杂啊?
我想能启动电脑本地的,就说明已经成功了。毛病也许是重名了。
也许可以试试把USB上系统的ntldr 改名为其他,例如 utldr,
再把菜单的ntldr改了就是。
或者在find 语句中查找对象改为 USB系统中特有的,可以自己建立一个,本地硬盘没有的文件试试看。

[ 本帖最后由 2011niumao 于 2012-1-24 01:18 编辑 ]
回复

使用道具 举报

9#
发表于 2012-1-24 01:20:27 | 只看该作者
原帖由 yuan-0918 于 2012-1-17 20:58 发表
title 【10】    启动         USB XP系统
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
map (hd1) ()
map () (hd1)
map --rehook
checkrange 0x21 read 0x8280 && cat - ...

感觉最后两句就够了,其余的不懂有什么作用。
在我的电脑上就只要最后两句。另外要加上boot一句。试试

find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr
chainloader /ntldr || chainloader /bootmgr
boot

[ 本帖最后由 2011niumao 于 2012-1-24 01:21 编辑 ]
回复

使用道具 举报

10#
发表于 2012-1-24 10:47:13 | 只看该作者

回复 #9 2011niumao 的帖子

find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr

#   在所有磁盘类设备的根目录下寻找 ntldr文件,并将找到的设备设置为根,如果失败,则在所有磁盘类设备的根目录下寻找 bootmgr文件,并将找到的设备设置为根
chainloader /ntldr || chainloader /bootmgr
#   加载引导文件ntldr,如果失败,则加载引导文件bootmgr
boot
#   确定进行启动,菜单中可以省略该句,命令行模式下不可省略
回复

使用道具 举报

11#
发表于 2012-1-24 11:07:55 | 只看该作者

回复 #5 sratlf 的帖子

开始有点乱,一看完这句清晰了
回复

使用道具 举报

12#
发表于 2012-1-24 11:21:41 | 只看该作者
原帖由 <i>2011phzhc</i> 于 2012-1-24 10:47 发表 <a href="http://bbs.wuyou.net/redirect.php?goto=findpost&pid=2376046&ptid=205308" target="_blank"><img src="http://bbs.wuyou.net/images/common/back.gif" border="0" onload="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized=true; this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {return true;} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /></a><br />
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr<br />
<br />
#   在所有磁盘类设备的根目录下寻找 ntldr文件,并将找到的设备设置为根,如果失败,则在所有磁盘类设备的根目录下寻找 boot ...
<br />

--devices=h,他会搜索硬盘和USB设备吧?估计先启动的就是HD0,0上的系统,不会启动他USB上的系统,我觉得加一句寻找特定文件的语句是否可行?
比如在U盘根目录让一个特定文件,如 test.ini 开始加一句  find --set-root /test.ini
这样是不就会将有TEST.INI的设备设置为默认的了,然后菜单就不用--set-root --devices=h 这个命令了吧?或者更改NTLDR的名字,菜单也更改一下
回复

使用道具 举报

13#
发表于 2012-1-24 14:18:48 | 只看该作者
原帖由 2011phzhc 于 2012-1-24 10:47 发表
find --set-root --devices=h /ntldr || find --set-root --devices=h /bootmgr

#   在所有磁盘类设备的根目录下寻找 ntldr文件,并将找到的设备设置为根,如果失败,则在所有磁盘类设备的根目录下寻找 boot ...


哦。谢谢解释。

楼主原来的菜单里,find语句出现了两次,应该一次就够了。

我这儿用的是移动硬盘,不是优盘。情况可能不一样的。

感觉上用移动硬盘比较容易也比较快。

不过我也不用find语句。都是用root语句手工指定。

root (hd0,1)

或者

root (hd1,1)

这个方式能否适合于优盘呢?建议楼主试试。

注意第一个硬盘编号为0,第一个分区标号也为0。

上述(hd0,1) 1指的是第二个分区。第一个0指第一个硬盘。

在命令行下用 ls 命令查看一下优盘是hd0还是hd1就知道了。

[ 本帖最后由 2011niumao 于 2012-1-24 14:39 编辑 ]
回复

使用道具 举报

14#
发表于 2012-1-24 14:36:43 | 只看该作者
此外USBXP系统也许会有问题。推荐使用(我用的)LPC这个,推荐在移动硬盘上用:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=162080&page=73#pid2373634
回复

使用道具 举报

15#
发表于 2012-1-24 14:54:50 | 只看该作者
”......注意是把可见区再分两个区,启动后一区,.....“

那么实际是要启动第三个分区,这个分区在WINDOWS下也是不可见的吧??
回复

使用道具 举报

16#
 楼主| 发表于 2012-1-29 17:59:37 | 只看该作者

回复 #15 zqywult 的帖子

是的,不可见。。。。。。。。。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-12-3 03:51

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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