硬件设备在Linux中的文件名
所有的硬件设备在linux下都会被识别并组织成文件!一个设备对应一个设备文件!
几乎所有的硬件设备文件都在/dev目录内, 通过ls -al命令可以看到诸如/dev/sda, /dev/sr0这样的设备文件名。
例如,IDE接口的硬盘文件名为/dev/sd[a-d],中括号内a-d表示a-d的任意一个字母,相当于/dev/sda,/dev/sdb,/dev/sdc和/dev/sdd四个文件。
中括号[ ]的这种表示法在后面还会经常用到。
/dev/lp0和/dev/fd0分别表示打印机和软盘!
下面是常见的设备和文件名对照表:
linux常见设备文件名 | |
---|---|
设备 | 文件名 |
SCSI/SATA/USB接口硬盘驱动器或U盘 | /dev/sd[a-p] |
IDE接口硬盘驱动器(已逐步被SATA接口取代) |
/dev/hd[a-d] |
虚拟机内的Virt I/O设备 | /dev/vd[a-p] |
软盘驱动器 | /dev/fd[0-7] |
打印机 |
/dev/lp[0-2] (25针串口) /dev/usb/lp[0-15] (USB接口) |
鼠标 |
/dev/input/mouse[0-15] (通用) /dev/psaux (PS/2接口) /dev/mouse (当前鼠标) |
CDROM/DVDROM |
/dev/scd[0-1] (通用) /dev/sr[0-1] (通用,CentOS较常见) /dev/cdrom (当前CDROM) |
磁带机 |
/dev/ht0 (IDE接口) /dev/st0 (SATA/SCSI接口) /dev/tape (当前磁带) |
更多Linux内核支持的硬件设备与文件名可以参考如下网页:
https://www.kernel.org/doc/Documentation/devices.txt
2.磁盘连接的方式与设备文件名的关系
回到顶部
本章的重点是安装linux,那么是要把linux安装到哪里呢?其实就是安装到硬盘了。
linux的安装很大一部分工作就是对磁盘进行分区规划。
我们知道一块磁盘是可以被分区成多个分区的(partition),
以旧有的 Windows 观点来看,你可能会有一颗磁盘并且将他分区成为 C:, D:, E:槽对吧!那个 C, D, E
就是分区(partition)啰。但是 Linux 的设备都是以文件的型态存在,那分区的文件名又是什么? 如
何进行磁盘分区?磁盘分区有哪些限制?目前的 BIOS 与 UEFI 分别是啥?MSDOS 与 GPT 又是
啥? 都是我们这个小节所要探讨的内容啰。
磁盘常用的接口分别是SATA和SAS接口,目前主流的是SATA接口。
IDE接口硬盘在linux中的设备文件名为/dev/hd[a-d],老式的IDE接口已经被淘汰,
为了统一处理大部分Linux distribution已经将IDE接口的磁盘设备文件名仿真成和SATA接口的硬盘设备文件名一样了!
所以基本上看不到/dev/hd[a-d]文件名了!
在实体物理linux主机中SATA接口硬盘设备的文件名为/dev/sd[a-d]。
如果是linux主机为虚拟机,虚拟机使用的虚拟接口VirtIO磁盘设备,
虚拟磁盘设备文件名为/dev/vd[a-p]!
由于SATA/USB/SAS等磁盘接口都是使用SCSI模块来驱动, 这些接口的磁盘设备文件名都是/dev/sd[a-p]。
那么磁盘设备文件名是按照什么顺序分配呢?
假设主板上有六个SATA接口插槽,有两块SATA接口磁盘和一个usb磁盘,
两块SATA接口磁盘分别插在主板的SATA1, SATA5插槽上,usb磁盘接在usb接口上,如何给这三个设备分配文件名呢?
如果是旧式的IDE接口,文件名是按照主板IDE接口插槽顺序分配,第一个插槽为/dev/hda,第二个插槽为/dev/hdb,以此类推。
当然IDE已经被淘汰了,我们也就不需要过多的关注了!
按照上面传统的思路,设备文件名应该是:
1. SATA1插槽上的文件名:/dev/sda;
2. SATA5插槽上的文件名:/dev/sde;
3. USB磁盘文件名:/dev/sdf;
但是但是对于SATA/USB/SAS等接口设备,linux是按照设备的启动识别顺序分配文件名,第一个被linux启动识别的磁盘设备为/dev/sda,
第二个就是/dev/sdb,第三个就是/dev/sdc。并不会和主板上的插槽代号一一对应,如果是设备启动顺序是SATA1、SATA5、USB,
那么正确的设备文件名应该是:
1. SATA1插槽上的文件名:/dev/sda;
2. SATA5插槽上的文件名:/dev/sdb;
3. USB磁盘文件名:/dev/sdc;
设备的启动顺序可以在开机BIOS中设置!
上面是一整个磁盘的设备文件名,但是如果磁盘被分区成多个分区,每个分区也对应着一个设备文件名!
只需要在磁盘设备文件名后面加上数字即可,如果按照传统的MBR磁盘分区方式,第一个主分区设备文件名是/dev/sda1,
第二个主分区设备文件名是/dev/sda2,第三个主分区设备文件名是/dev/sda3,
第四个主分区设备文件名是/dev/sda4.
第五个主分区呢?哈哈,其实不会有第五个主分区的,
因为传统的MBR磁盘分区方式中主分区至少有1个,最多只能有4个,
扩展分区为0或者1个。主分区和扩展分区的总数不能超过4个。扩展分区无法直接使用,需要再划分为至少一个逻辑分区。
除了MBR传统分区方式,还有最新的GPT分区方式!天哪!感觉刚刚学明白了一点,一下子又堕入无边地狱!
下面让我们先详细的了解一下磁盘的分区,然后再继续探讨分区的设备文件名。搞明白之后也没有那么复杂!
initroot编辑整理,转载请注明www.initroot.com