硬盘分区错误怎么解决
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了硬盘分区错误怎么解决相关的知识,希望对你有一定的参考价值。
可以了 我的问题是原先装影子系统破解版说用PTDD分区医生修复下才可以,结果把我的两块硬盘直接变成C盘跟H盘,其他的分区都不见了(原先+C盘分的6个区,一个是2T,一个500G,),后面用PTDD分区医生恢复备份的分区表也不行,而且2T的硬盘用PTDD分区医生却显示"当前硬盘:I/O故障!"500G的硬盘还是可以的不过只显示一个C盘.通过重建分区表却只恢复了D盘跟G盘,但是D盘本来应该是在2T这个硬盘中分出的有1000G左右,现在变成是冲500G的硬盘分出去的只有100多G了,而且G盘恢复的大小也不一样!
各位高手如有知道的请帮帮忙,感谢,跪谢!
解决硬盘分区错误,使用DiskGenius分区工具硬盘格式化重新分区。
具体操作步骤如下所示:
1、在系统桌面,点击打开DiskGenius程序。
2、选择需要重新分区的磁盘。
3、在顶部菜单栏中的格式化。
4、格式化完毕后,点击菜单栏中的分区。
5、选择建立新分区。
6、根据硬盘大小,填写需要分区的容量大小。
7、点击开始,等待进度条结束,完成分区。
系统引导过程简介
系统引导过程主要由以下几个步骤组成(以硬盘启动为例)
(1) 开机;
(2) Bios加电自检(POST---Power On Self Test),内存地址为0fff:0000;
(3) 将硬盘第一个扇区(0头0道1扇区,也就是Boot Sector)读入内存地址0000:7c00处;
(4) 检查(WORD)0000:7dfe是否等于0xaa55.若不等于则转去尝试其他介质;如果没有其他启动介质,则显示 ”No ROM BASIC” ,然后死机;
(5) 跳转到0000:7c00处执行MBR中的程序;
(6) MBR先将自己复制到0000:0600处,然后继续执行;
(7) 在主分区表中搜索标志为活动的分区.如果发现没有活动分区或者不止一个活动分区,则停止;
(8) 将活动分区的第一个扇区读入内存地址0000:7c00处;
(9) 检查(WORD)0000:7dfe是否等于0xaa55,若不等于则显示 “Missing Operating System”,然后停止,或尝试软盘启动;
(10) 跳转到0000:7c00处继续执行特定系统的启动程序;
(11) 启动系统.
以上步骤中(2),(3),(4),(5)步由BIOS的引导程序完成;(6),(7),(8),(9),(10)步由MBR中的引导程序完成.
一般多系统引导程序(如Smart Boot Manager, BootStar, PQBoot等)都是将标准主引导记录替换成自己的引导程序,在运行系统启动程序之前让用户选择想要启动的分区.而某些系统自带的多系统引导程序(如LILO,NT Loader等)则可以将自己的引导程序放在系统所处分区的第一个扇区中,在Linux中即为两个扇区的SuperBlock.
注:以上步骤中使用的是标准的MBR,多系统引导程序的引导过程与此不同.
硬盘结构
硬盘参数
3D参数(Disk Geometry):CHS(Cylinder/Head/Sector) C-Cylinder柱面数表示硬盘每面盘片上有几条磁道,最大为1024(用10个二进制位存储);H-Head磁头数表示硬盘总共有几个磁头,也就是几面盘片,最大为256(用8个二进制位存储);S-Sector扇区数表示每条磁道上有几个扇区,最大为63(用6个二进制位存储).
引导扇区
Boot Sector组成
Boot Sector也就是硬盘的第一个扇区,它由MBR(Master Boot Record), DPT(Disk Partition Table) 和 Boot Record ID三部分组成. MBR又称为主引导记录,占用Boot Sector的前446个字节(0~0x1BD),存放系统主引导程序(它负责从活动分区中装载并且运行系统引导程序). DPT即主分区表占用64个字节(0x1BE~0x1FD),记录磁盘的基本分区信息.主分区表分为四个分区项,每项16个字节,分别记录每个主分区的信息(因此最多可以有四个主分区). Boot Record ID即引导区标记占用两个字节(0x1FE~0x1FF),对于合法引导区,它等于0xaa55,这是判别引导区是否合法的标志). Boot Secor具体结构如图一
分区表结构简介
分区表由四个分区项构成,每一项结构如下:
BYTE State:分区状态,0=未激活,0x80=激活(注意此项);
BYTE StartHead:分区起始磁头号;
WORD StartSC:分区起始扇区和柱面号,底字节的底6位为扇区号,高2位为柱面号的第9,10位,高字节为柱面号的低8位;
BYTE Type:分区类型,如0x0B=FAT32,0x83=Linux等,00表示此项未用;
BYTE EndHead:分区结束磁头号;
WORD EndSC:分区结束扇区和柱面号,定义同前;
DWORD Relative:在线性寻址方式下的分区相对扇区地址(对于基本分区即为绝对地址);
DWORD Sectors:分区大小(总扇区数).
在DOS或Windows系统下,基本分区必须以柱面为单位划分(Sectors*Heads个扇区),如对于CHS为764/256/63的硬盘,分区的最小尺寸为256*63*512/1048576=7.875MB.
由于硬盘的第一个扇区已经被引导扇区占用,所以一般来说,硬盘的第一个磁道(0头0道)的其余62个扇区是不会被分区占用的.某些分区软件甚至将第一个柱面全部空出来.
首先在硬盘分区时一定要注意,要搞清楚主分区,扩展分区和逻辑分区之间的关系以及位置,这个分区可以用fdisk或者diskman(diskgen),后面这两个可以修改分区表等,相对来说功能比较全,安全性比较好,如果实在方便期间可以进入windows安装pqmagic分区魔术师,只要你操作正确这个也很安全(我就一直用这个给自己和别人搞分区). 一般说来,如果事先装了windows,那么windows的c盘就是hda1,windows剩下的盘(d,e,f...)构成扩展分区总称为hda2,而其中的d,e,f...分别都是逻辑分区,一般分别为hda5,hda6,hda7...,至于为什么,原因在上面都说清楚了,而你要安装的linux分区和swap最好分在hda3,hda4(或者其他主分区)上,因此要注意不要分在扩展分区,这在pqmagic中可以看的很清楚!!
分好区后就可以安装了,如果在安装的过程中出现错误而导致安装失败,这个时候千万不要着急,首先找到安装windows的光盘进入修复控制台输入下面两个命令:
代码:fixmbr
fixboot c:
重启,看可不可以启动windows,如果不可以,进入dos,输入
代码:fdisk /mbr
再重启,看可以启动windows吗,如果仍然不行,重复一下上面用windows光盘的方法,如果这样后仍然无效,可以用diskman或者diskgen再修复试试,这些方法如果都不行,那就确保c盘没有重要文件后重装windows吧,如果你实在不想重装windows那就再试试linux的安装,如果此时linux安装成功,那么一切问题都解决了,windows也恢复正常
另外,如果再双系统中windows你重装了,那么也要修复一下linux,我知道的方法就是用安装光盘重装grub,
进入linux rescue模式后,输入
代码:chroot /mnt/sysimage #改变你的根目录
grub-install /dev/hda #安装grub到mbr
1.lilo(LInux LOader)
LILO引导扇区包括一个分区表的空间,所以,LILO即可以安装在MBR中,也可以安
装在某个分区的引导扇区。LILO拥有DOS引导扇区的所有功能,而且,它还可以引导
逻辑扇区和第二硬盘分区。LILO还可以和另外的引导者合作(例如:NT loader),这样,
用户就可以有很多选择。
(注:以下几个标题,为防止引起歧义,用原文)
1.1 LILO started by MS-DOS MBR
如果系统至少有一个linux主分区,(非交换区,且在第一硬盘上),那么LILO就可
以安装在这些分区中的一个。当 LILO对应分区被激活后,引导过程如下:
BIOS 读入 MBR
MBR 读入 活跃主分区:LILO所在的分区。
LILO 引导Linux或另外的操作系统。
要引导其它OS且不用LILO很简单,激活那个分区。Linux分区没有任何变化,非常安全。
1.2 LILO started by a boot manager
假如用户不想删除老的boot manager,或者某个OS LILO不能引导,可以考虑该途径。
1. 假如boot manager可以引导扩展区,那儿是LILO的好去处。
2. 假如 boot manager 可以引导第二硬盘分区,linux可以装在第二硬盘上。
3 有些 boot manager 甚至可以引导逻辑分区,那LILO就可以装在逻辑分区上。
当然,也要注意以下情况:
1 某些操作系统直接改写MBR,这会将原来的boot manager破坏。
2 重新分区会破坏扩展分区的引导扇区,这时LILO可能要重装。
当安装新的系统时,是否要重新安装(linux)依靠新的boot manager,要么LILO引
导扇区被注销,要么boot manager 为它提供一个引导项。重新分区或分区格式化会将
LILO和linux全部删除。
1.3 LILO占据MBR
假如整个linux系统都在第二硬盘上,且第一硬盘没有扩展分区,那么,LILO只有装
在MBR上。这样,会将老的MBR冲去,所以,在安装LILO前,要将老的MBR(包括分区
表)做一个备份。DOS下有很多工具可以完成这个任务。在linux下,这样备份:
# dd if=/dev/hda of=/backup/MBR bs=512 count=1
写会使用命令:
# dd if=/backup/MBR of=/dev/hda bs=446 count=1
这样,原来的MBR就被写会但不包括分区表。如果分区表也要恢复,那么bs=512.
注意,这样,新的分区表会被破坏!
1.4 LILO 文件
与LILO有关的文件通常放在/boot/下,配置文件lilo.conf在/etc/下。包含实际
引导系统信息的映射文件有/sbin/lilo安装。对于任何LILO安装,配置文件应该被定
置以适合个人需要。
The configuration file:配置文件
基本上,配置文件是一些变量赋值。每一行包含一个标志变量或一个变量赋值.
配置文件被特殊的变量赋值分成几个区,每个区引导一个linux或其它OS.
下面解释常见的行:
boot = device
说明那一个设备或哪一个分区包含引导扇区。假如没有给boot赋值,取当前缺省值。
compact
激活一种模式,在此模式下,LILO一次向BIOS请求读入相邻的几个分区。这极大的
缩短了装载时间,特别是从软盘启动。
delay=tenths
以10秒为单位,规定LILO在引导第一个引导配置前应等待用户的时间。若没有定义,则
直接引导。
Linear
使LILO生成线性地址,而不使用通常的Sector/Head/Cylinder机制。Linux地址机制
可以不依赖磁盘的物理结构。
install = boot sector
使用指定的boot sector写入引导扇区,缺省用/boot/boot.b
disktab=disktab
使用指定的disktab,缺省使用/boot/disktab.disktab保存了硬盘物理结构信息。
map=map file
说明映射文件的路径。
message=file 指
定一个文件,该文件的内容将会在LILO引导是被显示。假如没有说明该文件,那么就
只会出现"LILO"。
verbose=level
说明LILO的调试级别。从0(不显示任何信息)到5(所有的状态信息)。
backup = backup file
以前引导扇区内容的备份文件。缺省使用/boot/boot.device number
force-backup=backup file
和backup 相同,当时假如备份文件存在,被覆盖。
prompt
指定要用户通过键盘选择要引导的内核。不会缺省选择。
timeout=tenths
设置一个超时值,在此时间内必须有键盘输入,否则用第一个配置。类似,假如超
时,就不能再输入密码。一般情况下,该取缺省值,无穷大。
注:delay 与 timeout的区别(joe 认为),delay 是"LILO"出现后用户必须有
输入的最长时间。timeout 是用户在按了任意键后,系统等待选择,用户
两次击键的最大间隔时间。
serial=port, bps parity bits
设置串口参数。如果LILO会从该文件获取串口参数的话。如果其中之一无效,
那所有三个参数都无效。Port从四个标准串口选择一个:0对应COM1 或者
/dev/ttyS0.。支持的波特率范围为:100-9600。所有校验设置都支持
(n:none,e:even,odd)
bits为7或者8。缺省为serial=0,2400n8.
Ignore-table
让LILO忽略被破坏的分区表。
fix-table
允许LILO将每个分区的(sector/head/cylinder)地址转化为线性地址。通常,
分区地址从cylinder boudary开始。某些操作系统,会改变这一点。由于LILO只能
将它的启动扇区写于两种地址都一致的分区上,不正确的3D地址可以用fix-table
来纠正。但是,这种纠正不能被保证是永远的,所以重分区以保证对齐cylinder
boudary 是最好的选择。
password=password
为引导配置设置password
restricted
放松对password的限制。只有用户想传附加的启动参数给内核时才需要password
optional
允许配置的几个内核有错误的,或者不存在,如果不说明optional,LILO遇到这种
情况就会打印一些错误信息然后退出。
每个从LILO引导的配置从image行开始。
Image = kernel
Label = name
Image包含要引导的内核。Label是给用户选择用的。Image行通常指向一个设备,
例如/dev/fd0,可以找到内核的范围用range来注明。
range = range
range可以用start sector -end sector 或者 start sector + length 表示。例如:
image = /dev/fd0
label = floppy
range = 1+512
以下变量赋值有可能出现:
append=string
将string作为引导参数传给内核。例如,硬件参数。
literal=string
和append查不多。但是,他会冲掉原来的设置。所以不能被全局说明。
ramdisk=size
设置RAM disk的大小。
read-only
read-write
设置根文件系统的访问方式。
root=device
设置根文件系统存在的设备。
vga=mode
屏幕设置。可能模式为:normal,extended 和ask. 。
以下设置是针对别的操作系统的:
loader=loader
说名用来引导操作系统的文件。缺省为 /boot/chain.b . 另外,LILO包含以
下的loader:
os2_d.b 可以从第二硬盘上引导os/2
any_d.b 在引导操作系统之前试图将两个硬盘的次序颠倒,从而可以引导第二硬盘
上的os.
table=device
说明一个设备,该设备的某个分区上存放要引导的os.假如没有说明table,
LILO就不会将该信息传给要引导的osunsafe
关掉对要引导的os的检查。只有要从软盘引导时,才使用该设置。没有该设置,
每次map installer开始运行时,引导盘都要插入软驱。
The disktab file
disktab文件包含LILO要引导的设备的物理结构信息。通常,这些信息可以从设备驱
动程序获取。所以,只有这种方法不行时才会用到disktab 文件。在此情况下,如
果文件不能用,LILO报告错误信息:
geo_query_dev HDIO_GETGEO(dev …)
或者
HDIO_REQ not supported for your SISI controller
Please use /boot/disktab
然后,物理结构信息就必须手工地输入。
# /boot/distab-LILO parameter table
#
#This table contains the geometry parameters for SCSI and
# IDE disks,which can not be recognized automatically
# Entries in this table overwrite recognized parameters!
#
# Dev. BIOS Secs/ Heads/ Cylin - Par.
# num. Code track cyLin. Ders. Offset
(optional)
#0x800 0x80 32 64 202 0 # /dev/sda
各个域含义如下:
0x800
设备号.由主副设备号组成。
设备号.由主副设备号组成。
0x80
设备的BIOS 码。0x80代码系统的第一个硬盘。0x81第二个,。。。。
所有同一硬盘上的分区该值相同。
32,64,203
sector 数目(每个track)
heads 数目
cylinders 数目
0
分区的开始。也可以从分区表中读,所以可以不说明。 参考技术B
方法一、1、首先鼠标右击桌面上的“计算机”图标,在菜单中选择“管理”选项;
2、在打开的界面中,点击存储下的“磁盘管理”项;
3、然后右击图标显示错误的磁盘,选择“更改驱动器符号和路径”选项;
4、点击更改先改成别的,然后再改回来,就可以看到图标显示正常了哦。
方法二、1、首先在开始搜索框中输入“资源管理器”,然后双击打开它;
2、接着在资源管理器界面中依次点击上方的“组织-文件夹选项-查看-显示所有文件”;
3、然后在图标损坏的分区下找到autorun.inf文件,删除后重启即可解决问题。以上就是关于win7磁盘分区图标显示错误怎么办的两种方法了,如果你也遇到了磁盘分区图标显示错误的话就赶紧试试上面的方法吧,这样就可以轻松解决问题了哦。
参考技术C 如果是E盘和F盘需要合一起的话,不需要重新装系统把文件拷入D盘,此电脑右键管理,磁盘管理,删除E\F分区,重新建立分区即可 参考技术D 新硬盘分区可以使用PE自带的快速分区完成,如果是已经使用的硬盘,可以在WINDOWS状态下,安装无损分区软件去调整分区,合拼,分割,加大,缩小.具体都在系统平台上运行,分区后的硬盘数据不会被损坏.也无需去格式化的. 追问: 现在就是硬盘没有分区了,所以系统也装不了,用启动盘的pe也没办法分区。 回答: 用其他电脑在网上下载一个大白菜PE,用另外的U盘或者手机内存卡都可以安装它的,内部带有无损分区和快速分区两种,快速分区就是在WIN7PE里的,需要启动PE.无损分区直接就在选项中有.无损分区可以根据个人需求去分割硬盘分区和选择大小.
怎么更改电脑硬盘的分区大小?
步骤1. 在“此电脑”上右键点击,选择“管理”,然后在“计算机管理”窗口的左侧列表中选择“磁盘管理”。在Windows 10中也可以右键点击开始菜单,直接选择“磁盘管理”功能。
步骤2. 在分区列表中,右键点击希望重新分区的部分,选择“压缩卷”,系统经过分析后会给出可用压缩容量。
步骤3. 输入希望分出的容量大小
注意,如果是系统盘的话,应该留下至少50GB的容量。确定容量后,点击“压缩”,完成后会看到分区列表中增加了一块未分区的自由空间。
*这里要注意:因为Windows 系统按照1024MB=1GB计算,而硬盘厂商们是按照1000MB=1GB换算,如果直接输入100000MB是得不到100GB分区的。
步骤4. 建立简单卷
重新划分为一个或多个分区都可以。只要右键点击空间,选择“新建简单卷”,再按提示“下一步”就可以了。
步骤5. 分配容量给其他分区
对于未分配空间,也能选择把它指派给任一已存在的分区,在选中的分区上右键点击,选择“扩展卷”,然后按提示操作即可。
参考技术A下载DiskGenius软件。点击C盘,然后点击新建分区。设置D盘的大小即可,详细步骤:
1、下载DiskGenius软件。
2、点击C盘,然后点击新建分区。
3、拖动中间这里的条,设置D盘的大小,然后点击开始。
4、然后点击【保存更改】。
5、打开我的电脑。
6、这个时候就可以看到不同的分区了。
以上是关于硬盘分区错误怎么解决的主要内容,如果未能解决你的问题,请参考以下文章