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的概念一致的。

device mapper的使用的更多相关文章

  1. Linux系统中的Device Mapper学习

    在linux系统中你使用一些命令时(例如nmon.iostat 如下截图所示),有可能会看到一些名字为dm-xx的设备,那么这些设备到底是什么设备呢,跟磁盘有什么关系呢?以前不了解的时候,我也很纳闷. ...

  2. Linux 内核中的 Device Mapper 机制

    本文结合具体代码对 Linux 内核中的 device mapper 映射机制进行了介绍.Device mapper 是 Linux 2.6 内核中提供的一种从逻辑设备到物理设备的映射框架机制,在该机 ...

  3. 使用 Device Mapper来改变Docker容器的大小

    作者:Jérôme Petazzoni ( Docker 布道师) 译者:Mark Shao ( EMC 中国高级工程师) 如果在 CentOS . REHL . Fedor 或者其他默认没有 AUF ...

  4. Docker Device Mapper 使用 direct-lvm

      一.Device Mapper: loop-lvm 默认 CentOS7 下 Docker 使用的 Device Mapper 设备默认使用 loopback 设备,后端为自动生成的稀疏文件,如下 ...

  5. Device Mapper Multipath(DM-Multipath)

    Device Mapper Multipath(DM-Multipath)能够将server节点和存储阵列之间的多条I/O链路配置为一个单独的设备.这些I/O链路是由不同的线缆.交换机.控制器组成的S ...

  6. flashcache中应用device mapper机制

    Device Mapper(DM)是Linux 2.6全面引入的块设备新构架,通过DM可以灵活地管理系统中所有的真实或虚拟的块设备. DM以块设备的形式注册到Linux内核中,凡是挂载(或者说“映射” ...

  7. Docker存储驱动之Device Mapper简介

    Device Mapper是一个基于kernel的框架,它增强了很多Linux上的高级卷管理技术.Docker的devicemapper驱动在镜像和容器管理上,利用了该框架的超配和快照功能.为了区别, ...

  8. Device Mapper 代码分析

    Device Mapper(DM)是Linux 2.6全面引入的块设备新构架,通过DM可以灵活地管理系统中所有的真实或虚拟的块设备. DM以块设备的形式注册到Linux内核中,凡是挂载(或者说&quo ...

  9. [转] Linux 内核中的 Device Mapper 机制

    本文结合具体代码对 Linux 内核中的 device mapper 映射机制进行了介绍.Device mapper 是 Linux 2.6 内核中提供的一种从逻辑设备到物理设备的映射框架机制,在该机 ...

  10. Docker存储驱动Device Mapper,Overlay,AUFS

    Docker存储驱动之Device Mapper简介 - BookShu - 博客园https://www.cnblogs.com/styshoo/p/6528762.html Docker存储驱动之 ...

随机推荐

  1. GFW的前世今生,一部GFW之父方滨兴的发家史

    http://whu.myubbs.com/thread-96390-1-1.html方滨兴(1960年7月17日-),男,中国共chan党党员,中国工程院院士,全国人大代表,中国科学院信息工程研究所 ...

  2. EditPlus正则表达式中英文详解(附常用事例操作)

    http://www.cnblogs.com/JustinYoung/articles/editplus_regular_expression.html EditPlus正则表达式中英文详解 \t T ...

  3. IDEA配置gradle

    下载解压自己需要的gradle版本:https://gradle.org/releases/(免安装) 配置环境变量 打开命令窗口,输入 gradle -v IDEA配置gradle:file-> ...

  4. ssh/scp 远程连接ssh非默认端口方法

    ssh -p port <username>@<IP>

  5. Codeforces Round #263 (Div. 2) proC

    题目: C. Appleman and Toastman time limit per test 2 seconds memory limit per test 256 megabytes input ...

  6. 如何查看域名解析是否生效--windows命令

  7. background-image:url(data:image/gif;base64,XXXX) base64方式将本地图片添加到文档中

    background-image:url(data:image/gif;base64,R0lGODlhCwAMAMZjAElxvlNvtVRxtkp1v0p9wVh7vkqBwl58vml6vml7v ...

  8. Linux下修改时间时区的方法介绍

    点评:在Linux中,用于时钟查看和设置的命令主要有date.hwclock和clock.其中,clock和 hwclock用法相近,只不过clock命令除了支持x86硬件体系外,还支持Alpha硬件 ...

  9. ACTION与FUNC

    一.[action<>]指定那些只有输入参数,没有返回值的委托 Delegate的代码: public delegate void myDelegate(string str); publ ...

  10. 【Android】3.17 示例17--周边雷达功能

    分类:C#.Android.VS2015.百度地图应用: 创建日期:2016-02-04 一.简介 周边雷达功能同步支持Android和iOS端.它本质是一个连接百度LBS开放平台前端SDK产品和后端 ...