LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1495|回复: 4

安装了freebsd后windows不能加载逻辑分区

[复制链接]
发表于 2006-4-27 22:12:56 | 显示全部楼层 |阅读模式
硬盘里有windows 2003,linux。安装了freebsd之后,默认不能引导linux,windows2003能进去,但是不能发现逻辑分区了,打开我的电脑只能发现一个系统盘,在windows2003下查看磁盘管理,逻辑分区还在,但是卷名都没有了。就是系统根本不能加载逻辑分区,更不用说能读取里面的数据了。请问大侠们,怎么才能让windows下读取逻辑分区里面的数据呢?
发表于 2006-5-2 22:35:49 | 显示全部楼层
应该是分区表错误。找一个磁盘工具修复看看。

我在安装第三个操作系统的时候遇到PM无法读取分区的情况(Linux的分区是用linux自己的分区工具创建的,可能由此造成分区表问题),后来用了一个可启动系统维护光盘上的磁盘工具修复了。
回复 支持 反对

使用道具 举报

发表于 2006-5-2 22:37:19 | 显示全部楼层
刻录一张可启动的系统维护工具光盘是有必要的。比如类似于深山红叶这样的工具集在关键时刻会给你很多帮助。
回复 支持 反对

使用道具 举报

发表于 2006-5-6 14:07:34 | 显示全部楼层
你先检查一下,windows下的磁盘管理是不是没给逻辑分区分配盘符

Linu引导不起来,是因为FreeBSD的引导程序引导不了在逻辑分区里的系统,你用GRUB试
回复 支持 反对

使用道具 举报

发表于 2006-5-15 19:29:56 | 显示全部楼层
唉!又有人中招了。

本来早就想写一篇关于这个问题的文章啦,但一来要说清楚这个问题不容易,需要讨论一些硬盘的结构、分区的底层知识以及与 BIOS 的关系等;二来是我也没能完全解决 NetBSD 下的这个问题。现在既然有人问起,我就告诉你一个解决的方法吧!这个问题的实质其实在 FreeBSD 使用手册中已经被强调过了,就是“FreeBSD 不会参考 BIOS,而且也不知道所谓的 ‘BIOS 逻辑磁盘对应’。”,不过大部分人可能没在意吧,就算注意了一下,也只怕没能完全理解它说的到底是什么,这里具体的原理就不深入了,不是三言两语能说明白的,等有时间并且真的有人需要时再说吧!

一、如何避免出现这样的错误
在 FreeBSD 分区时(注意!不是 Disklabel 而是 FDisk,不要搞错了。)按下“G”,进入“set Drive Geometry”中输入正确的 BIOS 映射参数(C、H、S),这些参数可由 Windows 下的任何一款分区工具查到(除了 Windows 自带的那个 fdisk.exe,^0^),我用的是 DiskGen。

二、中招后怎么办
千万不要重新分区!那可就真玩完啦。也不要乱用磁盘工具修复,那样有可能会修好,也有可能更糟,我的做法是:
用 win98 启动盘(DOS 也行)启动机器,运行一个小分区工具 DiskGen,随便做点什么修改,然后马上恢复(非常重要),比如我是先取消当前 boot 分区的 boot flag,然后立即又设置回去。现在存盘退出,重启,DiskGen 应该已经帮你修复这个小小的分区错误了。当然,你对自己的技术及硬盘知识有信心的话,也可以直接手工编辑主分区表,其实一般也就是错在第二个分区(一般是扩展分区)中几处微小的地方,先申明,这样改崩的话可别来找我啊!不过话说回来,能做这样修改的高手,也不会来看这篇陋文的,对吧!呵呵。

这里说句题外话,二楼说对了一半,这是一个分区表错误,不过并不是 Linux 的分区工具造成的。还有建议二楼不要用 PM 来做分区,PM 会搞坏分区这是人尽皆知的,建议你试试 DiskGen ,直观方便,不过你也还是要小心,DiskGen 也不是百分之百的保险,虽然你可能永远也不会遇上它出错 。其实要说最好的,只怕是 Linux 的 fdisk 了,可处理几乎所有的分区格式、完美识别 BIOS 映射、丰富的可选项、永远不会做你预料之外的多余动作,缺点嘛: 不那么直观、不象 cfdisk 那样可改变分区大小(只有全部重来)。
回复 支持 反对

使用道具 举报

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

本版积分规则

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