Chinaunix首页 | 论坛 | 博客
  • 博客访问: 4264046
  • 博文数量: 776
  • 博客积分: 13014
  • 博客等级: 上将
  • 技术积分: 10391
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-22 17:00
文章分类

全部博文(776)

文章存档

2015年(55)

2014年(43)

2013年(147)

2012年(20)

2011年(82)

2010年(429)

分类: LINUX

2010-12-07 11:07:40

提要:

对于一个硬盘(包括移动存储设备)如何规划分区结构及如何划分才是比较合理的;为了减少由于硬盘划分不合理而造成的风险及不必要的麻烦,有必要重述如何对一个硬盘的分区结构进行规划;

一、关于硬盘种类、物理几何结构及硬盘容量、分区大小计算

1、硬盘种类、物理几何结构

硬盘的种类主要是SCSI IDE 、以及现在流行的SATA等;

任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如 SCSI标准已经经历了SCSI-1 SCSI-2SCSI-3;其中目前咱们经常在服务器网站看到的 Ultral-160就是基于SCSI-3标准的;IDE 遵循的是ATA标准,而目前流行的SATA,是ATA标准的升级版本;IDE是并口设备,而SATA是串口,SATA的发展目的是替换IDE

硬盘的物理几何结构是由盘、磁盘表面、柱面、扇区组成,一个张硬盘内部是由几张碟片叠加在一起,这样形成一个柱体面;每个碟片都有上下表面;磁头和磁盘表面接触从而能读取数据;


2、硬盘容量及分区大小的算法;

我们通过fdsik -l 可以发现如下的信息:

Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
   Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux

 heads 是磁盘面;sectors 是扇区;cylinders 是柱面;每个扇区大小是 512byte,也就是0.5K

通过上面的例子,我们发现此硬盘有 255个磁盘面,有63个扇区,有9729个柱面;所以整个硬盘体积换算公式应该是:

磁面个数 x 扇区个数 x 每个扇区的大小512 x 柱面个数 = 硬盘体积 (单位bytes)

 

提示:

由于硬盘生产商和操作系统换算不太一样,硬盘厂家以10进位的办法来换算,而操作系统是以2进位制来换算,所以在换算成M或者G 时,不同的算法结果却不一样;所以我们的硬盘有时标出的是80G,在操作系统下看却少几M

上面例子中,硬盘厂家算法 操作系统算数比较:

硬盘厂家: 80023749120 bytes = 80023749.120 K = 80023.749120 M (向大单位换算,每次除以1000
操作系统: 80023749120 bytes = 78148192.5 K = 76316.594238281 M (向大单位换算,每次除以1024

二、关于硬盘分区划分标准及合理分区结构

1、硬盘分区划分标准

硬盘的分区由主分区、扩展分区和逻辑分区组成;

所以我们在对硬盘分区时要遵循这个标准;主分区(包括扩展分区)的最大个数是四个,主分区(包含扩展分区)的个数硬盘的主引导记录MBRMaster Boot Recorder)决定的,MBR存放启动管理程序(GRUBLILONTLOARDER等)和分区表记录。

其中扩展分区也算一个主分区;

扩展分区下可以包含更多的逻辑分区;

所以主分区(包括扩展分区)范围是从1-4,逻辑分区是从5开始的;

比如下面的例子:

   Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux

 

2、硬盘设备(包括移动存储设备)在Linux或者其它类Unix系统的表示;

IDE 硬盘在Linux或者其它类Unix系统的一般表示为 hd* 比如hdahdb ... ... ,我们可以通过 fdisk -l 来查看;还是以fdisk -l 为准;

SCSI SATA 硬盘在Linux通常也是表示为 sd* ,比如 sda sdb ... ... fdisk -l 为准

移动存储设备在linux表示为 sd* 比如 sda sdb ... ... fdisk -l 为准

3、合理的规划分区

分区结构之一:四个主分区,没有扩展分区;

[|分区1] [主分|2] [|分区3] [|分区4]

这种情况,如果您想在一个磁盘上划分五个以上分区,这样是行不通的;

分区结构之二:三个主分区 一个扩展分区;

[ |  分区1 ] [ | 分区2 ] [ | 分区3 ] [扩展分区]

                                                                          |

            [逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

这种情况行得通,而且分区的自由度比较大;分区也不受约束,能分超过5个分区;

2)最合理的的分区方式;

最合理的分区结构主分区在前,扩展分区在后,然后在扩展分区中划分逻辑分区;主分区的个数+扩展分区个数要控制在四个之内;比如下面的分区是比较好的;

[|分区1] [|分区2] [|分区3] [扩展分区]

                                                            |

             [逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

 

[|分区1] [|分区2] [扩展分区]

                                          |       

   [逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

 

[|分区1] [扩展分区]

                        |       

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

 

最不合理的分区结构: 主分区包围扩展分区;比如下面的;

[|分区1] [|分区2] [扩展分区] [|分区4] [空白未分区空间]

                                          |

    [逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

 

我们根据这个标题,查看一下我们的例子,是不是符合这个标准呢?

   Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux

后记:

把分区基础写出来,主要是想让新手弟兄知道什么是合理的分区结构,如果把硬盘分区规划好了,也为以学习省却了不少麻烦;

阅读(1222) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~