linux dm

您所在的位置:网站首页 dm和m什么意思 linux dm

linux dm

2024-01-25 10:18| 来源: 网络整理| 查看: 265

在linux系统中你使用一些命令时(例如nmon、iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. 其实dm是Device Mapper的缩写,Device Mapper 是 Linux 2.6 内核中提供的一种从逻辑设备到物理设备的映射框架机制,在该机制下,用户可以很方便的根据自己的需要制定实现存储资源的管理策略,当前比较流行的 Linux 下的逻辑卷管理器如 LVM2(Linux Volume Manager 2 version)、EVMS(Enterprise Volume Management System)、dmraid(Device Mapper Raid Tool)等都是基于该机制实现的。关于Device Mapper的理论知识,参考:

《Linux 内核中的 Device Mapper 机制》

https://www.ibm.com/developerworks/cn/linux/l-devmapper/index.html

clip_image001

 理论知识只是对那些达到一定高度和深度,想深入钻研的人研究的, 下面我们还是来看看简单操作中遇到的一些疑问和问题,例如上图所示,dm-0、dm-1、dm-xx各自与那些磁盘映射呢?各自又代表的啥意义呢?首先我们来看看dm-0,dm-1,dm-2这个三个文件设备

[root@mylnx01 ~]# ls /dev/dm* /dev/dm-0 /dev/dm-1 /dev/dm-2 [root@mylnx01 ~]# ll /dev/dm* brw-rw---- 1 root root 253, 0 Dec 7 16:45 /dev/dm-0 brw-rw---- 1 root root 253, 1 Dec 7 16:45 /dev/dm-1 brw-rw---- 1 root root 253, 2 Dec 7 16:45 /dev/dm-2 [root@mylnx01 ~]#

或者你使用fdisk -l 命令也能看到

[root@mylnx01 ~]# fdisk -l Disk /dev/sda: 85.8 GB, 85899345920 bytes 255 heads, 63 sectors/track, 10443 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/sda1 * 1 13 104391 83 Linux /dev/sda2 14 6788 54420187+ 8e Linux LVM /dev/sda3 6789 10443 29358787+ 83 Linux ..................................................................... ..................................................................... Disk /dev/dm-0: 107.2 GB, 107206410240 bytes 255 heads, 63 sectors/track, 13033 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk /dev/dm-0 doesn't contain a valid partition table Disk /dev/dm-1: 12.8 GB, 12884901888 bytes 255 heads, 63 sectors/track, 1566 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk /dev/dm-1 doesn't contain a valid partition table Disk /dev/dm-2: 30.0 GB, 30031216640 bytes 255 heads, 63 sectors/track, 3651 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Disk /dev/dm-2 doesn't contain a valid partition table

虽然/dev/下面没有所谓的dm-3、dm-4...., 一般你用nmon、iostat 之类的命令就能看到,其实他也可以查看这些dm对应的那些设备,一般都位于 /dev/mapper下面。

[root@mylnx01 VolGroup01]# ls -l /dev/mapper total 0 crw------- 1 root root 10, 62 Dec 7 16:45 control brw-rw---- 1 root disk 253, 0 Dec 7 16:45 VolGroup00-LogVol00 brw-rw---- 1 root disk 253, 2 Dec 7 16:45 VolGroup00-LogVol00--PS--user--snapshot brw-rw---- 1 root disk 253, 1 Dec 7 16:45 VolGroup00-LogVol01 brw-rw---- 1 root disk 253, 11 Dec 7 16:45 VolGroup01-LogVol00 brw-rw---- 1 root disk 253, 12 Dec 7 16:45 VolGroup01-LogVol00--PS--user--snapshot brw-rw---- 1 root disk 253, 9 Dec 7 16:45 VolGroup02-LogVol00 brw-rw---- 1 root disk 253, 10 Dec 7 16:45 VolGroup02-LogVol00--PS--user--snapshot brw-rw---- 1 root disk 253, 7 Dec 7 16:45 VolGroup03-LogVol00 brw-rw---- 1 root disk 253, 8 Dec 7 16:45 VolGroup03-LogVol00--PS--user--snapshot brw-rw---- 1 root disk 253, 5 Dec 7 16:45 VolGroup04-LogVol00 brw-rw---- 1 root disk 253, 6 Dec 7 16:45 VolGroup04-LogVol00--PS--user--snapshot brw-rw---- 1 root disk 253, 3 Dec 7 16:45 VolGroup05-LogVol00 brw-rw---- 1 root disk 253, 4 Dec 7 16:45 VolGroup05-LogVol00--PS--user--snapshot [root@mylnx01 ~]# ls /dev/VolGroup* /dev/VolGroup00: LogVol00 LogVol00-PS-user-snapshot LogVol01 /dev/VolGroup01: LogVol00 LogVol00-PS-user-snapshot /dev/VolGroup02: LogVol00 LogVol00-PS-user-snapshot /dev/VolGroup03: LogVol00 LogVol00-PS-user-snapshot /dev/VolGroup04: LogVol00 LogVol00-PS-user-snapshot /dev/VolGroup05: LogVol00 LogVol00-PS-user-snapshot [root@mylnx01 ~]# [root@mylnx01 ~]# cd /dev/VolGroup01 [root@mylnx01 VolGroup01]# ll total 0 lrwxrwxrwx 1 root root 31 Dec 7 16:45 LogVol00 -> /dev/mapper/VolGroup01-LogVol00 lrwxrwxrwx 1 root root 51 Dec 7 16:45 LogVol00-PS-user-snapshot -> /dev/mapper/VolGroup01-LogVol00--PS--user--snapshot [root@mylnx01 VolGroup01]#

其实我们可以使用命令dmsetup ls查看dm-0、dm-1、dm-x对应的设备,其中dm后面的数字对应(253, xx)后面的数字。如下所示

[root@mylnx01 ~]# dmsetup ls VolGroup03-LogVol00--PS--user--snapshot (253, 8) VolGroup00-LogVol00--PS--user--snapshot (253, 2) VolGroup05-LogVol00 (253, 3) VolGroup04-LogVol00 (253, 5) VolGroup05-LogVol00--PS--user--snapshot (253, 4) VolGroup03-LogVol00 (253, 7) VolGroup02-LogVol00--PS--user--snapshot (253, 10) VolGroup02-LogVol00 (253, 9) VolGroup01-LogVol00 (253, 11) VolGroup00-LogVol01 (253, 1) VolGroup04-LogVol00--PS--user--snapshot (253, 6) VolGroup00-LogVol00 (253, 0) VolGroup01-LogVol00--PS--user--snapshot (253, 12) [root@mylnx01 ~]#

clip_image002

253后面的数字就对应dm后面的数字,如果你要查看具体的信息就使用命令 dmsetup info 就能看到下面详细信息。

clip_image003

[root@mylnx01 ~]# more /etc/fstab /dev/VolGroup00/LogVol00 / ext3 defaults 1 1 /dev/VolGroup01/LogVol00 /u01 ext3 defaults 1 1 /dev/VolGroup02/LogVol00 /u02 ext3 defaults 1 1 /dev/VolGroup03/LogVol00 /u03 ext3 defaults 1 1 /dev/VolGroup04/LogVol00 /u04 ext3 defaults 1 1 /dev/VolGroup05/LogVol00 /u05 ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 /dev/VolGroup00/LogVol01 swap swap defaults 0 0

有了上面信息我们就能知道dm-0、dm-1、dm-2分别对应下面的一些设备

dm-0 对应LVM的 VolGroup00-LogVol00 对应根目录/

dm-1 对应LVM的 VolGroup00-LogVol01 对应swap

dm-2 对应LMV的 VolGroup00-LogVol00--PS--user--snapshot

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3