转自http://www.linuxprobe.com/chapter-06/

磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意,作用是防止硬盘物理损坏以及增加存储设备的吞吐量

RAID常见的组合有01510

    • RAID0:需要至少两块(含)硬盘,可以有效的提高硬盘的性能和吞吐量,但没有数据的冗余和错误修复能力。
    • 将多块硬盘通过硬件或软件的方式串联在一起,成为一个大的卷集,将数据依次写入到各个硬盘中,这样性能会极大提升,但若任意一块硬盘故障则整个系统的数据都会受到破坏。
    • RAID1:需要至少两块(含)硬盘,可以有效的提高数据资料的安全性和可修复性,但成本却提高了。
    • 实现原来是在数据写入硬盘时也会在另外一块闲置的硬盘上生成镜像文件,在不影响性能的情况下最大限度保证数据资料的可靠性,只要在一对镜像盘中还有一块硬盘可以使用,那么数据也不会丢失,具有很好的硬盘冗余能力,虽然对数据来讲绝对的安全,但成本却明显增加,磁盘利用率仅为50%。
    • RAID5:需要至少三块(含)硬盘,兼顾存储性能、数据安全和储存成本。
    • 如上图所示"parity"块中保存的是其他硬盘数据的奇偶校验信息(并非其他硬盘的数据),以数据的奇偶校验信息来保证数据的安全,RAID5不以单独的硬盘来存放数据的奇偶校验信息,而是保存在各个磁盘上。
      这样当任何一个硬盘损坏都可以根据其他硬盘上的奇偶校验信息来尝试重建损坏的数据,性能也很高,兼顾了存储性能、数据安全和存储成本,可以看作是RAID0与RAID1的折中方案。
    • RAID10:需要至少四块(含)硬盘,兼具速度和安全性,但成本很高。
    • 继承了RAID0的快速与RAID1的安全,RAID1在这里提供了冗余备份的阵列,而RAID0则负责数据的读写阵列。
      因这种结构的成本高,一般用于存放要求速度与差错控制的数据。

常见的做软RAID的工具是mdadm。下面就简单写几个实用的小例子快速上手这个命令。

1.配置RAID10

  ①在虚拟机上给主机分配4块1G的磁盘(为了实验磁盘就不分配大的了)

  

  ②创建raid10

    mdadm -Cv /dev/md1 -n4 -l 10 -a yes /dev/sd{b..e}

    • -C是创建
      -v是显示过程
      /dev/md1 是做成的raid磁盘名
      -n 是使用磁盘数
      -l是raid级别
      -a 检查raid名称
      /dev/sd{b..e}是之前分配的四块盘

      mkfs.ext4 /dev/md1

       partprobe /dev/md1 #内核同步磁盘

  ③挂载raid磁盘

    mkdir /RAID

    mount /dev/md1 /RAID

    此时一个raid10的磁盘创建挂载已经完成

    

  ④开机自动挂载

    在这里不是很建议用设备名写入fstab表中,因为我之前使用的设备名md1结果开机md1在dev目录下没了,变成md127了,具体原因不明,因此可以使用UUID

    使用blkid获取UUID

    

    echo “UUID=d3986c95-11d9-4afa-935e-bd4e637f4754 /RAID  ext4  default  0 0” >> /etc/fstab

  ⑤查看RAID磁盘详细信息

    mdadm -D /dev/md1

    

  ⑥模拟一块硬盘损坏

    mdadm /dev/md1 -f /dev/sdb

    #-f将sdb移出阵列,此时sdb状态是被移除,通过mdadm -D /dev/md1查看sdb是失败状态

    此时硬盘状态是坏的,你需要将它从取出

    mdadm /dev/md1 -r /dev/sdb

    换上同样大小的硬盘后执行

    mdadm /dev/md1 -a /dev/sdb

    即可将sdb重新加入阵列(如果磁盘真有问题必须要先-r移除才能-a添加)

    重新挂载

    mount /dev/md1 /RAID

    

  ⑦停止阵列设备

    umount /RAID    #必须先卸载

    mdadm -S /dev/md1

    此时dev目录下没有md1了,若想恢复,目前我使用的方法是

    mdadm -A /dev/md1 /dev/sd{b..e}

使用RAID进行磁盘管理的更多相关文章

  1. RAID与磁盘管理之——综合应用

    为了实现磁盘的管理和RAID的综合,现将四块硬盘组合成一个RAID10,并在此基础之上创建物理卷.卷组.逻辑卷,实现在线扩容,最后挂载使用. 其中也部分包含了swap分区的创建和使用. 1.根据lin ...

  2. 每天进步一点点——Linux磁盘管理LVM与RAID

    转载请注明出处:http://blog.csdn.net/cywosp/article/details/38965799 1. 传统磁盘管理问题 当分区大小不够用时无法扩展其大小,仅仅能通过加入硬盘. ...

  3. linux磁盘管理系列-软RAID的实现

    1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...

  4. linux磁盘管理系列二:软RAID的实现

    磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...

  5. Linux RAID 磁盘管理

    Linux RAID 磁盘管理 RAID工作模式介绍:https://www.cnblogs.com/xiangsikai/p/8441440.html 本章主要讲解 Linux下 RAID5 与 R ...

  6. liunx 磁盘管理命令记录

    Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...

  7. LVM磁盘管理

    http://www.cnblogs.com/gaojun/archive/2012/08/22/2650229.html Linux LVM硬盘管理及LVM扩容 LVM磁盘管理 一.LVM简介... ...

  8. linux磁盘管理系列-LVM的使用

    LVM是什么 LVM是Linux操作系统的逻辑卷管理器. 现在有两个Linux版本的LVM,分别是 LVM1,LVM2.LVM1是一种已经被认为稳定了几年的成熟产品,LVM2 是最新最好的LVM版本. ...

  9. Linux第七节随笔-下磁盘管理

    baidubaike 磁盘管理物理磁盘---> RAID--->文件系统--->用户使用LVM概念简述Raid详细解说                0                ...

随机推荐

  1. 蒲公英(bzoj 2724)

    Description Input 修正一下 l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1) mod n + 1 Output Sample Input ...

  2. leetcode 15. 3Sum 二维vector

    传送门 15. 3Sum My Submissions Question Total Accepted: 108534 Total Submissions: 584814 Difficulty: Me ...

  3. iOS7 毛玻璃效果

    转自:http://prolove10.blog.163.com/blog/static/138411843201391401054305/ 原图:  效果图:  实现:首先需要导入Accelerat ...

  4. ci框架——分页

    1:在models里面写一个模型:page_model.php class Page_model extends CI_Model{ function page($tablename,$per_num ...

  5. qu de hanzi 首字母

    Function hztopy(hzpy As String) As StringDim hzstring As String, pystring As StringDim hzpysum As In ...

  6. hdu4848 求到达每个点总时间最短(sum[d[i]])。

    开始的时候是暴力dfs+剪枝,怎么也不行.后来参考他人思想: 先求出每个点之间的最短路(这样预处理之后的搜索就可以判重返回了),截肢还是关键:1最优性剪枝(尽量最优:目前的状态+预计还有的最小时间&g ...

  7. P1551 亲戚 洛谷

    https://www.luogu.org/problem/show?pid=1551 题目背景 若某个家族人员过于庞大,要判断两个是否是亲戚,确实还很不容易,现在给出某个亲戚关系图,求任意给出的两个 ...

  8. python文件追加及时间获取

    一.python:文件的读取.创建.追加.删除.清空 2011-10-24 11:36:35|  分类: python |举报 |字号 订阅   一.用Python创建一个新文件,内容是从0到9的整数 ...

  9. kafka的安装和使用;kafka常用操作命令

    kafka:基于发布/订阅的分布式消息系统.数据管道:最初用来记录活动数据--包括页面访问量(Page View).被查看内容方面的信息以及搜索情况等内容和运营数据--服务器的性能数据(CPU.IO使 ...

  10. Linux 开发板网络设置

    改动IP地址步骤: ①改动/etc/eth0-setting 命令:vi /etc/eth0-setting ②改动对应的信息.最后:wq退出 ③重新启动eth0 命令:/etc/init.d/ifc ...