安装和升级系统时,需要对硬盘做很多工作。必须在硬盘上做文件系统,使文件能存在其上,并为系统不同的部分保留空间。
本章说明所有这些初始化工作。通常,一旦你建立了系统,就不必再做这些工作(除了使用软盘)。如果你要增加一个新硬盘或更好地调整你的硬盘的使用,那么可能回到这一章。
管理磁盘的基本任务有:
格式化磁盘。这为磁盘进入使用做一些工作,比如检查坏扇区。(现在多数硬盘无须格式化。)
给硬盘分区,如果想用于互相不干扰的几件事。分区的一个原因是要在一个硬盘上存不同的操作系统。另一个原因是将用户文件和系统文件分开,以简化备份并在系统崩溃时有助于保护系统文件。
在每个磁盘或分区上建立合适类型的文件系统,然后文件就可以在其上产生和存取。在你建立文件系统前,磁盘对Linux没有意义。
将不同的文件系统安装起来形成一个单独的树结构,按需要可以自动或手工完成。 (手工安装的文件系统通常还要手工unmount)
5章包括虚拟内存和磁盘cache的信息,使用磁盘应该知道这些。
本章说明对硬盘 软盘 CDROM和磁带机应该知道什么。
2种设备
UNIX及Linux,识别2类设备:随机存取的块设备(如磁盘)和字符设备(如磁带和串行线),有些是串行的,有些是随机存取的。文件系统支持的每种看来是个设备文件。当读写设备文件时,数据与设备联系。这样没有必要为存取设备编制特别的程序(程序不直接获取中断或读取串口),例如,发送文件到打印机,只需:
$ cat filename > /dev/lp1
$
文件内容就被打印了(当然,文件必须是打印机能理解的格式)。当然,因为不应该让多人同时cat文件到同一打印机,一般用特定的程序发送文件去打印(通常是lpr )。这个程序能确保同时只有一个文件被打印,并自动在完成后发送下一个。多数设备有类似需要。实际上,根本很少需要关心设备文件。
因为设备被视为文件系统中的文件(在/dev 目录中),很容易看到存在哪些设备文件,使用ls 或其他的适当的命令即可。在ls -l 的输出中,第一列包含文件类型和权限。例如,查看我系统上的一个串行设备:
$ ls -l /dev/cua0
crw-rw-rw- 1 root uucp 5, 64 Nov 30 1993 /dev/cua0
$
第一列第一个字符,即crw-rw-rw-中的c告诉用户文件的种类,这是一个字符设备。一般文件的第一个字符是'-',目录是'd',块设备是'b';更多的信息见ls man页。
注意即使设备没有安装,一般所有设备文件都存在。因此有/dev/sda 文件并不意味着你真的有个SCSI硬盘。有所有的设备文件使安装程序更简单,也易于增加新硬件(无须再为产生新设备的设备文件找出正确的参数)。