电脑技术学习

LPI 101 考试准备: 硬件和体系结构

dn001

Linux 磁盘名称

在系列后面的教程中我们将深入讨论 Linux 如何使用磁盘。不过,现在应该介绍另一个重要的 Linux 文件系统,即 /dev 文件系统。类似于 /proc ,这也是一个假的文件系统,它描述的是某个 Linux 系统拥有的或者可以拥有的设备。在 /dev 文件系统中,可以看到 /dev/hda、/dev/hda5、/dev/sda、/dev/sdb1 等条目。还可以发现很多对应于其他设备类型的条目,不过,现在让我们来研究以 /dev/hd/dev/sd 开头的那些。

/dev/hd 开头的设备,比如 /dev/hda 或 /dev/hda5,指的是 IDE 驱动器。第一个 IDE 控制器上的第一个设备是 /dev/hda,第二个(如果存在)是 /dev/hdb。同理,在第二个 IDE 控制器上的第一个设备是 /dev/hdc,第二个是 /dev/hdd。在清单 10 中可以看到,在 /dev 中定义的比系统中可能存在的要多很多。


清单 10. /dev/hd? and /dev/sd? 条目

	[ian@lyrebird ian]$ ls /dev/hd?/dev/hda  /dev/hdd  /dev/hdg  /dev/hdj  /dev/hdm  /dev/hdp  /dev/hds/dev/hdb  /dev/hde  /dev/hdh  /dev/hdk  /dev/hdn  /dev/hdq  /dev/hdt/dev/hdc  /dev/hdf  /dev/hdi  /dev/hdl  /dev/hdo  /dev/hdr[ian@lyrebird ian]$ ls /dev/sd?/dev/sda  /dev/sde  /dev/sdi  /dev/sdm  /dev/sdq  /dev/sdu  /dev/sdy/dev/sdb  /dev/sdf  /dev/sdj  /dev/sdn  /dev/sdr  /dev/sdv  /dev/sdz/dev/sdc  /dev/sdg  /dev/sdk  /dev/sdo  /dev/sds  /dev/sdw/dev/sdd  /dev/sdh  /dev/sdl  /dev/sdp  /dev/sdt  /dev/sdx

;

与先前对 IRQ 的处理相同,可以使用 dmesg 命令来查找在引导过程中发现了哪些磁盘设备,我的某个系统的输出如清单 11 所示。


清单 11. 引导过程中发现的硬盘驱动器

			[ian@lyrebird ian]$ dmesg | grep "[hs]d[a-z]"Kernel command line: ro root=LABEL=RHEL3 hdd=ide-scsiide_setup: hdd=ide-scsi    ide0: BM-DMA at 0x1860-0x1867, BIOS settings: hda:DMA, hdb:pio    ide1: BM-DMA at 0x1868-0x186f, BIOS settings: hdc:DMA, hdd:DMAhda: WDC WD1600JB-00EVA0, ATA DISK drivehdc: Maxtor 6Y200P0, ATA DISK drivehdd: SONY DVD RW DRU-700A, ATAPI CD/DVD-ROM drivehda: attached ide-disk driver.hda: host protected area => 1hda: 312581808 sectors (160042 MB) w/8192KiB Cache,      CHS=19457/255/63, UDMA(100)hdc: attached ide-disk driver.hdc: host protected area => 1hdc: 398297088 sectors (203928 MB) w/7936KiB Cache,      CHS=24792/255/63, UDMA(33) hda: hda1 hda2 hda3 hda4 < hda5 hda6 hda7 hda8 hda9 hda10 hda11 > hdc: hdc1 < hdc5 hdc6 hdc7 hdc8 >hdd: attached ide-scsi driver.

;

通过清单 11 中突出显示的那些行,可以得知系统有两个 IDE 驱动器(hda 和 hdc)和一个 DVD-RW 驱动器(hdd)。注意,没有 hdb,表明系统中第一个 IDE 控制器上没有第二个驱动器。一个 IDE 驱动器可以拥有最多四个 主(primary)分区和不限数目的 逻辑(logical)分区。考虑清单 11 中的驱动器 hdc,可以发现它有一个主分区(hdc1)和四个逻辑分区(hdc5、hdc6、hdc7 和 hdc8)。在本系列后面的教程主题 104 中我们将会知道, hdc1 实际上是逻辑分区的一个容器(或 扩展(extended) 分区)。

历史上,sda 和 sdb 等设备是 SCSI 磁盘,在学习如何 设置 SCSI 设备 时会对此进行深入讨论。发展到 2.4 内核时,通常使用 SCSI 模拟技术来处理 IDE CD 和 DVD 设备。这种设备在 /dev 中通常是以 /dev/cdrom 等形式出现,这是一个指向 SCSI 模拟设备的符号链接。对于前面所用的系统,清单 12 证明了 /dev/cdrom 是指向 /dev/scd0 的链接,而不是像可能预期的那样指向 /dev/hdd。注意,清单 11 中的 hdd=ide-scsi 内核参数也指出了 hdd 联接的是 ide-scsi 驱动器。


清单 12. IDE SCSI 模拟

		[ian@lyrebird ian]$ ls -l /dev/cdromlrwxrwxrwx  1 root   root   9 Jan 11 17:15 /dev/cdrom -> /dev/scd0

;现在您会发现 USB 和 SATA 存储设备都表现为 sd 设备,而不是 hd 设备。
;

标签: