|
|
安装freebsd后硬盘分区表为什么有错误?
最近在电脑上尝试安装freeBSD系统.安装完成后出现了一些问题,一是安装完成后默认进入了freeBSD操作系统.而不是进入预期的windows XP.二是在XP中进入Partation table doctor的时候会提示分区表错误,并且提示要给我修复分区表,结果它白忙活了一阵子只给我搜到一个C盘主分区.我只好放弃它的修复建议.因为我的机子运行正常.不过心里还是感到奇怪,所以在此把我硬盘的详细情况和我的操作过程帖出来求教并请大家研究一下.
我原来的硬盘分区情况是这样的,按照在硬盘上的位置分为:
一是C盘主分区NTFS,windows XP系统,
二是主分区ext3文件系统,linux系统.
三是扩展分区,下边有D:,E:,F:三个逻辑分区.都是NTFS.
四是主分区FAT32文件系统.存放grub4dos引导文件和C盘GHO镜像文件.
原xp的主引导记录mbr我已经用grub4dos的图形界面安装程序改为grub的mbr,并且设为默认引导原来的主引导记录(保存在主引导扇区后的第二个扇区),只有按下F12热键的情况下才进入grub的引导菜单.
我在xp中扫描各分区磁盘错误后用winpm重新整理了一硬盘分区,情况如下:
一是C盘主分区NTFS,windows XP系统,
二是扩展分区,逻辑盘符D:,E:,F:,
三是主分区fat32,存放grub和系统备份
四是空闲空间留给freeBSD.原linux分区已删除.(安装完成后是ufs2文件系统,下面有子分区).
做完这些我开始在硬盘上通过isoemu加载freeBSD安装程序.当要求选择是否安装boot manager时,我选择的是保留原来的mbr.经过这些处理我想安装完成以后通过grub来配置引导freeBSD,安装完成后grub的热键仍然可以有效地进入grub引导菜单,可是不按热键的时候默认进入的却是freebsd,请问这是什么原因呢?我的c盘的引导区是不是被改写了呢?用什么办法可以恢复?(我已经用ghost备份恢复了,但还有没有更好的方法?)我试验过了,进入grub用
root (hd0,0)
chainloader +1
的方式是无法进入xp的,会死机.而用
root (hd0,0)
chainloader /ntldr
的方式可以正常引导windows xp,所以我怀疑是c盘的引导扇区被freebsd安装程序重写了.
我用ghost恢复xp系统后,在grub菜单中加入了
root (hd0,3,a)
chainloader +1
可以正常引导freeBSD.
另一个奇怪的现象是在本文开头说的当在xp中进入partation table doctor 3.0的时候会提示分区表,要求重建分区表,并且它不能给我建立一个正确的分区表.所以我没敢用它来写入磁盘.否则的话,我的磁盘的数据可能要呜呼哀哉了.
如果说不相信partation table doctor的话,grub引导过程好像也显示有不能识别的分区.
并且进入grub4dos的图形安装界面刷新硬盘分区也显示分区表错误.
请问是grub不能识别ufs造成的呢还是真的分区表有问题.
注:我进入xp和freebsd都很正常. |
|