Rei*_*ica 3 linux devices proc
该/proc/devices文件按主要修订号和名称列出设备。在我的系统上它显示(部分):
Block devices:
259 blkext
7 loop
8 sd
9 md
11 sr
65 sd
66 sd
67 sd
68 sd
69 sd
70 sd
71 sd
128 sd
129 sd
130 sd
131 sd
132 sd
133 sd
134 sd
135 sd
253 device-mapper
254 mdp
Run Code Online (Sandbox Code Playgroud)
那些“sd”设备是什么?第一个(修订号 8)可能是,/dev/sda但其余的没有出现/dev- 没有带有这些主要修订号的设备。
我确实看到了设备列表:
crw-rw---- 1 root tty 7, 128 Jul 29 14:15 vcsa
crw-rw---- 1 root tty 7, 129 Jul 29 14:15 vcsa1
crw-rw---- 1 root tty 7, 130 Jul 29 14:15 vcsa2
crw-rw---- 1 root tty 7, 131 Jul 29 14:15 vcsa3
crw-rw---- 1 root tty 7, 132 Jul 29 14:15 vcsa4
crw-rw---- 1 root tty 7, 133 Jul 29 14:15 vcsa5
crw-rw---- 1 root tty 7, 134 Jul 29 14:15 vcsa6
Run Code Online (Sandbox Code Playgroud)
其中,未成年人数量可能匹配-将/ proc中显示次要版本号,以及为什么他们叫sd。无论哪种方式,我都没有看到任何设备。135.
有人可以向我解释一下吗?
第一个磁盘/dev/sda是8:0(major:minor),但主编号 8 也包含接下来的 15 个磁盘(Documentation/devices.txt在内核源代码中):
8 block SCSI disk devices (0-15)
0 = /dev/sda First SCSI disk whole disk
16 = /dev/sdb Second SCSI disk whole disk
32 = /dev/sdc Third SCSI disk whole disk
...
240 = /dev/sdp Sixteenth SCSI disk whole disk
Partitions are handled in the same way as for IDE
disks (see major number 3) except that the limit on
partitions is 15.
Run Code Online (Sandbox Code Playgroud)
其余部分用于驱动器的其余部分(主要编号 66-71 和 128-134 相似,并且所有分区方案都相同):
65 block SCSI disk devices (16-31)
0 = /dev/sdq 17th SCSI disk whole disk
16 = /dev/sdr 18th SCSI disk whole disk
...
135 block SCSI disk devices (240-255)
0 = /dev/sdig 241st SCSI disk whole disk
...
240 = /dev/sdiv 256th SCSI disk whole disk
Run Code Online (Sandbox Code Playgroud)
那么,你可能没有很多的磁盘,系统只生成所需要的你确实有设备节点,所以你看不到任何东西,但sda其分割给/dev。
至于vcsa和朋友,它们与虚拟控制台有关:
7 char Virtual console capture devices
0 = /dev/vcs Current vc text contents
1 = /dev/vcs1 tty1 text contents
...
128 = /dev/vcsa Current vc text/attribute contents
129 = /dev/vcsa1 tty1 text/attribute contents
...
Run Code Online (Sandbox Code Playgroud)
还要注意的/dev/vcs*是字符设备,而不是块设备。ls输出中的第一个字母告诉它是哪个。