|
再议硬盘分区的动态更改
DOS分区程序是FDISK。当用FDISK分完区后,再想动态对分区中的某一个或某几个进行更改大小、删除、移动及合并等工作就不是很容易了。若用FDISK进行重分区,FDISK会破坏硬盘上的数据,所以不宜用FDISK来动态更改硬盘分区。而NORTON中的DISKEDIT工具虽也可用来对硬盘分区进行手工修改,但也仅仅是用来修改原有分区的大小(修改范围为分区中所剩空间的大小),而不能对分区中每簇所含扇区数(即簇大小)进行重新分配。到目前为止,可用来进行此类工作的最好的工具是PowerQuest公司的PartitionMagic软件,中文名为“分区魔术师”。顾名思义,PQmagic对分区操作应该是非常方便的。有关此软件的用法在报纸上已有很多文章介绍过,这里就不赘述了。虽然根据软件说明书或软件帮助菜单中的内容可容易地运用它,但在使用它的过程中也应该注意一些问题,下面给出一个例子来说明其中之一。一台586 133MHz机器只有一个硬盘分三个区,C区250M,D区500M,E区450M。在C区装上DOS6.22,D区装上PWIN95及一些95下的应用软件,E区为数据区。因为经常在WIN95环境下运行及安装软件,使WIN95所在的D盘剩余空间越来越小,只剩下二十几兆。现在想将E盘变小,然后将空出来的空间给D区。操作步骤如下:
1. 启动PQmagic,选中E区;
2. 先将E区resize(改变大小)为400M,空出50M;
3. 再将E区move(移动)到硬盘的尾部,使最后的剩余空间为零;
4. 经过上述步骤,就把空出来的50M挪到D区的尾部,这样才能将D区与剩余空间合并,使D区变大;
5. 选中D区再选resize,弹出一个应用窗口,里面有D区可供改变的范围为466M-510M,也就是根本不能变大,只能变小。E区所空出来的50M空间无法与D区合并,对它能做的工作只有再建一个分区或者返回去给E区。
经过反复好几次操作都出现同类情况。怀疑硬盘里数据太乱,可能有crosslink(交叉链接)错误,用WIN95的磁盘扫描程序检查,也没查出什么毛病;另外磁盘要出现错误PQmagic也能查出来,因此硬盘出毛病的概率可认为为零。那么是什么原因?操作步骤都对,为什么空间不能变大?
后来在用cluster analyze(簇分析)的时候,看到分区中簇大小可为512byte、2K、4K、8K、16K等,猛然想起是否与DOS分区簇大小有关?因为在簇分析中看到D区簇只有8K为允许值,而其它的如4K、16K都标记为not allowed(不允许)。如果D区簇大小可改为16K,则D区大小是否就可变大了!
因为DOS(6.x)管理磁盘是按簇来进行的,虽然不同的磁盘每一扇区都是512字节,但簇的大小却不一样,具体分法如下:
软磁盘:
大小 每簇字节数(byte)
360K 1K
1.2/1.44M 0.5K即512字节
对于硬盘,簇的大小与分区有关,分区越大,簇尺寸越大,其关系见下表所示:
分区大小(MB) <127 128-255 256-511 512-1,023 1,024-2,048
每簇尺寸(K) 2 4 8 16 32
依照上述分法,510M的D区每簇字节数就为8K,若要增大50M,则每簇字节数必须为16K才行。而要将D区中每簇8K变为16K,势必浪费更大的磁盘空间,所以D区要有更大的剩余空间,大约需要40多兆。而目前D区只有二十几兆剩余空间,所以不能增大簇。回到DOS后,将D区中的数据移动一部分到E区,再运行PQmagic,后续过程都很顺利:点中D区,选左下角的resize按钮,在弹出的应用窗口中D区的可变范围立刻变为510M-560M,选择560M后确定,剩下的工作由PQmagic来完成,一切OK。
由上面的例子可以看出,在用PQmagic对硬盘分区更改时,有必要注意一下分区剩余空间的大小及分区中簇的大小,这样方能使整个工作更顺利,更快捷。
| |