无忧启动论坛

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

Q: 如何用grub4dos快速启动XP/Win7系统?

[复制链接]
31#
发表于 2009-8-21 14:47:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

32#
发表于 2009-8-21 15:29:55 | 只看该作者
虚拟软盘方式启动后要修改bcd菜单就比较麻烦了,先要挂载虚拟软驱,用bcdedit命令时还要用store参数指定bcd文件路径
回复

使用道具 举报

33#
发表于 2009-8-21 16:56:58 | 只看该作者
原帖由 mazrmc 于 2009-8-21 10:47 发表
19楼的chenall大侠,能否提供软盘镜像下载?win7启动所需文件搞不清楚都需要哪些

我也希望chenall大侠能够提供做好的软盘镜像下载,毕竟有不少人对win7启动不熟。
回复

使用道具 举报

34#
发表于 2009-8-21 17:11:31 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

35#
发表于 2009-8-21 17:26:57 | 只看该作者
winxp的软盘好做。但我的机器上没装vista及win7,想做个合盘的暂时还没办法。
回复

使用道具 举报

36#
发表于 2009-8-21 17:30:21 | 只看该作者
哪位老兄能提供一下Vista中的bootmgr和boot目录内的相关文件?
回复

使用道具 举报

37#
发表于 2009-8-21 23:43:02 | 只看该作者
原帖由 mazrmc 于 2009-8-21 17:11 发表
软盘可以自己做,并不通用。
Winxp需要四个文件boot.ini,bootfont.bin,ntdetect.com,ntldr;
Vista需要bootmgr和boot目录,boot目录内仅保留bcd文件(也可以保留en-US和zh-CN二个目录)

还有一个关键文件
\boot\Fonts\chs_boot.ttf
这个是字体文件,没有菜单不能显示中文,这个文件有3M多,软盘放不下
回复

使用道具 举报

38#
发表于 2009-8-22 22:58:16 | 只看该作者
我是这样编辑的,大家看看有什么可以改进?
title   启动 Windows 7 系统
find --set-root /bootmgr
chainloader /bootmgr
boot

title   启动 Windows XP 内存系统
find --set-root /ntldr
chainloader /ntldr
回复

使用道具 举报

39#
发表于 2009-8-23 00:34:30 | 只看该作者
我的软盘上的文件列表.所有文件的总大小1.07MB,使用一个1.44MB的镜像就放得下了.
::启动WINDOWS 2000/XP/2003所需的文件
boot.ini
bootfont.bin
NTDETECT.COM
ntldr
::启动WINDOWS 7所需的文件(只有两个)(VISTA系列的应该也可以直接使用的,未测试,因为我只装了WINDOWS 7)
bootmgr
boot\BCD

因为BCD里面只有一个启动WINDOWS 7的菜单,所以显示中文就没有必要了.加载了BOOTMGR就直接启动WINDOWS 7,如果真想显示中文菜单那至少也再增加4MB左右的文件.反正我是觉得没有必要所以就不用了.

另外NTLDR和BOOTMGR由于是通过GRUB4DOS来加载的,所以还可以使用GZ压缩一下.

[ 本帖最后由 chenall 于 2009-8-23 00:38 编辑 ]
回复

使用道具 举报

40#
发表于 2009-8-23 00:36:55 | 只看该作者
原帖由 icons 于 2009-8-22 22:58 发表
我是这样编辑的,大家看看有什么可以改进?
title   启动 Windows 7 系统
find --set-root /bootmgr
chainloader /bootmgr
boot

title   启动 Windows XP 内存系统
find --set-root /ntldr
chainloade ...


使用find --set-root 有可能会找到其它地方的启动文件,不太好.

建议把菜单文件放到img文件里面,再调用,省去find --set-root的过程.菜单中直接使用相对路径.
因为知道是虚拟到一个软盘上启动的,所以也可以直接chainloader (fd0)/ntldr
回复

使用道具 举报

41#
发表于 2009-8-23 03:09:01 | 只看该作者

好文章来学习了~~~

好文章来学习了~~~

评分

参与人数 1无忧币 -100 收起 理由
zhxy9804 -100

查看全部评分

回复

使用道具 举报

42#
 楼主| 发表于 2009-8-24 09:09:29 | 只看该作者

回复 #44 chenall 的帖子

chenall说的不错,win7只需要bootmgr + boot\bcd,xp如果不需要显示菜单,也不需要bootfont.bin。

另外,如果win7需要软改,也可以加上软改的grldr。

下面是我做的带软改的nt + win7启动软盘,注意:boot.ini和bcd文件都需要你根据实际情况进行定义,为避免软改的grldr与标准的grldr发生冲突,我将其更名为smldr(softmod loader)。

http://nufans.net/upload/micro$oft/win7/softmod.xyf/win.gz


  1. title Windows 7 on (hd0,1) - Fast
  2. ls /boot/win.gz || find --set-root /boot/win.gz
  3. map --mem /boot/win.gz (fd0)
  4. map --hook
  5. root (fd0)
  6. chainloader /smldr
  7. savedefault

  8. title Windows XP Professional on (hd0,0) - Fast by win.gz
  9. ls /boot/win.gz || find --set-root /boot/win.gz
  10. map --mem /boot/win.gz (fd0)
  11. map --hook
  12. root (fd0)
  13. chainloader /ntldr
  14. savedefault
复制代码
回复

使用道具 举报

43#
发表于 2009-8-24 10:23:38 | 只看该作者
原帖由 chenall 于 2009-8-19 17:57 发表
我更倾向于把XP/WIN7的启动文件放在同一张软盘镜像上面,因为两者启动方式并不冲突.
也比较好管理,现在我办公室电脑也是使用差不多类似的方法..
嘿嘿.^_^关了机别人就不懂得如何用我的电脑了.



插上自带启动U盘。使用grub4dos去引导^_^
回复

使用道具 举报

44#
发表于 2009-8-24 10:31:07 | 只看该作者
这里讨论的多系统。应该都是安装在主分区上吧?

ms系统貌似只能启动主分区系统
回复

使用道具 举报

45#
 楼主| 发表于 2009-8-24 11:23:25 | 只看该作者

回复 #49 yjd 的帖子

跟主分区、逻辑分区无关吧?不信你试试。
回复

使用道具 举报

46#
发表于 2009-8-24 14:57:11 | 只看该作者
原帖由 yjd 于 2009-8-24 10:31 发表
这里讨论的多系统。应该都是安装在主分区上吧?

ms系统貌似只能启动主分区系统

系统可以装在逻辑分区上,ntldr+boot.ini/bootmgr+bcd不能放在逻辑分区上
回复

使用道具 举报

47#
 楼主| 发表于 2009-8-24 15:18:40 | 只看该作者

回复 #51 fujianabc 的帖子

事实上,bootmgr+bcd是可以放在逻辑分区上的。

在win7的硬盘安装方法中,有一种方法就是将win7的安装光盘随意解压到硬盘上的任意分区(包括逻辑分区)根目录下,然后进入grub4dos,chainloader相应分区的bootmgr,就可以直接启动进入win7的安装程序,跟从光盘启动安装应该完全一样,所以,至少win7的bootmgr是可以从逻辑分区启动的,而且,它会在当前分区boot目录下查找bcd文件。

而ntldr当然也可以用类似的方法通过grub4dos从逻辑分区加载并启动,但它只能从第一硬盘的激活分区去查找boot.ini及其他启动文件。
回复

使用道具 举报

48#
发表于 2009-8-25 21:29:16 | 只看该作者
原帖由 fujianabc 于 2009-8-21 15:29 发表
虚拟软盘方式启动后要修改bcd菜单就比较麻烦了,先要挂载虚拟软驱,用bcdedit命令时还要用store参数指定bcd文件路径

有个很好的工具bcdtool,作者jianliulin

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=146397
回复

使用道具 举报

49#
发表于 2009-8-25 21:52:18 | 只看该作者
原帖由 Climbing 于 2009-8-24 15:18 发表
事实上,bootmgr+bcd是可以放在逻辑分区上的。

在win7的硬盘安装方法中,有一种方法就是将win7的安装光盘随意解压到硬盘上的任意分区(包括逻辑分区)根目录下,然后进入grub4dos,chainloader相应分区的boo ...

我的确没试过bootmgr查找逻辑分区的bcd,但我试过ntldr不能找到逻辑分区上的boot.ini
就你这么说来,看来bootmgr+bcd能够直接放到逻辑分区上了

原帖由 keygen 于 2009-8-25 21:29 发表

有个很好的工具bcdtool,作者jianliulin

http://bbs.wuyou.net/forum.php?mod=viewthread&tid=146397

这个工具目前不能随便指定其他bcd文件。现在能够修改任意bcd的gui工具还是easybcd最好用,而且是免费软件。
回复

使用道具 举报

50#
发表于 2009-8-26 17:42:37 | 只看该作者
原帖由 fujianabc 于 2009-8-25 21:52 发表

我的确没试过bootmgr查找逻辑分区的bcd,但我试过ntldr不能找到逻辑分区上的boot.ini
就你这么说来,看来bootmgr+bcd能够直接放到逻辑分区上了


这个工具目前不能随便指定其他bcd文件。现在能够修改任意 ...

easybcd要用到NET Framework  ,不爽。
回复

使用道具 举报

51#
发表于 2009-8-26 19:32:25 | 只看该作者
原帖由 keygen 于 2009-8-26 17:42 发表

easybcd要用到NET Framework  ,不爽。

现在谁的系统中没装.net framework?

如果是在winpe下,建议还是用bcdedit,几个图形界面的bcd工具都不太适合在winpe下使用
回复

使用道具 举报

52#
发表于 2009-9-4 16:38:35 | 只看该作者
之前看这帖一直没明白帖子的意思(愚钝啊~~) 今天偶然在nufans.net看到c大对一个案例的回帖 说的正是这个解决方案 有案例就好理解了 于是回来再翻此帖~

确实是不错的方法 受用了!
回复

使用道具 举报

53#
发表于 2009-9-6 17:01:39 | 只看该作者
原帖由 Climbing 于 2009-8-18 09:13 发表
您可能会错我顶楼的意了,我确认我讲的跟你讲的完全不是一回事儿。

我当然知道grldr可以直接启动ntldr/bootmgr,而且我知道grldr.mbr也有这个功能,而你只不过利用了grldr.mbr的这个功能再加上grldr.mbr启动 ...




呵呵~~~~~他完全没明白C大说的意思;和你讲的完全是两回事嘛。

我感觉C大是否做出实例来:
以C 大大的能力,完全可以做出完美的IMG文件出来,XP/WIN2003的IMG好说的,可是WIN7/WIN2008很难搞定;C大研究得很深,应该以C大的技术可以做出自动判断的WIN7/2008启动IMG出来。
回复

使用道具 举报

54#
发表于 2009-9-7 06:59:06 | 只看该作者
C版,#47
title Windows 7 on (hd0,1) - Fast
ls /boot/win.gz || find --set-root /boot/win.gz
map --mem /boot/win.gz (fd0)
map --hook
root (fd0)
chainloader /smldr
savedefault


我不知你有没试过
chainloader /smldr
这样启动动。我试过用Grub启动软改的grldr并不能成功。
只能chainloader (hd0,X)+1或直接chainloader /bootmgr

前者启动到软改后的win7,而后者只能启动未破解的win7

[ 本帖最后由 go2 于 2009-9-7 07:03 编辑 ]
回复

使用道具 举报

55#
发表于 2009-9-7 14:03:35 | 只看该作者
原帖由 go2 于 2009-9-7 06:59 发表
C版,#47

我不知你有没试过这样启动动。我试过用Grub启动软改的grldr并不能成功。
只能chainloader (hd0,X)+1或直接chainloader /bootmgr

前者启动到软改后的win7,而后者只能启动未破解的win7



能启动未破解WIN7的最好,这样一来,可以在GRUB里引导一个小东西,将自己的电脑虚拟成品牌机,一样能激活使用,以免后面更新或出新版后,又得找来找去的。
回复

使用道具 举报

56#
发表于 2009-9-17 12:16:53 | 只看该作者
我也是这么做的,不过在boot菜单添加了很多项,以防万一:
[boot loader]
timeout=3
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
C:\esldr="搜寻易宗系统启动管理器(硬盘优先)"
C:\tboot="以TBOOT文件启动苹果操作系统"
C:\$WIN_NT$.~BT\BOOTSECT.DAT="启动 C 盘的 NT 安装程序"
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="启动第1个分区的 NT 系统" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="启动第2个分区的 NT 系统" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="启动第3个分区的 NT 系统" /noexecute=optin /fastdetect


esldr是编辑的搜索各个我会常用的ldr
default 0
timeout 1
fontfile (fd0)/gfont
splashimage (fd0)/gimage
title 0.搜寻  CDLDR.BIN    find /YIZONG/CDLDR.BIN
        fallback 1
        find --set-root --ignore-floppies /YIZONG/CDLDR.BIN
        configfile /YIZONG/CDLDR.BIN
title 1.搜寻  udldr        find /udldr
        fallback 2
        find --set-root --ignore-floppies /udldr
        configfile /udldr
title 2.搜寻  mdldr        find /mdldr
        fallback 3
        find --set-root --ignore-floppies /mdldr
        configfile /mdldr
title 3.搜寻  hdldr        find /hdldr
        fallback 4
        find --set-root --ignore-floppies /hdldr
        configfile /hdldr
title 4.搜寻  grldr        find /grldr
        fallback 5
        find --set-root --ignore-floppies /grldr
        configfile /grldr
title 5.搜寻  menu.lst     find /menu.lst
        fallback 6
        find --set-root --ignore-floppies /menu.lst
        configfile /menu.lst
title 6.命令行             commandline
commandline
回复

使用道具 举报

57#
 楼主| 发表于 2009-9-18 08:37:39 | 只看该作者

回复 #59 go2 的帖子

呵呵,我当然试过,而且,肯定能够成功我才发到这里。

据我推测,你用的软改程序应该是软改程序的老版本,老版本使用的grub4dos是很低的版本(这些版本可能不支持被直接chainloader),而作者后来又出了新版,基于最新版的grub4dos,我不能提供下载,不过去DRL或者类似的论坛应该可以找到。
回复

使用道具 举报

58#
发表于 2009-11-14 11:55:07 | 只看该作者

winnt.xpe不能放在a:盘?

我把setupldr.bin(合并了dedetect.com),winnt.xpe做成一个a.img,先加载为fd0,chainloader (fd0)/setupldr.bin企图由它启动光盘上的pe,发现只认光盘上的winnt.xpe,光盘没有此文件,即使fd0有也不行。
这与楼主
建立一张软盘映像,将xp(或windows 2003的,兼容性更好)引导分区根目录下的ntldr、ntdetect.com、boot.ini(如果你需要显示菜单,也可以复制bootfont.bin)到软盘根目录下
有什么不同?我理解winnt.xpe相当于boot.ini,也应可以放在软盘。
回复

使用道具 举报

59#
发表于 2009-11-14 18:44:43 | 只看该作者
原帖由 pseudo 于 2009-11-14 11:55 发表
我把setupldr.bin(合并了dedetect.com),winnt.xpe做成一个a.img,先加载为fd0,chainloader (fd0)/setupldr.bin企图由它启动光盘上的pe,发现只认光盘上的winnt.xpe,光盘没有此文件,即使fd0有也不行。
这与 ...

你先用原版的setupldr.bin+ntdetect.com+winnt.sif放到软盘上再试一下,顺便贴一下你的winnt.sif的内容
回复

使用道具 举报

60#
发表于 2009-11-14 19:29:20 | 只看该作者

回复 #64 fujianabc 的帖子

老毛桃911不管版,setupldr.bin和ntdetect.com在fd0的wxpe目录,winnt.xpe在fd0根目录:
[SetupData]
BootDevice="ramdisk(0)"
BootPath="\WXPE\SYSTEM32\"
OsLoadOptions="/minint /fastdetect /rdexportascd /rdpath=MiniPE\WinPE.IS_"
如果光盘有winnt.xpe就正常。
现在有种感觉:winnt.xpe必须与WinPE.IS_在同一个盘上。

[ 本帖最后由 pseudo 于 2009-11-14 19:32 编辑 ]
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-26 20:31

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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