Linux内核中的dm(dmsetup)和md(mdadm)模块有什么区别?[两者似乎都是一个逻辑卷管理器]哦是的,还有lvm(lvm).这一切有什么区别?
md是多个设备.它是Linux内核中的RAID实现,自内核版本2.0以来可用.它允许您创建RAID级别0,10,4,5和6.它具有各种优化,如利用SSE和MMX指令.它是Linux中的标准软件RAID.
dm是设备映射器.它是Linux内核框架,允许您将一个设备映射到另一个设备(一个或多个)上.这可用作创建可在/ dev/mapper目录中访问的虚拟设备(映射设备).该设备的所有I/O都将映射到其他设备.设备映射器的原因是,在许多情况下您需要映射设备,但是您希望重用代码.
有几个驱动程序(称为dm目标)利用设备映射器,例如:
dm-stripe和md之间的区别RAID级别0并不是那么大 - 它只是不同的实现,但我相信md RAID具有更好的性能.
最后,lvm是用户空间工具集,它在linux上提供逻辑卷管理功能.它使用设备映射器将卷组和逻辑卷映射到物理设备.
还有一个特殊的令人困惑的案例 - dm-raid你可以在这里阅读它