QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 759|回复: 13

三系统win2k,linux能启动,xp不行?

[复制链接]
发表于 2004-3-12 20:34:16 | 显示全部楼层 |阅读模式
我在c盘装了win2000,F盘装了winxp,e盘分出5G装了linux,非常幸运linux和2000都运行正常,但xp启动却出了问题,启动时显示<windows root>\system32\hal.dll这个文件找不到了,看了版主写的帖子-《不要做浮躁的人》很受启发,故搜到  樱家冢的文章很受启发,但不知在哪和如何修改boot.ini.还望各位前辈指点!

鄙人曾经仔细研究过这种情况,发现boot.ini之中windows的引导是通过分区排序来指定的,例如:multi(0)disk(0)rdisk(0)partition(1)\WINNT指的是第一块硬盘,第一个分区的winnt目录,但是如果你的windows不是安装在C:\,那么Linux分区的时候有可能导致分区顺序改变,出现无法找到hal.dll的问题,这个时候修改boot.ini就能解决问题了。 [quote][/quote]

     写这篇帖子也纪念一下linux处女装的成功,感觉按照扫盲文章的步骤,比98还简单。
----我是女生,快乐的女生,爱用linux的女生!
             黑夜给了我黑色的眼睛,我却用它去寻找linux!
 楼主| 发表于 2004-3-12 20:38:05 | 显示全部楼层
初次发文章,不太会,引用:这两个字应在那段话的上方,请大家不要见笑


----我是女生,快乐的女生,爱用linux的女生!
            黑夜给了我黑色的眼睛,我却用它去寻找linux!
回复

使用道具 举报

发表于 2004-3-12 22:14:20 | 显示全部楼层
xp 什么都没启动吗?还是说hal.dll找不到然后启动失败?
回复

使用道具 举报

 楼主| 发表于 2004-3-13 12:24:12 | 显示全部楼层
在启动选项中,能看到一个是redhat,一个是dos,这时选择dos,又显示出windows2000和windows xp,这时再选择windows xp,就会出现以下三行字:
因以下文件的损坏或者丢失,windows无法启动:
<windows root>\system32\hal.dll
请重新安装以上文件的拷贝。(其余都是黑屏)
以前曾经重新插入windows xp的光盘进行修复没有成功,又没有好的补救办法呢!
还请各位高手多多指教!  多谢各位了!
----我是女生,快乐的女生,爱用linux的女生!
             黑夜给了我黑色的眼睛,我却用它去寻找linux!
回复

使用道具 举报

发表于 2004-3-13 12:35:04 | 显示全部楼层
在安装linux前能不能引导win2000和winxp??

win2000和winxp我不是很清楚,但我知道winxp的nt loader(启动windows)不能启动win2003,
回复

使用道具 举报

 楼主| 发表于 2004-3-13 15:53:31 | 显示全部楼层
有可能是windows xp装在f盘的缘故,但真的就没有解决办法了吗?

樱家冢曾写到:

鄙人曾经仔细研究过这种情况,发现boot.ini之中windows的引导是通过分区排序来指定的,例如:multi(0)disk(0)rdisk(0)partition(1)\WINNT指的是第一块硬盘,第一个分区的winnt目录,但是如果你的windows不是安装在C:\,那么Linux分区的时候有可能导致分区顺序改变,出现无法找到hal.dll的问题,这个时候修改boot.ini就能解决问题了。


可我就是不知道在哪里修改?还请高手赐教!
回复

使用道具 举报

发表于 2004-3-13 18:52:11 | 显示全部楼层
呵呵,你在XP前面分了区来装LINUX当然不能启动XP了
这也是为什么2000能启动,XP不能启动的根本原因,BOOT。INT分区位置指示不正确

1.boot.ini在启动分区根目录下,你的情况应该是在C分区里(是个系统,隐藏,只读属性文件。要显示所有文件才能看见)用任何文本编辑软件就能可打开编缉。
2.你的BOOT.INI我估计是这样的
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINNT
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Professional"
multi(0)disk(0)rdisk(0)partition(4)\windows="Microsoft Windows XP Professional" /fastdetect
而问题就出在multi(0)disk(0)rdisk(0)partition(4)\windows="Microsoft Windows XP Professional" /fastdetect这一行上。
这行其实容易理解。
“Multi”表示一个非SCSI硬盘或一个由SCSI BIOS访问的SCSI硬盘,而SCSI则表示一个SCSI BIOS禁止的SCSI硬盘;(x)是硬件适配卡序号;disk(x)表示SCSI总线号,即如果硬件适配卡为Multi,其正确表示方法就为disk(0);rdisk(x)表示硬盘的序号,即如果硬件适配卡为SCSI则忽略此值;partition(x)表示硬盘的分区序号。
说到这里,事情就很明了了。你原来2000的分区是partition(1),D盘是partition(2),E盘是partition(3),XP的分区是partition(4),这时候双系统启动应该是没问题的。但因为你在E分区分了LINUX分区。就在partition(3)和partition(4)之间插入一个或多个分区(不知你LINUX分的几个分区)。这样LINUX第一个分区就成了partition(4),第二个分区就成了partition(5)。。。。。。。。。。以此类推。
3.天,打了这么多,应该知道怎么解决了吧,你现在要做的只是修改一下BOOT.INI,把multi(0)disk(0)rdisk(0)partition(4)\windows="Microsoft Windows XP Professional" /fastdetect
这一行中的partition(4)改成相应的分区位置就行了。
回复

使用道具 举报

发表于 2004-3-13 19:51:58 | 显示全部楼层
klude讲的很精辟易懂啊,佩服佩服。
我也遇到过这样的问题,这回彻底明白了!
多谢!
回复

使用道具 举报

 楼主| 发表于 2004-3-13 22:10:54 | 显示全部楼层
首先谢谢kludge,我觉得讲的很有道理,但是我打开boot.int看了一下,情况是[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(6)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(6)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINNT="Microsoft Windows 2000 Server" /fastdetect
我的c盘为分区1,d盘为partition2,e盘为partition3,linux的'/'分区为partition4,linux的swap分区为partition5,到windows xp的正好应该是partition6啊,没有错误啊, 因为是系统文件,我不敢擅自改动,还请高手给分析一下,非常感谢!
----我是女生,快乐的女生,爱用linux的女生!
黑夜给了我黑色的眼睛,我却用它去寻找linux
回复

使用道具 举报

发表于 2004-3-13 22:29:10 | 显示全部楼层
晕倒了,看得眼睛花了,呵呵,装这么多系统有意思吗?
回复

使用道具 举报

 楼主| 发表于 2004-3-13 23:02:33 | 显示全部楼层
[quote:28f7117de9="superhu"]晕倒了,看得眼睛花了,呵呵,装这么多系统有意思吗? [/quote]


   在彻底掌握linux之前,我还需要windows这个拐杖,要不我如何在论坛上向大家学习呢?
回复

使用道具 举报

发表于 2004-3-13 23:11:45 | 显示全部楼层
呵呵,没说不要装Win,你装了两个Win的说,不过你放心,我也是系统狂啊,老是装来装去的,现在良心发现,所以不怎么装了。
回复

使用道具 举报

 楼主| 发表于 2004-3-13 23:59:27 | 显示全部楼层
superhu兄,你是来灌水的吧,解决问题要紧,这过程也能学到东西,现在我对系统的启动就有所领悟了。   


----我是女生,快乐的女生,爱用linux的女生!
黑夜给了我黑色的眼睛,我却用它去寻找linux
回复

使用道具 举报

发表于 2004-3-14 23:28:26 | 显示全部楼层
~~~~~~~~~~~~~~~~~差不多的问题!~~~~~~~~~~~~~~~~~~
我原本是xp与fedora共存的,但是今天又安了2000server,安完后的位置是
Cp.............G:win2000server...................最后一个盘fedora
2000安完后,XP是进不了了,提示文件丢失,但用XP光盘修复一下就行了。
问题是:grup的选择菜单还是只有原来的xp与fedora,选择xp后,就出现windows的boot选择菜单,黑黑的那种,看了不爽,里面有xp与2000选择。
我比较喜欢grup那种选择菜单,漂亮!!请问现在该如何改/boot/grup/menu
让grup同时显示xp/2000/fedora,三个选择菜单,选择后直接进入系统,我不要那黑黑的界面!我试过添加2000的位置(hda8,0),哈哈,失败,
求救呀!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
回复

使用道具 举报

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

本版积分规则

GMT+8, 2024-11-17 15:23 , Processed in 0.077791 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

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