下载后可任意编辑Linux 中软件 RAID 的使用一
简介 在 Linux 系统中目前以 MD (Multiple Devices)虚拟块设备的方式实现软件 RAID,利用多个底层的块设备虚拟出一个新的虚拟块设备,并且利用条带化(stripping)技术将数据块均匀分布到多个磁盘上来提高虚拟设备的读写性能,利用不同的数据冗余算法来保护用户数据不会因为某个块设备的故障而完全丢失,而且还能在设备被替换后将丢失的数据恢复到新的设备上
关于不同冗余级别的定义和数据块以及校验块的分布示意图可以参考存储专业委员会给出的参考资料“ Common RAID Disk Data Format Specification ”
目前 MD 支持 linear, multipath, raid0 (stripping), raid1 (mirror), raid4, raid5, raid6, raid10 等不同的冗余级别和组成方式,当然也能支持多个 RAID 阵列的层叠组成 raid1+0, raid5+1 等类型的阵列
在参考资料“ Software RAID HOWTO” 中介绍了早期软件 RAID 阵列功能特点和使用方式,但是因为软件 RAID 程序的功能不断增加,因此很有必要写份新的使用介绍
本文主要先讲解用户层 mdadm 如何管理软件 RAID 以及使用中常常遇到的问题和解决方法
在流行的 Linux 的发布版中,如 FedoraCore,Gentoo, Ubuntu,Debian,SuseLinux 系统中一般已经将 MD 驱动模块直接编译到内核中或编译为可动态加载的驱动模块
我们可以在机器启动后通过 cat /proc/mdstat 看内核是否已经加载 MD 驱动或者 cat /proc/devices 是否有 md 块设备,并且可以使用 lsmod 看 MD 是否是以模