无忧启动论坛

标题: 用Grub+ntldr引导硬盘上的系统 [打印本页]

作者: cutefish    时间: 2005-7-21 23:36
标题: 用Grub+ntldr引导硬盘上的系统
    经Gandalf指点,做了个1.44M的img,用grub+ntldr来引导硬盘上的系统。
    一般来说,引导正常的操作系统grub就足够。不过对于Windows 2k/XP/03,grub只能采用chainloader方式引导。可能的情况是windows所在分区的引导扇区被破坏,或者ntldr所需要四个文件boot.ini,ntdetect.com,bootfont.bin,ntldr之一可能丢失或者被破坏。
    因此在img上加上了ntldr的这四个文件,可以在上述情况下直接引导硬盘上的Windows 2k/XP/03。
    考虑到常见的情况是boot.ini需要修改、需要重写标准的MBR或者把Windows所在分区重新置成Active以便标准的MBR代码能够引导它。在img上加了两个小工具,editbini.exe和mbrwork。前者能够直接编辑硬盘上的boot.ini文件(包括NTFS分区上的),功能非常单一但是有的时候就需要这个。后一个可以对MBR和分区表作一些操作。为了运行这两个工具,需要增加一个DOS。因为img大小限制,使用了一个mini的freedos,刚好放得下。
    大部分情况下,这个img应该足够引导硬盘上的系统了。
    还存在的问题是用grub中文版引导ntldr之后,没法直接再回到中文版grub,只能使用grldr,而这个没法显示中文菜单。
[UploadFile=11_1121960080.jpg]
[UploadFile=22_1121960092.jpg]
[UploadFile=33_1121960104.jpg]
作者: Gandalf    时间: 2005-7-22 09:24
标题: 用Grub+ntldr引导硬盘上的系统

支持一下。 ;)
作者: 紫狐    时间: 2005-7-22 10:00
标题: 用Grub+ntldr引导硬盘上的系统
那里下载呢?
作者: cutefish    时间: 2005-7-22 10:33
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由紫狐2005/07/22 10:00am 发表的内容:
那里下载呢?
放在网盘上:)
http://free.ys168.com/?longu
作者: jxyun99    时间: 2005-7-22 10:34
标题: 用Grub+ntldr引导硬盘上的系统
那里下载呢
作者: mzszwh    时间: 2005-7-22 10:51
标题: 用Grub+ntldr引导硬盘上的系统
下载了 学习学习
作者: dongdao477    时间: 2005-7-22 16:43
标题: 用Grub+ntldr引导硬盘上的系统
支持一下。
作者: iovf    时间: 2005-7-22 19:22
标题: 用Grub+ntldr引导硬盘上的系统
谁测试过吗?
出来说下
反正我的是不行。。
作者: 6618    时间: 2005-7-22 21:36
标题: 用Grub+ntldr引导硬盘上的系统
下载了,顶一贴。
作者: cutefish    时间: 2005-7-23 01:10
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由iovf2005/07/22 07:22pm 发表的内容:
谁测试过吗?
出来说下
反正我的是不行。。
    你的是什么样的情况,用什么引导什么不行,能说详细一点吗。我尽量多测试过,没有发现。
作者: cutefish    时间: 2005-7-23 11:16
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由cutefish2005/07/23 01:10am 发表的内容:
    你的是什么样的情况,用什么引导什么不行,能说详细一点吗。我尽量多测试过,没有发现。
是我把03的系统文件夹搞错了,换了一下。
[UploadFile=grub_1122088565.jpg]
作者: iovf    时间: 2005-7-23 11:42
标题: 用Grub+ntldr引导硬盘上的系统
hd0,0 grub的分区 负责引导
hd0,1 Server2003 SP1的 分区
hd0,4 后是别的分区
grub装在mbr
下面是menu.lst内容
timeout 5
default 0
fontfile (hd0,0)/boot/grub/fonts
splashimage (hd0,0)/boot/grub/win2008.xpm.gz
title 1. 启动 Windows
unhide (hd0,1)
hide (hd0,0)
root (hd0,1)
chainloader +1
title 2. 恢复 Windows
hide (hd0,1)
unhide (hd0,0)
kernel (hd0,0)/boot/grub/memdisk.gz floppy
initrd (hd0,0)/boot/my.zip
title 3. 从光盘启动(Boot From CD-ROM)
unhide (hd0,1)
hide (hd0,0)
run (hd0,0)/boot/grub/cdrom.cdr
title 4. 关闭计算机(Shutdown Computer)
halt
用启动盘启动的话 multi(0)disk(0)rdisk(0)partition(2)\WINDOWS 死机
其余的都是找不到什么什么。
我用自己的ntldr等等替换了启动盘中的还是不行。。

作者: cutefish    时间: 2005-7-23 11:57
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由iovf2005/07/23 11:42am 发表的内容:
hd0,0 grub的分区 负责引导
hd0,1 Server2003 SP1的 分区
hd0,4 后是别的分区
grub装在mbr
...
想不出有什么理由会死机,呼唤Gandalf出来解答
作者: iovf    时间: 2005-7-23 12:18
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由cutefish2005/07/23 11:57am 发表的内容:
想不出有什么理由会死机,呼唤Gandalf出来解答
应该不是grub的问题。。
我想会不会是2003的sp1
作者: Gandalf    时间: 2005-7-23 12:24
标题: 用Grub+ntldr引导硬盘上的系统

估计是你执行了 hide 功能。
我猜测, Windows 使用的路径上, 隐藏分区不被记入 partition. 也就是说,
将 "multi(0)disk(0)rdisk(0)partition(2)\WINDOWS" 改为:
   multi(0)disk(0)rdisk(0)partition(1)\WINDOWS  , 不知道会是怎样的情况。
作者: iovf    时间: 2005-7-23 12:54
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由useronce2005/07/23 12:24pm 发表的内容:
估计是你执行了 hide 功能。
我猜测, Windows 使用的路径上, 隐藏分区不被记入 partition. 也就是说,
将 "multi(0)disk(0)rdisk(0)partition(2)\WINDOWS" 改为:
   multi(0)disk(0)rdisk(0)partit ...
还是一样。
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS 死机
别的都是找不到 system32文件夹里的一个东东

作者: iovf    时间: 2005-7-23 13:05
标题: 用Grub+ntldr引导硬盘上的系统
[这个贴子最后由iovf在 2005/07/23 01:30pm 第 1 次编辑]

找到问题了。
刚才都是grub启动然后再用memdisk.gz加载的镜像。
在安全模式 载入ntoskrnl时就死机。
改用map 就没问题了。
附上2003sp1的ntldr,NTDETECT.COM;BOOTFONT.BIN;还有引导文件。
[UploadFile=2003_1122096491.rar]
[UploadFile=2003_1122096596.rar]
作者: Gandalf    时间: 2005-7-23 19:27
标题: 用Grub+ntldr引导硬盘上的系统

- 可能和内存的使用有关系。 ;)
- 赞。
作者: cjzzz    时间: 2005-7-24 03:24
标题: 用Grub+ntldr引导硬盘上的系统
能不能做成U盘版?
作者: iovf    时间: 2005-7-24 11:55
标题: 用Grub+ntldr引导硬盘上的系统
我的就是U盘的,
可是U盘的应该是不通用的。
作者: cjzzz    时间: 2005-7-24 12:45
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由iovf2005/07/24 11:55am 发表的内容:
我的就是U盘的,
可是U盘的应该是不通用的。

怎么制作的?
作者: dkawa    时间: 2005-7-24 21:20
标题: 用Grub+ntldr引导硬盘上的系统
好帖!
我正有这方面的困惑呢,正好可以解忧。
作者: iovf    时间: 2005-7-29 17:21
标题: 用Grub+ntldr引导硬盘上的系统
下面引用由cjzzz2005/07/24 12:45pm 发表的内容:
怎么制作的?
我的U盘是zip方式的(只有0.97版的grub支持)
在U盘上建立boot\grub目录,里面放fat_stage1_5 stage2 stage1 menu.lst 还有你需要用的东西。
用硬盘上的grub启动电脑。进入命令行后
root (  然后按tab键的话可以看到你的U盘。。我的是(FD0),hdd方式启动的话应该是(hd1)
root (fd0) -----如果是hdd的话,是hd1
setup (fd0)  ----同上
end
作者: iovf    时间: 2005-7-29 17:26
标题: 用Grub+ntldr引导硬盘上的系统
还有一种方法是,做个可以启动dos的U盘,里面的文件就留下,command.exe io.sys msdos.sys.
U盘放上上述的文件,menu.lst里面不要使用绝对路径
把grub.exe放到u盘上
用U盘启动电脑后grub.exe
root
可以看到你当前的u盘在grub中的表示方法
setup (    root中显示的设备名)

作者: 2011zhafai    时间: 2011-2-1 03:37
已经不能下载了 能更新下么 我真的很想知道是怎么写的




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3