mdadm是linux下用于创建和管理软件RAID的命令,是一个模式化命令。但由于现在服务器一般都带有RAID阵列卡,并且RAID阵列卡也很廉价,且由于软件RAID的自身缺陷(不能用作启动分区、使用CPU实现,降低CPU利用率),因此在生产环境下并不适用。但为了学习和了解RAID原理和管理,因此仍然进行一个详细的讲解:
mdadm主要命令说明模式(7种):
•Assemble:加入一个以前定义的阵列
•Build:创建一个没有超级块的阵列
•Create:创建一个新的阵列,每个设备具有超级块
•Manage:管理阵列(如添加和删除)
•Misc:允许单独对阵列中的某个设备进行操作(如停止阵列)
•FolloworMonitor:监控RAID的状态
•Grow:改变RAID的容量或阵列中的设备数目
选项:
-A,--assemble:加入一个以前定义的阵列
-B,--build:创建一个没有超级块的阵列(Buildalegacyarraywithoutsuperblocks.)
-C,--create:创建一个新的阵列
-F,--follow,--monitor:选择监控(Monitor)模式
-G,--grow:改变激活阵列的大小或形态
-I,--incremental:添加一个单独的设备到合适的阵列,并可能启动阵列
--auto-detect:请求内核启动任何自动检测到的阵列
-h,--help:帮助信息,用在以上选项后,则显示该选项信息
--help-options:显示更详细的帮助
-V,--version:打印mdadm的版本信息
-v,--verbose:显示细节
-b,--brief:较少的细节。用于--detail和--examine选项
-Q,--query:查看一个device,判断它为一个mddevice或是一个md阵列的一部分
-D,--detail:打印一个或多个mddevice的详细信息
-E,--examine:打印device上的mdsuperblock的内容
-c,--config=:指定配置文件,缺省为/etc/mdadm.conf
-s,--scan:扫描配置文件或/proc/mdstat以搜寻丢失的信息。配置文件/etc/mdadm.conf
-C创建Raid(/dev/md0是我的raid名称)
-n磁盘阵列个数
-lraid的级别,-xhostspare,待机磁盘,
--size指定每块磁盘大小
--add-a:hotaddsubsequentdevicestothearray
--remove-r:removesubsequentdevices,whichmustnotbeactive
--fail-f:marksubsequentdevicesafaulty
--set-faulty:sameas--fail
--run-R:startapartiallybuiltarray
--stop-S:deactivatearray,releasingallresources
--readonly-o:markarrayasreadonly
--readwrite-w:markarrayasreadwrite
Optionsthatarevalidwithmanagementmodeare:
--add-a:hotaddsubsequentdevicestothearray
--remove-r:removesubsequentdevices,whichmustnotbeactive
--fail-f:marksubsequentdevicesafaulty
--set-faulty:sameas--fail
--run-R:startapartiallybuiltarray
--stop-S:deactivatearray,releasingallresources
--readonly-o:markarrayasreadonly
--readwrite-w:markarrayasreadwrite
使用cat/proc/mdstat命令来查看一下RAID的状态
配置完后,需mdadm-D--scan>/etc/mdadm.conf进行配置更新
停止阵列前,需umount执行mdadm-S/dev/mdX
重新启动执行mdadm-As/dev/mdX
阵列组中移除硬盘mdadm/dev/mdX-r/dev/sdX
阵列组中添加硬盘mdadm/dev/mdX-a/dev/sdX
查看单个分区mdadm-E/dev/sdX
下面来看一下实例:
一、创建模式
选项:-C
专用选项:
-l级别
-n设备个数
-a{yes|no}自动为其创建设备文件
-c指定数据块大小(chunk)
-x指定空闲盘(热备磁盘)个数,空闲盘(热备磁盘)能在工作盘损坏后自动顶替
注意:创建阵列时,阵列所需磁盘数为-n参数和-x参数的个数和
示例:
1、创建raid0:
1.1创建raid
复制代码