在
Linux
系统中一切都是文件,硬件设备也不例外。既然是文件,就必须有文件名称。
系统内核中的
udev
设备管理器会自动把硬件名称规范起来,目的是让用户通过设备文件的名
字可以猜出设备大致的属性以及分区信息等;这对于陌生的设备来说特别方便。另外,
udev
设备管理器的服务会一直以守护进程的形式运行并侦听内核发出的信号来管理
/dev
目录下的
设备文件。
Linux 系统中常见的硬件设备的文件名称如表所示。
![](https://i-blog.csdnimg.cn/blog_migrate/dafa241edd5b22a7044a8fd284528005.png)
由于现在的
IDE
设备已经很少见了,所以一般的硬盘设备都会是以“
/dev/sd
”开头的。
而一台主机上可以有多块硬盘,因此系统采用
a
~
p
来代表 16 块不同的硬盘(默认从 a 开始分配),而且硬盘的分区编号也很有讲究:
![](https://i-blog.csdnimg.cn/blog_migrate/dde9fa48fc288b9dc4b93c8a429e5de7.png)
首先,
/dev/
目录中保存的应当是硬件设备文件;其次,
sd
表示是存储设备;然后,
a
表示系统中同类接口中第一个被识别到的设备,最后,5
表示这个设备是一个逻辑分区。一言以蔽之,
“/dev/sda5”表示的就是“这是系统中第一块被识别到的硬件设备中分区编号为 5 的逻辑分区的设备文件”。
考虑到不太容易理解前面所说的主分区、扩展分区和逻辑分区的概念,因此接下来简单科普一下硬盘相关的知识。
正是因为计算机有了硬盘设备,我们才可以在玩游戏的过程中或游戏通关之后随时存档,而不用每次重头开始。硬盘设备是由大量的扇区组成的,每个扇区的容量为 512
字节。其中第一个扇区最重要,它里面保存着主引导记录与分区表信息。就第一个扇区来讲,主引导记录需要占用 446
字节,分区表为
64
字节,结束符占用
2
字节;其中分区表中每记录一个分区信息就需要 16
字节,这样一来最多只有
4
个分区信息可以写到第一个扇区中,这
4
个分区就是 4 个主分区。第一个扇区中的数据信息如图所示。
![](https://i-blog.csdnimg.cn/blog_migrate/075102e0fabe654681a4ea3cde57841b.png)
现在,问题来了—第一个扇区最多只能创建出 4 个分区?于是为了解决分区个数不够的问题,可以将第一个扇区的分区表中 16 字节(原本要写入主分区信息)的空间(称之为扩展分区)拿出来指向另外一个分区。也就是说,扩展分区其实并不是一个真正的分区,而更像是一个占用 16 字节分区表空间的指针—一个指向另外一个分区的指针。这样一来,用户一般会选择使用 3 个主分区加 1 个扩展分区的方法,然后在扩展分区中创建出数个逻辑分区,从而来满足多分区(大于 4 个)的需求。当然,就目前来讲大家只要明白为什么主分区不能超过 4 个就足够了。主分区、扩展分区、逻辑分区可以像图 6-4 那样来规划。