搭建RAID10(5块硬盘)过程并模拟其中一块硬盘损坏
首先:RAID 10,实际是将RAID 0和RAID 1标准结合的产物,在连续地以位或字节为单位分割数据并且并行读/写多个磁盘的同时,为每一块磁盘作磁盘镜像进行冗余。它的优点是同时拥有RAID 0的超凡速度和RAID 1的数据高可靠性,但是CPU占用率同样也更高,而且磁盘的利用率比较低。RAID 1+0是先镜射再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。当RAID 1+0有一个硬盘受损,其余三个硬盘会继续运作。
第一步:
添加五块硬盘
这里一路默认即可





第二步:查看磁盘是否识别
用fdisk-l 查看磁盘空间

第三步:创建RAID10
用命令mdadm -Cv /dev/md0 -n 4 -l 10 -x 1 -a yes /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf

这里就算是创建RAID10 成功了。
第四步:格式化磁盘md0并挂载到新目录下
先对md0 用 mkfs.ext4 /dev/md0 进行格式化

接下来创建一个目录 mkdir /media/RAID10 并将RAID10临时挂载在该目录下

用 mdadm -D /dev/md0 查看已挂载的RAID10

这里就算RAID10创建完成并临时挂载好了,如果想要开机自动挂载,需要将
“ /dev/md0 /media/RAID10 ext4 defaults 0 0 ”写到 /etc/fstab文档里。可以用echo命令也可以直接vi进去编辑。
模拟sdb盘损坏:
第一步:使用mdadm /dev/md0 -f /dev/sdb 先将sdb移除RAID10阵列

再用mdadm -D查看一下当前阵列的状态

sdf备份盘恢复完数据了 ,这时sdf就顶替了sdb的位置

因为之前我们创建RAID10的时候 设置了一个-x的参数是1 所以这里不用任何操作,sdf盘就顶替了原先sdb盘的位置。那么下面假设没有-x这个参数,只是单纯的卸载sdb会怎样呢。
先用umount命令卸载md0 并用mdadm -S 参数停止RAID10的使用。这里可以看到系统里已经没有RAID10这个阵列了。

接下来还是上面的步骤重新创建RAID10 只不过不添加备份盘了
这里可以看到跟上面比已经没有sdf这个备份盘了

我们接着模拟sdb损坏 。
这次没有盘顶替sdb了,我们需要尝试恢复数据。

可以重启后执行mdadm -a参数 恢复sdb

接下来恢复sdb 这里显示3%就是恢复的进度

恢复完成!

搭建RAID10(5块硬盘)过程并模拟其中一块硬盘损坏的更多相关文章
- virtual box硬盘扩容 不是加一块硬盘
先执行 VirtualBox list hdds 查看当前 VirtualBox 管理的虚拟磁盘. 获取磁盘的 uuid. 结果如下 D:\Program Files\Oracle\VirtualBo ...
- raid10 五块硬盘/raid5(三块使用,两块备份)
raid 10五块硬盘 第一步:在虚拟机中在添加五块硬盘 第二步:使用mdadm命令创建RAID10,名称为“/dev/md0/” -C代表创建操作,-v显示创建过程,-a yes检查RAID名称,- ...
- 搭建RAID5(5块硬盘)过程并模拟一块磁盘损坏情况
首先:在配置RAID5之前我们先来了解一下它.RAID5,RAID是指独立磁盘冗余阵列,是把相同的数据存储在多个硬盘的不同地方的方法.通过把数据放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能 ...
- java 子类的实例化和代码块初始化过程
1,子类的实例化 1,子父类中的构造函数的特点. 在子类构造对象时,发现,访问子类构造函数时,父类也运行了. 为什么呢? 原因是:在子类的构造函数中第一行有一个默认的隐式语句. super(); 子类 ...
- SilverLight搭建WCF聊天室详细过程[转]
http://www.silverlightchina.net/html/zhuantixilie/getstart/2011/0424/7148.html 默认节点 SilverLight搭建WCF ...
- IDEA搭建SSMM框架(详细过程)
IDEA搭建SSMM框架(详细过程) 相关环境 Intellij IDEA Ultimate Tomcat JDK MySql 5.6(win32/win64) Maven (可使用Intellij ...
- 【转】64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解
64位Ubuntu 16.04搭建嵌入式交叉编译环境arm-linux-gcc过程图解,开发裸机环境之前需要先搭建其开发环境,毕竟工欲善其事必先利其器嘛. 安装步骤 1.准备工具安装目录 下载 ar ...
- 联想G480安装固态硬盘过程
联想G480安装固态硬盘过程 百度上面图文并茂: https://jingyan.baidu.com/article/e2284b2b68eaf6e2e6118de1.html
- RAID5当一块硬盘离线后处理
RAID5当一块硬盘离线后,处理降级状态,这时候正常的建议是马上更换硬盘做REBUILD以恢复完整的数据状态,如果有热备盘的话,就会自动做REBUILD,这样做合适吗? 一组RAID卷在工作很长时间以 ...
随机推荐
- The life-saving straw
English learning In contemporary world, English learning has gained great popularity and it is of ...
- spring boot 尚桂谷学习笔记10 数据访问02 mybatis
数据访问 mybatis 创建一个 springboot 工程,模块选择 sql 中 mysql(数据驱动), jdbc(自动配置数据源), mybatis Web模块中选择 web pom 引入: ...
- div中的div上下居中
方法1: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 .parent { width:800px; height:500px; ...
- rope(平衡二叉树)
题目描述: 链接:https://www.nowcoder.com/acm/contest/141/C来源:牛客网 Eddy likes to play cards game since there ...
- POJ 3020:Antenna Placement(无向二分图的最小路径覆盖)
Antenna Placement Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 6334 Accepted: 3125 ...
- ubuntu18.04 -- 创建第一个Django项目
step1: 安装虚拟环境: sudo pip3 install virtualenv # 安装虚拟环境sudo pip3 install virtualenvwrapper # 安装虚拟环境扩展包# ...
- Redis的常用命令及数据类型
Redis支持的五种数据类型 字符串 (string) 字符串列表 (list) 散列 (hash) 字符串集合 (set) 有序字符串集合 (sorted-set) key(键) keys * 获取 ...
- go语言从例子开始之Example13.函数多返回值
Go 内建多返回值 支持.这个特性在 Go 语言中经常被用到,例如用来同时返回一个函数的结果和错误信息. Example: package main import "fmt" // ...
- 使用pytorch测试单张图片(test single image with pytorch)
以下代码实现使用pytorch测试一张图片 引用文章: https://www.learnopencv.com/pytorch-for-beginners-image-classification-u ...
- 服务器中卸载JDK