device mapper的使用

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

这个页面讲了点原理,可以看一下。 

 

dmsetup命令

显示当前的device mapper的信息

dmsetup ls

dmsetup info

dmsetup status

 

显示设备的依赖关系

dmsetup deps

sda4_crypt: 1 dependencies    : (8, 4)
vg_richard-lv_home: 1 dependencies    : (253, 0)
vg_richard-lv_swap: 1 dependencies    : (253, 0)
vg_richard-lv_root: 1 dependencies    : (253, 0)

再看一下/dev下面的文件

brw-rw----  1 root disk      8,   4 2012-09-03 09:16 sda4

brw-rw----  1 root disk    253,   0 2012-09-03 09:16 dm-0
brw-rw----  1 root disk    253,   1 2012-09-03 09:16 dm-1
brw-rw----  1 root disk    253,   2 2012-09-03 09:16 dm-2
brw-rw----  1 root disk    253,   3 2012-09-03 09:16 dm-3


那就是sda4_crypt依赖于sda4

vg_ricard-lv_home依赖于dm-0

 

显示table信息

dmsetup table 

 

创建一个linear设备

dmsetup create dm-name dm-table

dm-name是要创建的设备名字。 如果成功将会在/dev/mapper/目录下 生成这个名字的文件

dm-table是保存了这个map device的 mapping table。

 

简单的dm-table一个例子是:

 

起始扇区  扇区个数  线性映射  目标设备 目标设备上的起始扇区

0 1025 linear /dev/sdb2 0

1025 1025 linear /dev/sdc2 0

 

某个block的sector大小,可以用 blockdev --getsize /dev/sdb2来得到。

如果是刚分区的盘,需要用partprobe来更新一下。 

 

查看linear设备的写入顺序

将新生成的设备创建文件系统,mount到某个目录。

cd到这个目录下,运行

dd if=/dev/zero of=test 

这个命令将一直运行到写满磁盘。

 

在运行之前可以运行

watch -n 1 iostat /dev/sdb2 /dev/sdc2

来观察磁盘的读写情况。 

 

可以发现 写入的过程是,先写入到/dev/sdb2,再写入到/dev/sdc2.

这个过程是和linear的概念一致的。

posted @ 2018-01-24 10:27  追忆丶年华  阅读(792)  评论(0编辑  收藏  举报