鸟叔Linux学习笔记:第二章 主机规划与磁盘分区
第二章主要讲的是磁盘分区的知识点,知识点有点碎。
1如何选购计算机硬件,主要考虑三个方面:
用途的考虑:游戏机/工作机,侧重点不同。
性价比的考虑:效能,价格,用电,没有最贵,只有只适合。
支援度的考虑:硬件软件要互相匹配。
2在 Linux 系统中,每个装置都被当成一个文件来对待,几乎所有的硬件装置文件都在/dev 这个目录内, 所以会看到
/dev/sda, /dev/sr0 等文件名。
3磁盘分区
为啥要分区?
答:数据的安全性:每个分区槽的数据是分开的,可以互不影响。
系统的效能考虑:分区槽将数据集中在某个磁柱的区段,数据集中了,将有助于数据读取的速度与效能。
分区表目前有两种格式:
(1)MSDOS (MBR) 分区表:磁盘的第一个扇区,大小512bytes,有这两个数据:
主要启动记录区(Master Boot Record, MBR):可以安装开机管理程序的地方,有 446 bytes
分区表(partition table):记录整颗硬盘分区的状态,有 64 bytes
分区表所在区块仅有 64 bytes 容量,最多仅能有四组记录区,每组记录区记录了该区段的启始与结束的磁柱号码。
解释:其实所谓的『分区』只是针对那个 64 bytes 的分区表进行设定而已!
硬盘默认的分区表仅能写入四组分区信息
这四组分区信息我们称为主要(Primary)或延伸(Extended)分区槽,延伸分区最多只能有一个
分区槽的最小单位『通常』为磁柱(cylinder)
当系统要写入磁盘时,一定会参考磁盘分区表,才能针对某个分区槽进行数据的处理
逻辑分区是由延伸分区持续切割出来的分区槽
能够被格式化后,作为数据存取的分区槽为主要分区与逻辑分区。延伸分区无法格式化;
逻辑分区的数量依操作系统而不同,在 Linux 系统中 SATA 硬盘已经可以突破 63 个以上的分区限制;
(2)GUID partition table, GPT 磁盘分区表
GPT 将磁盘所有区块以此 LBA(预设为 512bytes) 来规划,而第一个 LBA 称为 LBA0 (从0 开始编号)。与 MBR 仅使用第一个 512bytes 区块来纪录不同, GPT 使用了34 个 LBA 区块来纪录分区信息! 同时与过去 MBR 仅有一的区块,被干掉就死光光的情况不同, GPT 除了前面 34 个 LBA 之外,整个磁盘的最后
33 个 LBA 也拿来作为另一个备份!
4 BIOS 搭配 MBR/GPT 的开机流程
开机-启动BIOS-到设定硬盘里面去读取第一个扇区的 MBR 位置-开机管理程序-加载(load)核心文件
BIOS:开机主动执行的韧体,会认识第一个可开机的装置;
MBR:第一个可开机装置的第一个扇区内的主要启动记录区块,内含开机管理程序;
开机管理程序(boot loader):一支可读取核心文件来执行的软件;
核心文件:开始操作系统的功能
UEFI BIOS 搭配 GPT 开机的流程
UEFI 主要是想要取代 BIOS 这个韧体界面,也称 UEFI 为 UEFI BIOS。UEFI 使用 C 程序语言,比起使用汇编语言的传统 BIOS 要更容易开发! 下图为两者的比较:
5目录树结构 (directory tree)
整个 Linux 系统最重要的地方就是在于目录树架构。 目录树架构(directory tree)就是以根目录为主,然后向下呈现分支状的目录结构的一种文件架构。 整个目录树架构最重要的就是那个根目录(root directory),这个根目录的表示方法为一条斜线『/』, 所有的文件都与目录树有关。
6『挂载』就是利用一个目录当成进入点,将磁盘分区槽的数据放置在该目录下; 也就是说,进入该目录就可以读取该分区槽的意思。
7基本硬盘分区的模式
(1)最简单的分区方法:仅分区出根目录与内存置换空间( / & swap )即可。 然后再预留一些剩余的磁盘以供后续的练习之用.
(2)较麻烦一点的分区方式就是先分析这部主机的未来用途,然后根据用途去分析需要较大容量的目录, 以及读写较为频繁的目录,将这些重要的目录分别独立出来而不与根目录放在一起, 那当这些读写较频繁的磁盘分区槽有问题时,至少不会影响到根目录的系统数据,挽救方面就比较容易!
例如: