linux 组建raid5详细操作

raid5最多运行损坏一个盘,最少3个盘,容量为少一块硬盘的容量之和。
如果硬盘数量较多,比如8块以上,建议用raid6,raid6最多允许两块硬盘损坏。

如果需要

一、安装raid软件

deb包

bash 复制代码
apt-get install mdadm

或dnf包

bash 复制代码
dnf install mdadm

二、组件raid

1.查看硬盘信息

bash 复制代码
fdisk -l

结果大致如下:
注意:这个sdx的编号,重启之后可能会改变,如果操作过程中重启,需要重新查找,避免格式化错误
编号通常从/dev/sda开始,a、b、c编号,这个编号就代表了具体的硬盘或者raid

2.查看分区对应硬盘的挂载情况

这个命令可以直观查看硬盘挂载情况

bash 复制代码
lsblk

比如我的文件存储服务器,我用sda、sdb、sdc、sdi这四块16T硬盘组raid5:

3.先在每个盘创建一个分区

重点:raid是用硬盘的分区来做,而不是直接拿硬盘来做,否则会不识别

bash 复制代码
fdisk /dev/sdf

输入n,回车,回车,回车,w保存并生效

重复在剩下的盘进行上面的分区操作

如果提示,则输入g:

4.创建raid5

bash 复制代码
mdadm --create --verbose /dev/md5 --level=5 --raid-devices=4 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1

注意命令中的参数,level为raid级别,这里是5。

raid-devices为硬盘数,根据实际写,我这里是4。

/dev/md5 这个数字可以改,比如md55,就是自己起的名字,当然需要按照这个格式
这里按y确认

5.再次查看结构

bash 复制代码
lsblk

可以看到刚刚创建的md5

6.在新建的raid创建分区并格式化

bash 复制代码
fdisk /dev/md5

g,n,回车,回车,回车,w保存并生效

7.格式化新分区

bash 复制代码
mkfs.ext4 /dev/md5p1

这时候就组件完成了

8.注意

raid5建成后会对硬盘进行同步,如果是大容量的机械硬盘,可能要同步几天,不过不用担心,可以关机和正常使用。

同时raid5使用会消耗cpu性能。

9.挂载到/data

这个目录是自己取的名字

bash 复制代码
mkdir /data && mount /dev/md5p1 /data 

10.开机挂载

使用blkid获取硬盘的uuid

这里获取的是raid盘的uuid

bash 复制代码
blkid

比如我这里:

将uuid中的内容复制下来

编辑启动信息

bash 复制代码
vi /etc/fstab

比如将a5953370-6c5e-47d8-adf4-a0e6e01ee55c挂载到/data下,加入这条信息,保存即可

复制代码
UUID=a5953370-6c5e-47d8-adf4-a0e6e01ee55c /data    ext4    defaults        0       2
相关推荐
zh路西法6 小时前
【navigation2全局路径更新频率修正】行为树框架的巧妙利用
linux
苏宸啊6 小时前
IPC管道
linux·c++
bush46 小时前
嵌入式linux学习记录十,定时器
linux·嵌入式
峥无7 小时前
Linux进程信号:从基础概念到内核底层原理
linux·运维·服务器·信号处理
广州灵眸科技有限公司7 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发(编译)方式说明
linux·服务器·单片机·嵌入式硬件·电脑
土星云SaturnCloud7 小时前
土星云AI边缘计算SE110S系列模型部署实战-YOLOv5
服务器·人工智能·yolo·docker·边缘计算
北山有鸟8 小时前
用开发板的.config替换ubuntu中内核源码目录的.config
linux·运维·ubuntu
qq_452396238 小时前
第二十篇:《Docker 故障排查常用命令与技巧》
运维·docker·容器
jcbut8 小时前
离线安装dify 1.7
linux·运维·dify
艾iYYY8 小时前
string 类的模拟实现
android·服务器·c语言·c++·算法