Linux系统中实现RAID卷详解

简介:

 在Linux系统中做RAID,磁盘阵列的设备可以是一块磁盘中的三个以上的分区,也可以是三块或以上的磁盘。本文主要以几块磁盘为例,来实现在RAID5

实验环境:

   系统中有一块磁盘sda,新添加6SCSI磁盘,分别为sdb,sdc,sdd,sde,sdf,sdg,其中4块作为磁盘阵列的设备,1块作为预备(spare)磁盘,还有1块留作备用(用于扩展RAID)

创建RAID5:

1.先查看一下系统中磁盘设备:fdisk -l

...显示结果省略

2.接下来开始创建RAID了,主要会应用到mdadm命令,使用此命令需要先安装RHEL6安装光盘中自带的mdadm包,如果没有安装,先进行安装。

创建RAID5,命令如下:

1
[root@svr /]# mdadm --create --auto=yes /dev/md0 --level= 5  --raid-devices= 4  --spare-devices= 1  /dev/sd[b-f]

参数说明:

--create             //表示要创建raid

--auto=yes /dev/md0  //新建立的软件磁盘阵列设备为md0md序号可以为0-9

--level=5            //磁盘阵列的等级,这里表示创建是的raid5

--raid-devices       //添加作为磁盘阵列用的磁盘的块数

--spare-devices      //添加作为预备(spare)磁盘的块数

/dev/sd[b-f]         //磁盘阵列所使用的设备,还可写成/dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf

另外这条命令也可以简写:

1
[root@svr /]#mdadm -C /dev/md0 -l5 -n4 -x1 /dev/sd[b-f]

3.查看RAID是否成功创建及是否正常运行,有两种方法(当磁盘容量越大时,磁盘阵列构建的时间越长,所以可能需要等待很长时间才能看到以下信息):

执行mdadm --detail/dev/md0 命令查看RAID的详细信息:

110353744.jpg

查看/proc/mdstat文件,可以比较简单明了的查看RAID创建和运行的情况:

1
[root@svr ~]#cat /proc/mdstat

S代表预备(spare)磁盘,4U代表正常,出现_表示不正常

确认新建的RAID设备

执行 mdadm  -Q /dev/md0  //-Q用来查询设备信息。

1
[root@svr ~]#mdadm  -Q /dev/md0

4.格式化并且挂载和使用创建的RAID

1
2
3
[root@svr ~]# mkfs.ext4 /dev/md0
[root@svr ~]# mkdir /raid5
[root@svr ~]# mount /dev/md0 /mnt/raid5

查看一下新挂的RAID是否可以使用

111248860.jpg

5.设置开机自动启动RAID以及自动挂载

先建立/etc/mdadm.conf这个配置文件

1
2
3
[root@svr ~]# mdadm --detail /dev/md0 |grep UUID > /etc/mdadm.conf
[root@svr ~]# vi/etc/mdadm.conf
ARRAY/dev/md0 UUID=d58ed27d:00ce5cf5:b26ed1e9:879d0805

然后再修改/etc/fstab文件,设置开机自动挂载:

1
2
[root@svr ~]# vi/etc/fstab
/dev/md0        /mnt/raid5      ext4        defaults        0  0

然后再修改/etc/fstab文件,设置开机自动挂载:

重启一下系统,就可以检查开机自动挂载有没有设置成功了!


扩容raid磁盘阵列:

显示磁盘阵列的组成情况,4个块设备组成,

1
[root@svr /]# cat /proc/mdstat

/dev/sdg增加进阵列/dev/md0

1
[root@svr /]#mdadm --add /dev/md0 /dev/sdg

raid5阵列/dev/md0修改为5个块设备:

1
[root@svr /]#mdadm --grow/dev/md0 -n5

再显示一下磁盘阵列的组成情况,现在/dev/md16个块设备组成,完成扩容,还需要7.7分钟。

1
[root@svr /]#cat /proc/mdstat

等待扩容完成.....

执行下列命令:

1
[root@svr /]#resize2fs -f /dev/md0

验证是否已经扩大容量:

1
[root@svr /]#df -hT


验证预备磁盘是否能正常工作:

   模拟RAID5中一块磁盘损坏,检验spare磁盘的功能(raid5中允许一块磁盘损坏,我们所设置的那1spare磁盘会立即替代损坏的磁盘,进行RAID的重建,保障数据的安全):

先查看一下/dev/md0当前的状态

1
2
[root@svr /]#mdadm --detail /dev/md0
[root@svr /]#cat /proc/mdstat

使用以下命令设置磁盘sdd成为出错状态

1
[root@svr ~]#mdadm --manage /dev/md0 --fail /dev/sdd

接下来再来查看一下/dev/md0当前的状态

1
2
[root@svr /]#mdadm --detail /dev/md0
[root@svr /]#cat /proc/mdstat

进入到RAID挂载的目录raid5目录下,发现raid还可以使用,说明预备磁盘工作正常。

1
2
3
[root@svr /]#cd /raid5
[root@svr /]#touch  1 .txt
[root@svr /]#


将出错的磁盘删除并加入新的磁盘

先删除损坏的磁盘sdd,命令如下:

1
[root@svr raid5]#mdadm --manage /dev/md0    --remove/dev/sdd

再添加一块新的磁盘作为spare磁盘,命令如下:

1
[root@svr raid5]#mdadm --manage /dev/md0 --add /dev/sdg

OK,再来执行以下命令查看一下:

1
[root@svr /]#mdadm  --detail /dev/md0


关闭软件RAID的方法:

当你不再需要已经设置的RAID的时候,可以用以下方法关闭RAID

1、卸载/dev/md0,并且删除或注释掉/etc/fstab文件中的配置:

1
2
3
[root@svr ~]#umount /dev/md0
[root@svr ~]#vi /etc/fstab
#/dev/md0        /mnt/raid5        ext4        defaults             00

2、注释掉或删除/etc/mdadm.conf中的设置

1
2
[root@svr ~]#vi /etc/mdadm.conf
#ARRAY /dev/md0 UUID=d58ed27d:00ce5cf5:b26ed1e9:879d0805

3、停止raid设备

1
[root@svr ~]#mdadm --stop/dev/md0

4)删除raid中的所有磁盘

1
[root@svr ~]#mdadm --misc --zero-superblock /dev/sd[b-f]

这时候raid中的磁盘就删除了,重启后也不会有raid了。


RAID0RAID1实同于RAID5

RAID0:并行读写数据(带区卷)

RAID1:镜像磁盘阵列(镜像卷)



本文转自yun5277 51CTO博客,原文链接:http://blog.51cto.com/dengqi/1294831,如需转载请自行联系原作者

相关文章
|
1月前
|
Ubuntu Linux
计算机基础知识:linux系统怎么安装?
在虚拟机软件中创建一个新的虚拟机,并选择相应操作系统类型和硬盘空间大小等参数。将下载的 ISO 镜像文件加载到虚拟机中。启动虚拟机,进入安装界面,并按照步骤进行安装。安装完成后,可以在虚拟机中使用 Linux 系统。
|
30天前
|
缓存 监控 Linux
Linux系统清理缓存(buff/cache)的有效方法。
总结而言,在大多数情形下你不必担心Linux中buffer与cache占用过多内存在影响到其他程序运行;因为当程序请求更多内存在没有足够可用资源时,Linux会自行调整其占有量。只有当你明确知道当前环境与需求并希望立即回收这部分资源给即将运行重负载任务之前才考虑上述方法去主动干预。
492 10
|
1月前
|
安全 Linux 数据安全/隐私保护
为Linux系统的普通账户授予sudo访问权限的过程
完成上述步骤后,你提升的用户就能够使用 `sudo`命令来执行管理员级别的操作,而无需切换到root用户。这是一种更加安全和便捷的权限管理方式,因为它能够留下完整的权限使用记录,并以最小权限的方式工作。需要注意的是,随意授予sudo权限可能会使系统暴露在风险之中,尤其是在用户不了解其所执行命令可能带来的后果的情况下。所以在配置sudo权限时,必须谨慎行事。
249 0
|
1月前
|
Ubuntu Linux 开发者
国产 Linux 发行版再添新成员,CutefishOS 系统简单体验
当然,系统生态构建过程并不简单,不过为了帮助国产操作系统优化生态圈,部分企业也开始用国产操作系统替代 Windows,我们相信肯定会有越来越多的精品软件登录 Linux 平台。
86 0
|
1月前
|
Ubuntu 安全 Linux
Linux系统入门指南:从零开始学习Linux
Shell脚本是一种强大的自动化工具,可以帮助您简化重复的任务或创建复杂的脚本程序。了解Shell脚本的基本语法和常用命令,以及编写和运行Shell脚本的步骤,将使您更高效地处理日常任务。
143 0
|
1月前
|
Ubuntu Linux 图形学
Linux学习之Linux桌面系统有哪些?
Cinnamon:与MATE类似,Cinnamon 拥有 GNOME 和 Unity 等其它桌面环境所没有的种种功能,是高度可定制的桌面环境,不需要任何外部插件、窗口组件和调整工具来定制桌面。
94 0
|
1月前
|
Ubuntu 安全 Linux
十款常用Linux系统介绍
本文不是什么大盘点。市面上有好几百款发行版,每款发行版在某个方面都与众不同。不可能在此全部罗列,本文只罗列了十款最常见的Linux发行版(世界上只有两种人,一种是懂二进制的,另一种是不懂二进制的)。请宣传Linux的魅力或威力。
|
1月前
|
Ubuntu 安全 Linux
linux系统|Ubuntu 18.10 如期正式发布,新面孔新技术都来了
微软公司也终于沉不住气要在linux开源系统开疆扩土了。mscode这样的工具的确好用,虽然差第一名那么一点儿,但是最老版的公司出版的软件的确很是让人动心!
|
1月前
|
Ubuntu Linux 数据安全/隐私保护
Win10安装Linux子系统教程!如何在Win10系统中安装Ubuntu!
登录系统后,输入cd /返回上一级,然后再输入“ls”查看一下系统文件目录,看看对不对!
|
1月前
|
Web App开发 安全 Linux
Linux 比起其他系统的5 个优点和 5 个缺点
对Linux系统感兴趣的朋友,可以点击下方书籍进行学习。