[鸟哥Linux学习笔记] 01 磁盘分区
磁盘可以细分出扇区和磁柱两种单位,其中散去每个为512bytes那么大,山区中第一个山区特别重要,因为他纪律了整个磁盘的重要信息,主要有两个:1.主要启动记录区(Master Boot Record, MBR):可以安装开机管理程序的地方,有446bytes。2.分割表(partition table):记录整个磁盘分割的状态,有64bytes
- MBR很重要,引文当系统在开机的时候会主动去读取这个区块的内容,这样系统才会知道程序放在那里其应该如何开机。如果安装多重引导的系统,MBR这个区块的管理就非常非常重要了!
- 分割表记录了磁盘分割的信息。其64bytes信息中,总共分为四组记录区,魅族几率去急了了该区点的起始与结束的磁柱号码。
图1 磁盘分区表的作用示意图
如果上面的硬盘装置文件名为/dev/hda 那么这四个分割草在Linux系统中的装置文件名如下所示:
- P1: /dev/hda1
- P2: /dev/hda2
- P3: /dev/hda3
- P4: /dev/hda4
图中我们假设磁盘中只有400个磁柱,公分个成四个分割槽,第四个分割槽所在为 301-400号磁柱的范文。当操作系统为Windows时,那么第一道第一个分割槽的代号应该为C,D,E,F.当有资料要写入F槽时,你的数据会被写入这个磁盘的301-400号磁柱之间。
由于分割表只有64bytes,最多只能容纳四壁分割的记录,这四个分割的记录被成为主要(Primary)或延伸(Extended)分割槽。根据上面的图示与说明,我们可以得到几个重点信息:
- 其实所谓的分割 只是针对哪个64字节的分割表进行设定而已
- 硬盘默认的分割表仅能写入四组分割信息
- 这四组分割信息我们成为主要或延伸分割槽
- 分割槽的最小单位为磁柱
- 当系统要写入磁盘是,一定会参考磁盘分区表,才能针对某个分割槽进行数据处理
如果想分多于四个分区,则使用延伸分割的方式来处理。延伸分割的想法是:既然第一个山区所在的分割表只能记录四笔数据,那我可否利用额外的山区来纪律更多的分割信息。如下:
图2 延伸分割示意图
从上图中可以看到,磁盘的四个分割记录区只使用了两个,P1为主要分割,而P2为延伸分割,延伸分割的目的是为了使用额外的山区来纪律分割信息,延伸分割本省并不能被拿来格式化。然后我们可以透过延伸分割所指向的那个区块继续做分割的记录。
右下方那个区块有继续又分割出五个分割槽,这五个有延伸分割继续切出来的分割槽,就被成为逻辑分割槽(logical partition),由于逻辑分割槽是由延伸分割槽继续分割出来的,所以他可以使用的磁柱范围就是延伸分割所设定的范围。也就是图中的 101-400
上述分割槽在Linux系统中装置文件名分别如下:
- P1: /dev/hda1
- P2: /dev/hda2
- L1: /dev/hda5
- L2: /dev/hda6
- L3: /dev/hda7
- L4: /dev/hda8
- L5: /dev/hda9
之所以没有/dev/hda3 /dev/hda4 是因为前面四个号码都是保留给Primary或者Extended用的。所以逻辑分割槽的装置名称就从5开始了。
对主要分割、延伸分割与逻辑分割的特性做一个简单的定义:
- 主要分割与延伸分割最多可以有四笔
- 延伸分割最多只能有一个
- 逻辑分割是有延伸分割持续切割出来的分割槽
- 磁盘被格式化后,作为数据存取的分割槽为主要分割与逻辑分割,延伸分割无法格式化
- 逻辑分割的数量依操作系统而不同,在Linux系统中,IDE硬盘最多有59个逻辑分割(5号到63号),SATA硬盘则有11个逻辑分割(5号到15号)
操作系统启动流程:
- BIOS:开机主动执行的固件,会去寻找第一个可开机的装置
- MBR:第一个可开机装置的第一个山区内的主要启动记录区块,内含开机管理程序
- 开机管理程序(boot loader):一个可读取核心档案来执行的软件
- 核心档案:开始操作系统的功能