/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

 

posted @ 2022-03-26 22:51  jinzi  阅读(5042)  评论(0编辑  收藏  举报