磁盘是如何分区的

磁盘是如何分区的

在Linux系统中,每个设备都被当成一个文件来对待。

比如,IDE接口的硬盘的文件名即为/dev/hd[a-d],括号内的字母即有/dev/hda,/dev/hdb,/dev/hdc及/dev/hdd这四个文件的意思

SCSI/SATA/USB硬盘在Linux内的文件名为/dev/sd[a-p],每个磁盘驱动器的磁盘分区(partition)不同时,其磁盘文件名会改变。

那么接下来我们就先说下磁盘的分区是依据什么进行的

磁盘的组成,主要由圆形盘片(记录数据)、机械手臂、磁头(读写盘片上的数据)和主轴马达(转动盘片让磁头读写)。

盘片上面可细分出扇区(Sector)与柱面(Cylinder)两种单位,其中扇区每个为512bytes那么大

整块磁盘的第一个扇区特别重要,记录了整块磁盘的重要信息,主要下面两点:

主引导分区(Master Boot Record,MBR):可以安装引导加载程序的地方,有446bytes

分区表(partition table):记录整块硬盘分区的状态,有64bytes

MBR是很重要的,当系统开机的时候会主动去读取这个区块的内容,这样系统才会知道你的程序放在哪里且该如何进行开机。

分区表呢,分区表就是一整块硬盘你想要在上面根据你自己的需要进行分区;由于分区表总量是64bytes,一个分区要16bytes来记录信息,所以最多只有记录4组分区(这个要记住),这四个分区被称为主(Primary)或扩展(Extended)分区

其实所谓的分区只是针对那个64bytes的分区表进行设置;硬盘默认的分区表仅能写入四组分区信息;四组分区信息我们称为主(Primary)或扩展(Extended)分区;分区的最小单位为柱面(cylinder)

那么你会想一块硬盘是不是最多只能有四个分区?这个当然不是,可以通过扩展分区的方式来实现。第一个扇区所在的分区表只能记录四条数据,主分区和扩展分区,我们可以利用额外的扇区记录更多的分区信息,这个新分出来的分区就叫逻辑分区(logical partition)

比如我们在Linux系统中看到一些设备文件名如

P1: /dev/hda1

P2: /dev/hda2

L1: /dev/hda5

L2: /dev/hda6

L3: /dev/hda7

怎么就没有/dev/hda3与/dev/hda4呢?是这样的,前面四个号码都是保留给主分区或扩展分区用的,所以逻辑分区的设备名称号码就由5号开始了,这个很重要哦

主分区、扩展分区与逻辑分区特性:

主分区与扩展分区最多可以有四个(硬盘的限制)

扩展分区最多只能有一个(操作系统的限制)

逻辑分区是由扩展分区分出来的

能被格式化的只有主分区和逻辑分区,扩展分区是无法格式化的

逻辑分区的数量依操作系统而不同,Linux系统中,IDE硬盘最多有59个逻辑分区5到63,SATA硬盘则有11个逻辑分区5到15

你也可以在自己的windows系统下分盘看下,看如何分出5个或6个分区