|
4#
楼主 |
发表于 2007-9-18 23:30:56
|
只看该作者
谢谢楼上两位的回答,经尝试可以启动逻辑盘上的ntldr,但是却没办法启动独立放在逻辑盘上的NT系统。以下说说我的尝试过程:
1. 我以前尝试过chainloader (hd0,4)/ntldr,但发现根本不能这样访问NTFS分区上的文件。难道grub4dos比Linux的原版grub强大?于是我先启动到纯DOS,在启动grub4dos,果然可以访问NTFS分区了。
# map 命令似乎没用
root (hd0,4)
chainloader (hd0,4)/ntldr
boot
以上命令执行成功,可是进入的竟然还是(hd0,0)分区上的boot.ini的菜单。可以正常进入系统。
这下我郁闷了,心想难道ntldr总是从第一个分区查找启动菜单?于是,
2. 将(hd0,0)的boot.ini改名,重启动。这回显示:boot.ini不正确,从C:\windows启动,然后开始启动Windows,没有启动菜单。启动之后出现几个找不到文件的提示,确定后似乎一切正常。没仔细测试系统是否异常,我关心的是系统是否摆脱了对(hd0,0)的依赖性。
3. 这回决定来狠点的,备份MBR后直接删除(hd0,0),应该只是改了分区表,数据都还在,但(hd0,0)没了。用如下命令启动:
root (hd0,4)
chainloader +1
boot
这回出现了(hd0,4)上的启动菜单,yes,看样子是要成功了,可是选择启动系统后提示:
找不到文件
<Windows dir>\system32\ntoskrnl.exe
然后当机。这个文件在(hd0,4)上是肯定存在的啊。看来系统还是在试图访问(hd0,0)的某些文件来启动。但是可以启动PE了,一切正常。
最后得出的结论:可以启动逻辑盘上的ntldr,但还是没办法不依赖于(hd0,0)启动逻辑盘上的NT系统。不过,不知道是不是我的操作有什么问题?
我想是可以把NT系统移动到逻辑盘的,但需要把(hd0,0)设成一个NT可以访问的分区,然后放几个必要的文件。哎,既然不能完全独立地在逻辑盘上装系统,没兴趣继续尝试了。
但是如果选择双系统共存的话,还是可以在逻辑盘上放一个系统的。但是ntldr始终是(hd0,0)上的菜单,所以选择系统这一步不能在Grub完成,必须在ntldr的菜单选,这样就要选2次菜单,感觉很不爽。 |
|