/dev/dm-0 ....(/dev/mapper机制)
查看/dev下时候,会看到dm-xx的设备,那么这些设备到底是什么设备呢,
Device Mapper 是 Linux 2.6 内核中提供的一种从逻辑设备到物理设备的映射框架机制,
在该机制下,用户可以很方便的根据自己的需要制定实现存储资源的管理策略,
当前比较流行的 Linux 下的逻辑卷管理器如 LVM2(Linux Volume Manager 2 version)、EVMS(Enterprise Volume Management System)、
dmraid(Device Mapper Raid Tool)等都是基于该机制实现的.
查看dm
[root@ht8 sd_mod]# ll /dev/dm*
brw-rw---- 1 root disk 253, 0 Jan 5 19:39 /dev/dm-0
brw-rw---- 1 root disk 253, 1 Jan 5 19:39 /dev/dm-1
brw-rw---- 1 root disk 253, 10 Feb 23 19:20 /dev/dm-10
brw-rw---- 1 root disk 253, 11 Feb 23 19:20 /dev/dm-11
brw-rw---- 1 root disk 253, 12 Feb 23 19:20 /dev/dm-12
brw-rw---- 1 root disk 253, 13 Feb 23 19:20 /dev/dm-13
brw-rw---- 1 root disk 253, 14 Feb 23 19:21 /dev/dm-14
brw-rw---- 1 root disk 253, 2 Feb 23 19:20 /dev/dm-2
brw-rw---- 1 root disk 253, 3 Feb 23 19:20 /dev/dm-3
brw-rw---- 1 root disk 253, 4 Feb 23 19:20 /dev/dm-4
brw-rw---- 1 root disk 253, 5 Feb 23 19:20 /dev/dm-5
brw-rw---- 1 root disk 253, 6 Feb 23 19:20 /dev/dm-6
brw-rw---- 1 root disk 253, 7 Feb 23 19:20 /dev/dm-7
brw-rw---- 1 root disk 253, 8 Feb 23 19:20 /dev/dm-8
brw-rw---- 1 root disk 253, 9 Feb 23 19:20 /dev/dm-9
//b开头的,从cat /proc/devices 里面查看下
[root@ht8 sd_mod]# cat /proc/devices
Character devices: //对应 /dev下的c打头的
1 mem
4 /dev/vc/0
4 tty
4 ttyS
5 /dev/tty
5 /dev/console
5 /dev/ptmx
6 lp
7 vcs
9 st
10 misc
13 input
21 sg
29 fb
99 ppdev
128 ptm
136 pts
162 raw
180 usb
188 ttyUSB
189 usb_device
202 cpu/msr
203 cpu/cpuid
226 drm
245 aux
246 hidraw
247 usbmon
248 bsg
249 hmm_device
250 watchdog
251 iio
252 rtc
253 dax
254 tpm
Block devices: //对应/dev/下b打头的设备
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
dm实际对应的那些设备,一般都位于 /dev/mapper下面
这里有段英文:
when udev support is enabled in LVM, the /dev/mapper/<name> isa symlink to /dev/dm-X (this was chosen to comply with udev requirements)
https://listman.redhat.com/archives/linux-lvm/2010-July/msg00027.html
[root@ht8 sd_mod]# ll /dev/mapper
total 0
lrwxrwxrwx 1 root root 7 Jan 5 19:39 centos-root -> ../dm-0
lrwxrwxrwx 1 root root 7 Jan 5 19:39 centos-swap -> ../dm-1
crw------- 1 root root 10, 236 Jan 5 19:39 control
lrwxrwxrwx 1 root root 8 Feb 23 19:21 docker-253:0-135138821-18a265cfa6417eee03f5dd6a27aa4b0d2a5f68847de92753a4b2e8898965e5f9 -> ../dm-14
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-1e346ca7ac629e85b28b43247983c01647f050dd6ef9ba1f140942d520f142e1 -> ../dm-6
lrwxrwxrwx 1 root root 8 Feb 23 19:20 docker-253:0-135138821-202a7e731a43f9e184d9e56307edeb60062de3a5533336e4c62c2c0600a0fc72 -> ../dm-12
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-2c7da4e527f421da263f764d0fae9e453bd3855b7036197e6c0220240a8b08d2 -> ../dm-4
lrwxrwxrwx 1 root root 8 Feb 23 19:20 docker-253:0-135138821-2dc18f6625629ef021569be25a0d210f8b5cd0e5a8a81b269a2da628777337b9 -> ../dm-11
lrwxrwxrwx 1 root root 8 Feb 23 19:20 docker-253:0-135138821-32a1e85fe9f4c8eab9248b8ed8c1a8be4caf45436af329f323d30bf6a18dfee0 -> ../dm-13
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-5916d79c2cd54aa0d2432c8e7ec9f0f139c1ad588d38ddbd7e44fbeb8fde49f2 -> ../dm-5
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-9e7948852a96d7d4de0713d5a9e7fdb0cffe7c0de7daeea629663b58ad686897 -> ../dm-7
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-9e87d45d1387dec14300f5595d41d55e41d70a19cd7874a528167eb8cdf816b9 -> ../dm-9
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-bd1a50cb97f898c748f5fde1b993a81692281d4b928f0b18ea6f715f20d216a5 -> ../dm-8
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138821-c4a4cce6e6b1fe6d140d2e748c811cc72172dadcb8b29116cff30ad9772a552e -> ../dm-3
lrwxrwxrwx 1 root root 8 Feb 23 19:20 docker-253:0-135138821-d8239c845172063e489bfdf8dd3664ae90388bc636469ca56d2d6e39e5aef0f5 -> ../dm-10
lrwxrwxrwx 1 root root 7 Feb 23 19:20 docker-253:0-135138221-pool -> ../dm-2
[root@ht8 sd_mod]# dmsetup ls
docker-253:0-135138821-32a1e85fe9f0c8eab9248b8ed8c1a8be4caf45436af329f323d30bf6a18dfee0 (253:13)
docker-253:0-135138821-18a265cfa6407eee03f5dd6a27aa4b0d2a5f68847de92753a4b2e8898965e5f9 (253:14)
docker-253:0-135138821-bd1a50cb97f898c748f5fde1b993a81692281d4b928f0b18ea6f715f20d216a5 (253:8)
docker-253:0-135138821-9e87d45d1384dec14300f5595d41d55e41d70a19cd7874a528167eb8cdf816b9 (253:9)
docker-253:0-135138821-9e7948852a94d7d4de0713d5a9e7fdb0cffe7c0de7daeea629663b58ad686897 (253:7)
docker-253:0-135138821-1e346ca7ac6a9e85b28b43247983c01647f050dd6ef9ba1f140942d520f142e1 (253:6)
docker-253:0-135138821-2c7da4e527f521da263f764d0fae9e453bd3855b7036197e6c0220240a8b08d2 (253:4)
docker-253:0-135138821-202a7e731a42f9e184d9e56307edeb60062de3a5533336e4c62c2c0600a0fc72 (253:12)
docker-253:0-135138821-5916d79c2cd64aa0d2432c8e7ec9f0f139c1ad588d38ddbd7e44fbeb8fde49f2 (253:5)
docker-253:0-135138821-d8239c845177063e489bfdf8dd3664ae90388bc636469ca56d2d6e39e5aef0f5 (253:10)
docker-253:0-135138821-c4a4cce6e6bdfe6d140d2e748c811cc72172dadcb8b29116cff30ad9772a552e (253:3)
docker-253:0-135138821-pool (253:2)
docker-253:0-135138821-2dc18f6625689ef021569be25a0d210f8b5cd0e5a8a81b269a2da628777337b9 (253:11)
centos-swap (253:1)
centos-root (253:0)
dmsetup info 可以来查看dm设备(lvm)映射情况,可以看到主设备号,次设备号,看不到物理硬盘信息(sda/sdb)
[root@ht8 sd_mod]# dmsetup info Name: docker-253:0-135138821-32a1e85fe9f0c8eab9248b81d8c1a8be4caf45436af329f323d30bf6a18dfee0 State: ACTIVE Read Ahead: 256 Tables present: LIVE Open count: 1 Event number: 0 Major, minor: 253, 13 Number of targets: 1 Name: docker-253:0-135138821-18a265cfa6407eee03f5dd6a27aa4b0d2a5f68847de92753a4b2e8891965e5f9 State: ACTIVE Read Ahead: 256 Tables present: LIVE Open count: 1 Event number: 0 Major, minor: 253, 14 Number of targets: 1
.....其他省略
ll /dev/
[root@ht8 sd_mod]# ll /dev | grep dm crw------- 1 root root 10, 61 Jan 5 19:39 cpu_dma_latency brw-rw---- 1 root disk 253, 0 Jan 5 19:39 dm-0 brw-rw---- 1 root disk 253, 1 Jan 5 19:39 dm-1 brw-rw---- 1 root disk 253, 10 Feb 23 19:20 dm-10 brw-rw---- 1 root disk 253, 11 Feb 23 19:20 dm-11 brw-rw---- 1 root disk 253, 12 Feb 23 19:20 dm-12 brw-rw---- 1 root disk 253, 13 Feb 23 19:20 dm-13 brw-rw---- 1 root disk 253, 14 Feb 23 19:21 dm-14 brw-rw---- 1 root disk 253, 2 Feb 23 19:20 dm-2 brw-rw---- 1 root disk 253, 3 Feb 23 19:20 dm-3 brw-rw---- 1 root disk 253, 4 Feb 23 19:20 dm-4 brw-rw---- 1 root disk 253, 5 Feb 23 19:20 dm-5 brw-rw---- 1 root disk 253, 6 Feb 23 19:20 dm-6 brw-rw---- 1 root disk 253, 7 Feb 23 19:20 dm-7 brw-rw---- 1 root disk 253, 8 Feb 23 19:20 dm-8 brw-rw---- 1 root disk 253, 9 Feb 23 19:20 dm-9
dax
[root@ht8 sd_mod]# cat /proc/devices | grep dax 253 dax
https://gitee.com/yuan369/linux/blob/master/drivers/dax/dax.c
lsblk
[root@ht8 sd_mod]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 0 200G 0 disk sdb 8:16 0 100G 0 disk ├─sdb1 8:17 0 500M 0 part /boot └─sdb2 8:18 0 99.5G 0 part ├─centos-root 253:0 0 95.5G 0 lvm / └─centos-swap 253:1 0 4G 0 lvm [SWAP] sr0 11:0 1 1024M 0 rom loop0 7:0 0 100G 0 loop └─docker-253:0-135138821-pool 253:2 0 100G 0 dm ├─docker-253:0-135138821-c4a4cce6e6bdfe6d140d2e748c811cc72172dadcb8b29116cff30ad9772a552e 253:3 0 10G 0 dm /var/lib/docker/devicemapper/mnt/c4a4cce6e6bdfe6d ├─docker-253:0-135138821-2c7da4e527f521da263f764d0fae9e453bd3855b7036197e6c0220240a8b08d2 253:4 0 10G 0 dm /var/lib/docker/devicemapper/mnt/2c7da4e527f521da ├─docker-253:0-135138821-5916d79c2cd64aa0d2432c8e7ec9f0f139c1ad588d38ddbd7e44fbeb8fde49f2 253:5 0 10G 0 dm /var/lib/docker/devicemapper/mnt/5916d79c2cd64aa0 ├─docker-253:0-135138821-1e346ca7ac6a9e85b28b43247983c01647f050dd6ef9ba1f140942d520f142e1 253:6 0 10G 0 dm /var/lib/docker/devicemapper/mnt/1e346ca7ac6a9e85 ├─docker-253:0-135138821-9e7948852a94d7d4de0713d5a9e7fdb0cffe7c0de7daeea629663b58ad686897 253:7 0 10G 0 dm /var/lib/docker/devicemapper/mnt/9e7948852a94d7d4 ├─docker-253:0-135138821-bd1a50cb97f898c748f5fde1b993a81692281d4b928f0b18ea6f715f20d216a5 253:8 0 10G 0 dm /var/lib/docker/devicemapper/mnt/bd1a50cb97f898c7 ├─docker-253:0-135138821-9e87d45d1384dec14300f5595d41d55e41d70a19cd7874a528167eb8cdf816b9 253:9 0 10G 0 dm /var/lib/docker/devicemapper/mnt/9e87d45d1384dec1 ├─docker-253:0-135138821-d8239c845177063e489bfdf8dd3664ae90388bc636469ca56d2d6e39e5aef0f5 253:10 0 10G 0 dm /var/lib/docker/devicemapper/mnt/d8239c845177063e ├─docker-253:0-135138821-2dc18f6625689ef021569be25a0d210f8b5cd0e5a8a81b269a2da628777337b9 253:11 0 10G 0 dm /var/lib/docker/devicemapper/mnt/2dc18f6625689ef0 ├─docker-253:0-135138821-202a7e731a42f9e184d9e56307edeb60062de3a5533336e4c62c2c0600a0fc72 253:12 0 10G 0 dm /var/lib/docker/devicemapper/mnt/202a7e731a42f9e1 ├─docker-253:0-135138821-32a1e85fe9f0c8eab9248b8ed8c1a8be4caf45436af329f323d30bf6a18dfee0 253:13 0 10G 0 dm /var/lib/docker/devicemapper/mnt/32a1e85fe9f0c8ea └─docker-253:0-135138821-18a265cfa6407eee03f5dd6a27aa4b0d2a5f68847de92753a4b2e8898965e5f9 253:14 0 10G 0 dm /var/lib/docker/devicemapper/mnt/18a265cfa6407eee loop1 7:1 0 2G 0 loop └─docker-253:0-135138821-pool 253:2 0 100G 0 dm ├─docker-253:0-135138821-c4a4cce6e6bdfe6d140d2e748c811cc72172dadcb8b29116cff30ad9772a552e 253:3 0 10G 0 dm /var/lib/docker/devicemapper/mnt/c4a4cce6e6bdfe6d ├─docker-253:0-135138821-2c7da4e527f521da263f764d0fae9e453bd3855b7036197e6c0220240a8b08d2 253:4 0 10G 0 dm /var/lib/docker/devicemapper/mnt/2c7da4e527f521da ├─docker-253:0-135138821-5916d79c2cd64aa0d2432c8e7ec9f0f139c1ad588d38ddbd7e44fbeb8fde49f2 253:5 0 10G 0 dm /var/lib/docker/devicemapper/mnt/5916d79c2cd64aa0 ├─docker-253:0-135138821-1e346ca7ac6a9e85b28b43247983c01647f050dd6ef9ba1f140942d520f142e1 253:6 0 10G 0 dm /var/lib/docker/devicemapper/mnt/1e346ca7ac6a9e85 ├─docker-253:0-135138821-9e7948852a94d7d4de0713d5a9e7fdb0cffe7c0de7daeea629663b58ad686897 253:7 0 10G 0 dm /var/lib/docker/devicemapper/mnt/9e7948852a94d7d4 ├─docker-253:0-135138821-bd1a50cb97f898c748f5fde1b993a81692281d4b928f0b18ea6f715f20d216a5 253:8 0 10G 0 dm /var/lib/docker/devicemapper/mnt/bd1a50cb97f898c7 ├─docker-253:0-135138821-9e87d45d1384dec14300f5595d41d55e41d70a19cd7874a528167eb8cdf816b9 253:9 0 10G 0 dm /var/lib/docker/devicemapper/mnt/9e87d45d1384dec1 ├─docker-253:0-135138821-d8239c845177063e489bfdf8dd3664ae90388bc636469ca56d2d6e39e5aef0f5 253:10 0 10G 0 dm /var/lib/docker/devicemapper/mnt/d8239c845177063e ├─docker-253:0-135138821-2dc18f6625689ef021569be25a0d210f8b5cd0e5a8a81b269a2da628777337b9 253:11 0 10G 0 dm /var/lib/docker/devicemapper/mnt/2dc18f6625689ef0 ├─docker-253:0-135138821-202a7e731a42f9e184d9e56307edeb60062de3a5533336e4c62c2c0600a0fc72 253:12 0 10G 0 dm /var/lib/docker/devicemapper/mnt/202a7e731a42f9e1 ├─docker-253:0-135138821-32a1e85fe9f0c8eab9248b8ed8c1a8be4caf45436af329f323d30bf6a18dfee0 253:13 0 10G 0 dm /var/lib/docker/devicemapper/mnt/32a1e85fe9f0c8ea └─docker-253:0-135138821-18a265cfa6407eee03f5dd6a27aa4b0d2a5f68847de92753a4b2e8898965e5f9 253:14 0 10G 0 dm /var/lib/docker/devicemapper/mnt/18a265cfa6407eee
dm-0--->dm-14
[root@ht8 sd_mod]# iostat -d 1 Linux 3.10.0-1160.45.1.el7.x86_64 (ht8.node) 03/26/2022 _x86_64_ (8 CPU) Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn sda 0.00 0.00 0.00 1176 0 sdb 3.49 0.23 19.54 1599888 135179590 dm-0 3.56 0.23 19.54 1587634 135177481 dm-1 0.00 0.00 0.00 2208 0 dm-2 0.04 0.07 0.10 466569 714421 dm-3 0.00 0.00 0.00 9328 2650 dm-4 0.00 0.00 0.00 3946 2441 dm-5 0.00 0.00 0.00 16025 2515 dm-7 0.00 0.00 0.00 3946 2441 dm-6 0.00 0.00 0.00 3946 2441 dm-9 0.00 0.00 0.00 14479 2573 dm-10 0.00 0.01 0.00 71761 7318 dm-8 0.00 0.00 0.00 3946 2441 dm-11 0.00 0.00 0.00 3946 2441 dm-12 0.04 0.00 0.13 34161 909708 dm-13 0.00 0.01 0.00 76896 17479 dm-14 0.00 0.02 0.01 119546 51175
Linux的文件权限
解释: 第一列 r可读,w可写,e可执行,-无权限 [d]目录,[-]文件,[l]链接文件,[b]设备文件中可供存储的接口设备,[c]串行端口设备。(对应/proc/devices里面的Character devices和Block devices)
[root@ht8 sd_mod]# ll /dev total 4 crw-rw---- 1 root video 10, 175 Jan 5 19:39 agpgart //开头c,所以找/proc/devices中Character devices下的编号是10的,即misc,代表misc串口设备 crw------- 1 root root 10, 235 Jan 5 19:39 autofs drwxr-xr-x 2 root root 480 Feb 23 19:22 block drwxr-xr-x 2 root root 140 Jan 5 19:39 bsg crw------- 1 root root 10, 234 Jan 5 19:39 btrfs-control lrwxrwxrwx 1 root root 3 Jan 5 19:39 cdrom -> sr0 //衔接文件 drwxr-xr-x 2 root root 80 Jan 5 19:39 centos drwxr-xr-x 2 root root 3040 Mar 24 18:17 char crw------- 1 root root 5, 1 Jan 5 19:39 console //c代表字符设备,5是 /dev/console (查看/proc/devices设备定义) lrwxrwxrwx 1 root root 11 Jan 5 19:39 core -> /proc/kcore drwxr-xr-x 10 root root 200 Jan 5 19:39 cpu crw------- 1 root root 10, 61 Jan 5 19:39 cpu_dma_latency //misc设备 crw------- 1 root root 10, 62 Jan 5 19:39 crash //字符设备,10表示misc drwxr-xr-x 5 root root 100 Jan 5 19:39 disk //代表磁盘 brw-rw---- 1 root disk 253, 0 Jan 5 19:39 dm-0 //253即device-mapper(cat /proc/devices中Block devices标识为253的主设备编号) brw-rw---- 1 root disk 253, 1 Jan 5 19:39 dm-1 brw-rw---- 1 root disk 253, 10 Feb 23 19:20 dm-10 brw-rw---- 1 root disk 253, 11 Feb 23 19:20 dm-11 brw-rw---- 1 root disk 253, 12 Feb 23 19:20 dm-12 brw-rw---- 1 root disk 253, 13 Feb 23 19:20 dm-13 brw-rw---- 1 root disk 253, 14 Feb 23 19:21 dm-14 brw-rw---- 1 root disk 253, 2 Feb 23 19:20 dm-2 brw-rw---- 1 root disk 253, 3 Feb 23 19:20 dm-3 brw-rw---- 1 root disk 253, 4 Feb 23 19:20 dm-4 brw-rw---- 1 root disk 253, 5 Feb 23 19:20 dm-5 brw-rw---- 1 root disk 253, 6 Feb 23 19:20 dm-6 brw-rw---- 1 root disk 253, 7 Feb 23 19:20 dm-7 brw-rw---- 1 root disk 253, 8 Feb 23 19:20 dm-8 brw-rw---- 1 root disk 253, 9 Feb 23 19:20 dm-9 drwxr-xr-x 2 root root 80 Jan 5 19:39 dri crw-rw---- 1 root video 29, 0 Jan 5 19:39 fb0 //fb表示该文件包含帧缓冲设备列表,帧缓冲设备编号和控制它的驱动程序 lrwxrwxrwx 1 root root 13 Jan 5 19:39 fd -> /proc/self/fd //是一个链接,设备上描述当前有哪些文件描述符 crw-rw-rw- 1 root root 1, 7 Jan 5 19:39 full crw-rw-rw- 1 root root 10, 229 Jan 5 19:39 fuse crw------- 1 root root 10, 228 Jan 5 19:39 hpet drwxr-xr-x 2 root root 0 Jan 5 19:39 hugepages crw------- 1 root root 10, 183 Jan 5 19:39 hwrng lrwxrwxrwx 1 root root 25 Jan 5 19:39 initctl -> /run/systemd/initctl/fifo drwxr-xr-x 3 root root 240 Jan 5 19:39 input crw-r--r-- 1 root root 1, 11 Jan 5 19:39 kmsg srw-rw-rw- 1 root root 0 Jan 5 19:39 log brw-rw---- 1 root disk 7, 0 Feb 23 19:20 loop0 //回环设备,docker使用,虚拟设备 brw-rw---- 1 root disk 7, 1 Feb 23 19:20 loop1 crw-rw---- 1 root disk 10, 237 Jan 5 19:39 loop-control //10代表misc设备 drwxr-xr-x 2 root root 360 Feb 23 19:22 mapper crw------- 1 root root 10, 227 Jan 5 19:39 mcelog crw-r----- 1 root kmem 1, 1 Jan 5 19:39 mem drwxrwxrwt 2 root root 40 Jan 5 19:39 mqueue drwxr-xr-x 2 root root 60 Jan 5 19:39 net crw------- 1 root root 10, 60 Jan 5 19:39 network_latency crw------- 1 root root 10, 59 Jan 5 19:39 network_throughput crw-rw-rw- 1 root root 1, 3 Jan 5 19:39 null crw------- 1 root root 10, 144 Jan 5 19:39 nvram crw------- 1 root root 1, 12 Jan 5 19:39 oldmem crw-r----- 1 root kmem 1, 4 Jan 5 19:39 port crw------- 1 root root 108, 0 Jan 5 19:39 ppp crw-rw-rw- 1 root tty 5, 2 Mar 26 22:12 ptmx drwxr-xr-x 2 root root 0 Jan 5 19:39 pts -rw-r--r-- 1 root root 15 Mar 26 20:59 pts0 crw-rw-rw- 1 root root 1, 8 Jan 5 19:39 random drwxr-xr-x 2 root root 60 Jan 5 19:39 raw crw-rw-r-- 1 root root 10, 56 Mar 24 18:17 rfkill lrwxrwxrwx 1 root root 4 Jan 5 19:39 rtc -> rtc0 crw------- 1 root root 252, 0 Jan 5 19:39 rtc0 brw-rw---- 1 root disk 8, 0 Jan 5 19:39 sda //scsi磁盘(8代表Block devices里面的sd,是块设备) brw-rw---- 1 root disk 8, 16 Jan 5 19:39 sdb brw-rw---- 1 root disk 8, 17 Jan 5 19:39 sdb1 brw-rw---- 1 root disk 8, 18 Jan 5 19:39 sdb2 crw-rw---- 1 root disk 21, 0 Jan 5 19:39 sg0 crw-rw---- 1 root cdrom 21, 1 Jan 5 19:39 sg1 crw-rw---- 1 root disk 21, 2 Jan 5 19:39 sg2 drwxrwxrwt 2 root root 40 Jan 5 19:39 shm crw------- 1 root root 10, 231 Jan 5 19:39 snapshot drwxr-xr-x 2 root root 80 Jan 5 19:39 snd brw-rw---- 1 root cdrom 11, 0 Jan 5 19:39 sr0 lrwxrwxrwx 1 root root 15 Jan 5 19:39 stderr -> /proc/self/fd/2 lrwxrwxrwx 1 root root 15 Jan 5 19:39 stdin -> /proc/self/fd/0 lrwxrwxrwx 1 root root 15 Jan 5 19:39 stdout -> /proc/self/fd/1 crw-rw-rw- 1 root tty 5, 0 Jan 5 19:39 tty crw--w---- 1 root tty 4, 0 Jan 5 19:39 tty0 crw--w---- 1 root tty 4, 1 Mar 26 20:59 tty1 crw--w---- 1 root tty 4, 10 Jan 5 19:39 tty10 crw--w---- 1 root tty 4, 11 Jan 5 19:39 tty11 crw--w---- 1 root tty 4, 12 Jan 5 19:39 tty12 crw--w---- 1 root tty 4, 13 Jan 5 19:39 tty13 crw--w---- 1 root tty 4, 14 Jan 5 19:39 tty14 crw--w---- 1 root tty 4, 15 Jan 5 19:39 tty15 crw--w---- 1 root tty 4, 16 Jan 5 19:39 tty16 crw--w---- 1 root tty 4, 17 Jan 5 19:39 tty17 crw--w---- 1 root tty 4, 18 Jan 5 19:39 tty18 crw--w---- 1 root tty 4, 19 Jan 5 19:39 tty19 crw--w---- 1 root tty 4, 2 Jan 5 19:39 tty2 crw--w---- 1 root tty 4, 20 Jan 5 19:39 tty20 crw--w---- 1 root tty 4, 21 Jan 5 19:39 tty21 crw--w---- 1 root tty 4, 22 Jan 5 19:39 tty22 crw--w---- 1 root tty 4, 23 Jan 5 19:39 tty23 crw--w---- 1 root tty 4, 24 Jan 5 19:39 tty24 crw--w---- 1 root tty 4, 25 Jan 5 19:39 tty25 crw--w---- 1 root tty 4, 26 Jan 5 19:39 tty26 crw--w---- 1 root tty 4, 27 Jan 5 19:39 tty27 crw--w---- 1 root tty 4, 28 Jan 5 19:39 tty28 crw--w---- 1 root tty 4, 29 Jan 5 19:39 tty29 crw--w---- 1 root tty 4, 3 Jan 5 19:39 tty3 crw--w---- 1 root tty 4, 30 Jan 5 19:39 tty30 crw--w---- 1 root tty 4, 31 Jan 5 19:39 tty31 crw--w---- 1 root tty 4, 32 Jan 5 19:39 tty32 crw--w---- 1 root tty 4, 33 Jan 5 19:39 tty33 crw--w---- 1 root tty 4, 34 Jan 5 19:39 tty34 crw--w---- 1 root tty 4, 35 Jan 5 19:39 tty35 crw--w---- 1 root tty 4, 36 Jan 5 19:39 tty36 crw--w---- 1 root tty 4, 37 Jan 5 19:39 tty37 crw--w---- 1 root tty 4, 38 Jan 5 19:39 tty38 crw--w---- 1 root tty 4, 39 Jan 5 19:39 tty39 crw--w---- 1 root tty 4, 4 Jan 5 19:39 tty4 crw--w---- 1 root tty 4, 40 Jan 5 19:39 tty40 crw--w---- 1 root tty 4, 41 Jan 5 19:39 tty41 crw--w---- 1 root tty 4, 42 Jan 5 19:39 tty42 crw--w---- 1 root tty 4, 43 Jan 5 19:39 tty43 crw--w---- 1 root tty 4, 44 Jan 5 19:39 tty44 crw--w---- 1 root tty 4, 45 Jan 5 19:39 tty45 crw--w---- 1 root tty 4, 46 Jan 5 19:39 tty46 crw--w---- 1 root tty 4, 47 Jan 5 19:39 tty47 crw--w---- 1 root tty 4, 48 Jan 5 19:39 tty48 crw--w---- 1 root tty 4, 49 Jan 5 19:39 tty49 crw--w---- 1 root tty 4, 5 Jan 5 19:39 tty5 crw--w---- 1 root tty 4, 50 Jan 5 19:39 tty50 crw--w---- 1 root tty 4, 51 Jan 5 19:39 tty51 crw--w---- 1 root tty 4, 52 Jan 5 19:39 tty52 crw--w---- 1 root tty 4, 53 Jan 5 19:39 tty53 crw--w---- 1 root tty 4, 54 Jan 5 19:39 tty54 crw--w---- 1 root tty 4, 55 Jan 5 19:39 tty55 crw--w---- 1 root tty 4, 56 Jan 5 19:39 tty56 crw--w---- 1 root tty 4, 57 Jan 5 19:39 tty57 crw--w---- 1 root tty 4, 58 Jan 5 19:39 tty58 crw--w---- 1 root tty 4, 59 Jan 5 19:39 tty59 crw--w---- 1 root tty 4, 6 Jan 5 19:39 tty6 crw--w---- 1 root tty 4, 60 Jan 5 19:39 tty60 crw--w---- 1 root tty 4, 61 Jan 5 19:39 tty61 crw--w---- 1 root tty 4, 62 Jan 5 19:39 tty62 crw--w---- 1 root tty 4, 63 Jan 5 19:39 tty63 crw--w---- 1 root tty 4, 7 Jan 5 19:39 tty7 crw--w---- 1 root tty 4, 8 Jan 5 19:39 tty8 crw--w---- 1 root tty 4, 9 Jan 5 19:39 tty9 crw-rw---- 1 root dialout 4, 64 Jan 5 19:39 ttyS0 crw-rw---- 1 root dialout 4, 65 Jan 5 19:39 ttyS1 crw-rw---- 1 root dialout 4, 66 Jan 5 19:39 ttyS2 crw-rw---- 1 root dialout 4, 67 Jan 5 19:39 ttyS3 crw------- 1 root root 10, 239 Jan 5 19:39 uhid crw------- 1 root root 10, 223 Jan 5 19:39 uinput crw-rw-rw- 1 root root 1, 9 Jan 5 19:39 urandom crw------- 1 root root 247, 0 Jan 5 19:39 usbmon0 crw-rw---- 1 root tty 7, 0 Jan 5 19:39 vcs //当前虚拟控制台(vc)的文本内容 crw-rw---- 1 root tty 7, 1 Jan 5 19:39 vcs1 crw-rw---- 1 root tty 7, 2 Jan 5 19:39 vcs2 crw-rw---- 1 root tty 7, 3 Jan 5 19:39 vcs3 crw-rw---- 1 root tty 7, 4 Jan 5 19:39 vcs4 crw-rw---- 1 root tty 7, 5 Jan 5 19:39 vcs5 crw-rw---- 1 root tty 7, 6 Jan 5 19:39 vcs6 crw-rw---- 1 root tty 7, 128 Jan 5 19:39 vcsa (查看/proc/devices里面标Character devices识下的vcs)
crw-rw---- 1 root tty 7, 129 Jan 5 19:39 vcsa1 //tty1 的文本/属性内容 crw-rw---- 1 root tty 7, 130 Jan 5 19:39 vcsa2 //tty2 的文本/属性内容 crw-rw---- 1 root tty 7, 131 Jan 5 19:39 vcsa3 //tty3 的文本/属性内容 crw-rw---- 1 root tty 7, 132 Jan 5 19:39 vcsa4 crw-rw---- 1 root tty 7, 133 Jan 5 19:39 vcsa5 crw-rw---- 1 root tty 7, 134 Jan 5 19:39 vcsa6 drwxr-xr-x 2 root root 60 Jan 5 19:39 vfio crw------- 1 root root 10, 63 Jan 5 19:39 vga_arbiter crw------- 1 root root 10, 137 Jan 5 19:39 vhci crw------- 1 root root 10, 238 Jan 5 19:39 vhost-net crw------- 1 root root 10, 58 Jan 5 19:39 vmci crw------- 1 root root 10, 57 Jan 5 19:39 vsock crw-rw-rw- 1 root root 1, 5 Jan 5 19:39 zero
小结:
分析该目录下文件首先查看目录权限中的打头字母,根据打头字母,去查/proc/devices中标记的C(Character devices)还是 B(Block devices)两大类设备
再从里面找到标记的某类的编号查到其代表的意思.
参考:
https://github.com/torvalds/linux/blob/master/Documentation/admin-guide/devices.txt
https://01.org/linuxgraphics/gfx-docs/drm/admin-guide/devices.html
device-mapper
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?