安装程式实现软件RAID代替硬件RAID的方法,今天再进一步谈谈手动创建软RAID和日常维护的方法。
mdadm使用的也是md驱动,由于其拥有多种模式,而且单一工具,不依赖所有设置文件,是替代raidtools的好工具。目前几乎所有发行版本使用的都是该工具。
一、安装和编译
×××:
http://www.cse.unsw.edu.au/~neilb/source/mdadm/
编译:
tar xzvf ./mdadm-1.6.0.tgz
cd mdadm-1.6.0
make install
rpm安装:
rpm -ivh mdadm-1.6.0-3.rpm
※源码最新版本是2.5,由于我使用的1.6.0的rpm包,所以还是以该版本为例。
二、模式
mdadm 有6种模式,前两种模式:Create、Assemble用于设置和激活阵列;Manage模式用于操作在活动阵列中的设备;Follow或 Monitor模式允许管理员对活动阵列设置事件提醒和动作;Build模式用于对旧阵列使用旧版本的md驱动;更有Grow模式能扩展阵列;剩下的是 Misc模式,他包括对多种内部的任务和没有指定特别模式的一些操作。
系统平台: 红旗 DC Server for x86
硬件平台: Intel Xeon 3.0G DP、1个系统硬盘,3个组成阵列磁盘

三、部署
1、准备磁盘
只能使用Sofware RAID格式的磁盘才能组成阵列,所以,首先我们要把做好磁盘格式。正如上面提到的,除了系统盘sda外,我们需要对sdb、sdc、sdd进行操作
a)对sdb进行分区
fdisk /dev/sdb

分区前状态:

n,划分区:

t,修改分区格式为fd:

w,保存:

b)同样的方法,对sdc、sdd进行分区和保存
最后状态如下:

2、创建阵列
mdadm能支持LINEAR、RAID0   (striping)、 RAID1(mirroring)、 RAID4、RAID5、RAID6和MULTIPATH的阵列模式。
创建命令格式如下:
mdadm [mode]   [options]
例如:创建一个RAID 0设备:
mdadm --create --verbose /dev/md0 --level=0 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
--level表示创建的阵列模式,--raid-devices表示参和阵列的磁盘数量。

也能这样表达,意思是相同的:
mdadm -Cv /dev/md0 -l0 -n3 /dev/sd[bcd]1
还能增加-c128参数,指定chunk size为128K(默认64K)
3、设置文件
mdadm不采用/etc/mdadm.conf作为主要设置文件,他能完全不依赖该文件而不会影响阵列的正常工作。
该设置文件的主要作用是方便跟踪软RAID的设置。对该设置文件进行设置是有好处的,但不是必须的。推荐对该文件进行设置。
通常能这样来建立:

echo DEVICE /dev/sd[bcd]1 > /etc/mdadm.conf
mdadm -Ds >> /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf

4、格式化阵列
后续,只要你把/dev/md0作为一个独立的设备来进行操作即可:

mkfs.ext3 /dev/md0
mkdir /mnt/test
mount /dev/md0 /mnt/test
5、若要开机自动挂载,请加入/etc/fstab中:
/dev/md0             /mnt/tes             auto defaults        0 0
四、监视和管理
mdadm能非常方便的对阵列进行监视和管理的操作,也包括了停止和启动阵列等常用维护。
1、查看
cat /proc/mdstat
能查看所有使用md驱动的阵列的状态:

mdadm --detail /dev/md0
查看指定阵列的周详信息(-D):

2、停止
mdadm -S /dev/md0
停止指定阵列,并释放磁盘(--stop):

※注意:停止后,原组成阵列的磁盘将处于空闲状态,一旦吾操作这些磁盘,将不能再重启激活原阵列。
3、启动
mdadm -A /dev/md0 /dev/sd[bcd]1
启动指定的阵列,也可理解为讲一个新阵列装配到系统中(--assemble):

若你已在上面设置了/etc/mdadm.conf文件,也可用-s查找:
mdadm -As /dev/md0

4、测试
如果你没有设置/etc/mdadm.conf文件,而且又忘了某磁盘属于那个阵列,则你能使用检测:(--examine)
mdadm -E /dev/sdb1

获得UUID后,也能这样激活阵列:
mdadm -Av /dev/md0 --uuid=8ba81579:e20fb0e8:e040da0e:f0b3fec8 /dev/sd*
能看到,只要磁盘没有损坏,这样装配是非常方便的:

5、添加及删除磁盘
mdadm能在Manage模式下,对运行中的阵列进行添加及删除磁盘。常用于标识failed磁盘,增加spare(冗余)磁盘,及替换磁盘等。
例如:原来状态是:

则能使用--fail指定坏磁盘,并--remove走:
mdadm /dev/md0 --fail /dev/sdc1 --remove /dev/sdc1


等待同步完成后,结果:

※需要注意的是,对于某些阵列模式,如RAID0等,是不能用--fail和--remove的。

增加一个新的阵列用磁盘
mdadm /dev/md0 --add /dev/sdc1

※需要注意的是,对于某些阵列模式,如RAID0等,是不能用--add的。
6、监视
在Follow或Monitor状态下,能使用mdadm对阵列进行监视,例如当阵列出现问题的时候,发送邮件给管理员;或当磁盘出现问题的时候进行自动的磁盘替换。
nohup mdadm --monitor --mail=sysadmin --delay=300 /dev/md0 &
上述定义:没300秒监视一次,当阵列出现错误,会发送邮件给sysadmin用户。由于monitor启动后是不会自动退出的,所以需要加上nohup和&,使之持续在后台运行。
在Follow模式下,是允许共享冗余磁盘的。
例如,我们有两个阵列:/dev/md0、/dev/md1,而/dev/md0里面有一个spare磁盘。当我们在/etc/mdadm.conf中定义类似:
DEVICE   /dev/sd*
ARRAY /dev/md0 level=raid1 num-devices=3 spare-group=database  
   UUID=410a299e:4cdd535e:169d3df4:48b7144a
ARRAY   /dev/md1 level=raid1 num-device=2 spare-group=database  
   UUID=59b6e564:739d4d28:ae0aa308:71147fe7
也就是定义一个spare-group组。并运行上面的monitor模式命令。这样,当组成/dev/md1的其中一个磁盘出现问题的时候,mdadm会自动从/dev/md0上移走spare磁盘,并加入/dev/md1中,而不必人工干预。(请注意,能实现这样工作的,只有在该阵列支持冗余的情况下才能实现,如raid1、raid5等。而对于raid0等阵列模式,是无效的)
五、其他
1、增加spare磁盘
能通过在创建的时候指定冗余磁盘:
mdadm -Cv /dev/md0 -l1 -n2 -x1 /dev/sd[bcd]1
-x(--spare-devices)参数用于指定冗余磁盘的数量,结果:

另外,对于full的阵列(例如已有2个磁盘的RAID1),则直接使用-add参数,mdadm会自动把冗余的磁盘作为spare disk。
2、删除阵列
mdadm -S /dev/md0

rm /dev/md0
修改/etc/mdadm.conf、/etc/fstab等设置文件,把相关的地方去掉;
最后,用fdisk对磁盘进行重新分区即可。
3、重建阵列
我们也能在没有fdisk的情况下把使用过,但目前没有属于所有阵列的磁盘划分到新阵列中:

确认后即可。

转载于:https://blog.51cto.com/wushank/1114437

mdadm管理raid相关推荐

  1. 使用 mdadm 管理 RAID 阵列

    mdadm 是多磁盘和设备管理Multiple Disk and Device Administration 的缩写.它是一个命令行工具,可用于管理 Linux 上的软件 RAID 阵列.本文概述了使 ...

  2. 磁盘管理——RAID 0

    一 什么是RAID0 RAID0,将数据分为几半,写到多个磁盘 A :A1 A2-- 性能提升.最小需要两个磁盘. 将多个磁碟合并成一个大的磁碟,不具有冗余,并行I/O,速度最快.RAID 0亦称为带 ...

  3. Linux命令-mdadm管理磁盘阵列组

    文章目录​​​​​​​ 概要 一 磁盘阵列是什么? 二 RAID的级别 RAID 0 RAID 1 RAID 5 RAID10 三 命令介绍 四 语法格式 五 基本参数 六 参考实例 创建RAID 0 ...

  4. 磁盘管理---RAID磁盘阵列(重点容错能力)软RAID的实现

    文章目录 RAID基本概念 RAID级别 软RAID **mdadm:模式化的工具** 1.软RAID配置示例 2.测试RAID设备 3.软RAID测试和修复 4.增加新的成员 **软RAID管理** ...

  5. 磁盘管理——RAID 6

    一 什么是RAID6 与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块.两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用.但RAID 6需 ...

  6. linux raid mdadm,Linux软阵列 用mdadm做RAID实验

    用mdadm做raid实验时遇到一个问题,一直没有搞定,在网上一直也没有查到,准备问那个培训老师,结果等了半天硬是没有等到,然后又在google上搜索,终于在一个老外的BBS里发现问题原因了 问题如下 ...

  7. 使用mdadm创建raid mdadm命令详解_php_sir_新浪博客

    1.虚拟机上添加5块新磁盘 2.fdisk /dev/sdb,添加三个1G的分区,类型设为fd(linux raid autodetect) 3.dd if=/dev/sdb of=/dev/sdx  ...

  8. 使用mdadm创建raid mdadm命令详解

    1.虚拟机上添加5块新磁盘 2.fdisk /dev/sdb,添加三个1G的分区,类型设为fd(linux raid autodetect) 3.dd if=/dev/sdb of=/dev/sdx  ...

  9. 使用mdadm创建RAID

    文章目录 创建RAID10 命令 创建RAID1 命令 停止raid 参考 创建RAID10 创建raid10至少需要4块硬盘,先将两块硬盘组成raid0,然后将两组raid1组合成raid0, 存储 ...

  10. 项目九 配置磁盘配额与管理RAID卷

    任务一 配置用户基本磁盘配额限制 第1步:确认 quota软件包的安装情况 通过以下命令,确认 quota软件包的安装情况,并列表查看 quota软件包安装的磁盘配额管理程序:[rpm -qa| gr ...

最新文章

  1. 计算机三级 偏软,计算机三级偏软说明
  2. ubuntu 18.04安装米聊
  3. QML 发光呼吸动画字体
  4. 设计模式漫谈之迭代器模式
  5. 【转】Windows8不联网直接安装.Net 3.5 Framework的方法
  6. Google的云计算,你真的安全吗?
  7. 工作中最常用的Excel函数公式大全
  8. 一个民工的数字化生活
  9. powerdesigner 设置唯一约束
  10. 修改固态硬盘的物理序列号_买固态怕踩坑?收下这些软件,轻松鉴别好坏
  11. springboot 获取bean_3W 字的 Spring Boot 超详细总结
  12. 网络爬虫之css选择器
  13. 是否有任何python库可以从自然语言中解析日期和时间?
  14. python2.7.12源码编译
  15. 趣学 C 语言(十二)—— 文件操作
  16. 《人工智能》之《计算智能》习题解析
  17. NVIDIA vGPU应用
  18. 软件性能测试方案怎么写?完整的性能测试报告模板分享
  19. bixby怎么编程_三星的Bixby可以做什么?
  20. 台积电重要供应商警告:明年芯片材料价格将继续上涨

热门文章

  1. 变压器绕组降低邻近效应_低频变压器初级短路的原因及解决方案
  2. java案例代码5--编码的方式--密码
  3. tomcat启动后连接数据库连接慢的问题
  4. android 过滤ip,EditText Android过滤器的IP地址###。###。###。###?
  5. python实现异步的原理_一篇文章理解Python异步编程的基本原理
  6. Python算法实现 -- K最短路径算法
  7. 1、win10下的Docker+Redis 的下载及简单使用
  8. (一)Maven简介
  9. Angular 2 组件之间如何通信
  10. Zabbix之Python发送邮件