服务器买回来配了几块硬盘,第一件事往往是要不要做 RAID、做哪种。这个问题没有标准答案,因为 RAID 的每一种级别都是在"容量利用率、性能、容错能力"这三者之间做取舍,而不同业务对这三者的权重完全不同。更关键的是,很多人对 RAID 有一个致命误解:以为做了 RAID 就等于有了备份。 这是完全不同的两件事,把 RAID 当备份用的代价可能是数据全丢。
这篇文章从 RAID 的三种基础技术(条带、镜像、校验)讲起,然后用一张完整的对比表列出 RAID 0/1/5/6/10/50/60 的容量、性能、容错差异,逐个分析它们的适用场景,重点讲重建过程中的风险(这是很多人忽略的部分),最后给出硬件 RAID 与软 RAID 的对比和 mdadm 的实操命令。
一、RAID 是什么
RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)的本质是:把多块物理硬盘组合起来,对操作系统呈现为一个逻辑设备,从而在这几方面获得收益:
- 提升性能:多块盘并行读写
- 提供冗余:坏一块盘数据不丢
- 扩大容量:把多块盘拼成一个大分区
大多数级别只能同时满足其中两项。 RAID 0 有性能和容量但没有冗余;RAID 1 有冗余但容量利用率只有 50%;RAID 5 兼顾了容量和冗余,但写入性能差、重建风险高。
需要明确的是:RAID 解决的是"硬盘硬件故障"这一种问题。 它防不了误删除、防不了勒索软件、防不了数据库逻辑错误、防不了机房火灾、也防不了 RAID 控制器本身故障导致整个阵列不可识别。这些都要靠备份和多副本解决。
二、三种基础技术:条带、镜像、校验
理解这三种技术,就能自己推导出各个 RAID 级别的特性。
条带化(Striping)
把数据切成固定大小的块(条带单元,通常 64 KB 到 1 MB),依次写到不同的盘上。读一个大文件时,多块盘可以并行读取,吞吐量翻倍。
优点:读写性能随盘数线性提升(尤其顺序读写)
缺点:没有任何冗余,任何一块盘坏了,整个阵列的数据全部不可读(因为文件是被切开分散存放的,缺了任何一段都不完整)
镜像(Mirroring)
同一份数据同时写到两块(或更多)盘上,内容完全相同。
优点:读性能可以提升(可以从两块盘各读一部分),容错简单直观,重建就是整盘拷贝
缺点:容量利用率只有 1/N(N 是镜像份数),成本最高
校验(Parity)
用异或(XOR)运算算出校验数据,把校验块分散存放在各盘上。任意一块盘损坏时,可以用剩下的盘加校验块反推出丢失的数据。
优点:只牺牲 1/N 的容量就能获得"坏一块盘不丢数据"的能力
缺点:每次写入都要读旧数据和旧校验、算新校验、再写数据块和校验块(称为写惩罚),写入性能明显下降;重建时要读遍所有盘,耗时很长且期间有二次故障风险
校验分两种级别:RAID 5 用单校验(容忍坏 1 块),RAID 6 用双校验(容忍坏 2 块)。
三、各级别完整对比
| 级别 | 最少盘数 | 容量利用率 | 容错 | 读性能 | 写性能 | 典型用途 |
|---|---|---|---|---|---|---|
| RAID 0 | 2 | 100% | 无 | 极高 | 极高 | 临时数据、可重建的缓存 |
| RAID 1 | 2 | 50% | 坏 1 块 | 高(可并行读) | 中(写两份) | 系统盘、小容量数据库 |
| RAID 5 | 3 | (N-1)/N | 坏 1 块 | 高 | 低(写惩罚 4 次 IO) | 读多写少、归档、备份存储 |
| RAID 6 | 4 | (N-2)/N | 坏 2 块 | 高 | 很低(写惩罚 6 次 IO) | 大容量归档、备份 |
| RAID 10 | 4 | 50% | 每组镜像坏 1 块 | 高 | 高 | 数据库、虚拟化首选 |
| RAID 50 | 6 | (N-2)/N | 每组坏 1 块 | 高 | 中 | 大容量、性能与冗余折中 |
| RAID 60 | 8 | (N-4)/N | 每组坏 2 块 | 高 | 中低 | 超大容量归档 |
注:N 为成员盘总数。写惩罚指的是"应用写 1 个数据块"实际触发的底层 IO 次数,RAID 5 是读数据 → 读校验 → 写数据 → 写校验共 4 次,RAID 6 因为双校验是 6 次,RAID 1 是 2 次(写两份),RAID 10 是 2 次。
四、逐个详解
RAID 0:纯条带,只要性能
两块盘的 RAID 0,容量是两者之和(比如 2 × 4T = 8T),顺序读写吞吐量理论上翻一倍。
什么时候可以用? 只有一种情况:数据丢了无所谓,或者能从别的地方快速重建。 比如:
- 视频渲染的临时工作区
- 可随时重建的缓存层
- 追求极致性能的测试环境
绝对不要用在:数据库主库、存储唯一副本、任何不能承受数据丢失的场景。两块盘的 RAID 0,故障率是单盘的两倍——任何一块坏,全部数据报废。
RAID 1:纯镜像,简单可靠
两块盘互为镜像,容量等于其中一块(2 × 4T 只有 4T 可用)。读性能可以接近两块盘(部分控制器支持从两块盘并行读不同数据),写性能约等于单盘(要写两份,但可并行)。
优点:概念简单、重建快(整盘拷贝)、故障后直接换盘即可。
缺点:容量利用率 50%,大容量场景下成本很高。
典型用途:服务器的系统盘。系统盘容量需求不大(几百 G 到 1T),但对可靠性有要求,两块 SSD 做 RAID 1 是标准做法。
RAID 5:单校验,性价比陷阱
三块盘起,容量是 N-1 块。三块 4T 的盘做 RAID 5 可用 8T。
它的致命问题有两个:
第一,写入性能差。 每次小写都要读旧数据块和旧校验块,算出新校验,再写回数据块和校验块。对于随机小写密集的数据库场景,这个开销是灾难性的。虽然 RAID 控制器有缓存可以缓解一部分,但缓存命中率有限,且掉电保护没做好的话缓存本身也是风险。
第二,重建风险高。 这是更要命的问题,见下一节。
什么时候还能用 RAID 5?
- 读多写少、对写入性能不敏感的场景(文件服务器、归档、备份存储)
- 盘数不多(3 到 5 块)、单盘容量不太大(4T 以内)
- 且有可靠的备份
现在的共识是:大容量机械盘(6T 以上)不推荐 RAID 5。 因为单盘容量越大,重建时间越长,重建期间二次故障的概率越高。这是 RAID 5 从"主流选择"变成"需要谨慎"的根本原因。
RAID 6:双校验
四块盘起,容量是 N-2 块,能容忍同时坏两块盘。
比 RAID 5 强在:重建期间(此时阵列处于降级状态、无冗余)再坏一块盘,数据仍然不丢。这大幅降低了重建期间的风险。
代价:写入性能比 RAID 5 更差(6 次 IO),且需要至少 4 块盘。
适用场景:大容量归档、备份存储、视频监控这类"写一次读多次"的大容量需求。这类场景写入是顺序的、批量的,写惩罚的影响相对小,而对容量利用率敏感。
RAID 10:镜像 + 条带,数据库首选
先做多个 RAID 1 镜像对,再把这些镜像对条带化(RAID 1+0)。最少 4 块盘,容量 50%。
它为什么适合数据库:
- 写性能好:写惩罚是 2(写两份),没有校验计算
- 随机读好:条带化让多块盘可以并行处理不同的随机读,这对数据库最重要
- 重建快且影响小:坏一块盘后,只需要从它的镜像伙伴整盘拷贝,不用遍历所有盘,重建时间短、期间性能损失小
- 容错能力尚可:每组镜像可以坏一块盘,只要不是同一组的两块同时坏就不丢数据
代价是容量利用率只有 50%,成本最高。但对于数据库来说,这个成本通常是值得的——因为数据库对随机 IO 和写入延迟极其敏感(详见第 061 篇关于随机 IOPS 的论述)。
注意:RAID 10 的"坏两块也安全"是有条件的。 4 块盘的 RAID 10(两组镜像),如果坏的两块恰好是同一组的,数据就丢了。这种情况的概率大约是 1/3(在已知坏两块的前提下)。
RAID 50 / 60:折中方案
多个 RAID 5(或 6)组再做 RAID 0 条带。兼顾容量利用率和性能,用于盘数较多(8 块以上)且容量需求大的场景。复杂度高,一般只在存储阵列里见到,单台服务器很少用。
五、重建风险:最容易被忽略的部分
这是选择 RAID 级别时最应该重视、却最常被忽略的因素。
重建是什么
一块盘坏了(或即将坏),阵列进入"降级"状态,此时:
- RAID 5/6:每次读都要靠校验反推缺失的数据,性能大幅下降(可能降到正常的一半以下)
- RAID 1/10:从镜像盘读,性能影响较小
换上新盘后,阵列开始重建——把缺失的数据重新算出来写到新盘上。
重建时间与二次故障
重建是全盘顺序读写的过程,耗时取决于单盘容量和重建速度。 一块 8T 的机械盘,重建速度按 100 MB/s 算,需要约 22 小时;如果阵列还在服务业务读写,实际重建可能要好几天。
问题是:重建期间,阵列处于无冗余(RAID 5)或冗余降低(RAID 10)的状态,此时再坏一块盘就完了。
更麻烦的是,重建本身就是一次全盘高强度读写,这会加大其他盘(通常是同批次、同龄的盘)在此时出故障的概率。 同批采购的硬盘,寿命曲线相近,一块坏了往往意味着其他块也接近寿命末期。
URE:不可恢复读取错误
机械盘的规格书里有一个参数叫 URE(Unrecoverable Read Error Rate,不可恢复读取错误率),常见值是 每 10^14 位出现 1 次(消费级盘)或 每 10^15 位出现 1 次(企业级盘)。
这意味着:读 10^14 位(约 12.5 TB)的数据, statistically 会遇到一次读不出来的扇区。
对于 RAID 5 重建来说这是个大问题:一块 8T 的盘重建,要读遍其余所有盘的全部数据(假设 4 块盘 × 8T,要读 24T)。如果遇到一个 URE,重建就失败了——而且此时已经没有冗余可用,整个阵列的数据丢失。
用 10^14 的 URE 算,24T 的读取量遇到至少一个 URE 的概率在 15% 到 20% 量级。这不是危言耸听,这是大容量机械盘 RAID 5 在业界被普遍劝退的量化依据。 换用 URE 为 10^15 的企业级盘,概率会降到 2% 左右,但仍不是零。
结论:
- RAID 5 只适合小容量盘(经验上单盘 4T 以内、总数不超过 6 到 8 块)
- 大容量盘要用 RAID 6(双校验,能容忍重建中再遇到一个 URE)或者 RAID 10
- SSD 上没有 URE 这个传统概念(它有别的失效模式),但重建期间的二次故障风险同样存在
用 SSD 时的额外考虑
- SSD 的写入寿命:RAID 5/6 的写惩罚会放大写入量,加速 SSD 磨损。RAID 10 的写放大是 2 倍,RAID 5 是 4 倍
- 同批 SSD 的寿命同步性:同型号同批次的 SSD,写入量接近,可能几乎同时达到寿命终点。建议不要在同一阵列里混用完全相同批次的盘,或者监控 SSD 的磨损指标
- 重建耗时短:SSD 重建比机械盘快得多(几十分钟到几小时),这大幅缩短了风险窗口,是 SSD 做 RAID 的一大优势
热备盘(Hot Spare)
配置一块空闲盘作为热备,阵列中任何一块坏了,控制器自动用热备盘开始重建,不需要人工介入换盘。
这能把"降级运行"的时间从"等人发现并换盘"缩短到几乎为零,对于无人值守的机房很有价值。代价是多一块盘的成本(它平时不承载数据)。
监控比 RAID 级别更重要
再好的 RAID 级别,如果没有监控,一块盘坏了三个月没人知道,那和没有 RAID 一样。 必须做到:
- 硬盘 SMART 状态定期检查与告警
- RAID 控制器状态监控(阵列降级要立即告警)
- 换盘流程要提前演练
六、RAID 不是备份(必须强调)
这是本文最重要的一节。
RAID 提供的是"可用性"(硬盘坏了服务不中断),备份提供的是"可恢复性"(数据被破坏了能找回)。
RAID 防不了以下任何一种情况:
| 场景 | RAID 能防吗 | 靠什么解决 |
|---|---|---|
| 单块硬盘物理损坏 | 能 | RAID |
误删除文件 / rm -rf |
不能 | 备份 |
DROP TABLE / 误 UPDATE |
不能 | 备份 + binlog 时间点恢复 |
| 勒索软件加密 | 不能(会把所有成员盘一起加密) | 离线备份、异地备份 |
| 数据库逻辑错误 | 不能 | 备份 + 时间点恢复 |
| RAID 控制器故障 | 不能(可能整个阵列读不出来) | 备份 + 同型号控制器备件 |
| 阵列配置被误清 | 不能 | 备份 + 配置文档 |
| 文件系统损坏 | 不能 | 备份 |
| 机房火灾/水淹/盗窃 | 不能 | 异地备份 |
| 病毒/恶意删除 | 不能 | 备份 |
一个真实的常见事故:服务器做了 RAID 1,管理员觉得"双份数据很安全",从不做备份。某天执行了一条 UPDATE 忘了加 WHERE,两镜像盘同时被写入同样错误的数据——RAID 忠实地把错误也镜像了一份。
正确做法是:RAID + 备份,两个都要。 RAID 保证硬盘坏了业务不中断,备份保证数据被破坏了能找回。
七、硬件 RAID vs 软 RAID
| 维度 | 硬件 RAID(独立 RAID 卡) | 软 RAID(mdadm) |
|---|---|---|
| CPU 占用 | 卡上自带处理器,不占主机 CPU | 校验计算占用主机 CPU(RAID 5/6 较明显) |
| 缓存 | 有板载缓存,配 BBU/超级电容可掉电保护 | 无专用缓存,依赖系统内存 |
| 性能 | 一般更好,尤其 RAID 5/6 写 | RAID 0/1/10 接近硬件卡,5/6 差距较大 |
| 成本 | RAID 卡本身要花钱(几百到上万) | 免费 |
| 可移植性 | 换不同型号卡可能无法识别阵列 | 换机器也能识别(mdadm 元数据标准) |
| 管理 | 卡自带 BIOS 管理界面、厂商工具 | 命令行 + 配置文件 |
| 监控 | 厂商工具(如 MegaCLI、storcli) | mdadm、/proc/mdstat、邮件告警 |
| 系统盘 RAID | 支持(很多服务器靠它启动) | 也能做,但配置复杂 |
| 故障排查 | 需要厂商工具,门槛较高 | 工具通用,社区资料多 |
怎么选:
- 数据库、虚拟化等 IO 密集的生产环境:硬件 RAID,且必须配 BBU(电池备份单元)或超级电容,否则掉电时写缓存中的数据会丢失,甚至导致阵列损坏。同时要把写缓存策略设成 WriteBack(有 BBU 时)而不是 WriteThrough
- 一般文件服务、备份存储、预算有限:软 RAID 完全够用,尤其是 RAID 1 和 RAID 10(几乎不消耗 CPU)
- 云环境:云主机通常看不到物理盘,RAID 由底层存储系统负责,用户层面一般直接挂载云盘,不要自己在云盘上再叠一层 RAID(除非是特定的性能需求,且要理解它的风险)
关于 RAID 卡的写缓存:没有 BBU 时千万别开 WriteBack。掉电后缓存里的脏数据丢失,会造成数据库文件损坏,且这种损坏往往是不可修复的。检查 BBU 状态是运维例行工作之一。
mdadm 实操
# 安装
# RHEL/CentOS/Rocky
sudo dnf install -y mdadm
# Debian/Ubuntu
sudo apt-get install -y mdadm
创建 RAID 1(两块盘):
sudo mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc
创建 RAID 10(四块盘):
sudo mdadm --create /dev/md0 --level=10 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde
创建 RAID 5(三块盘 + 一块热备):
sudo mdadm --create /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 \
/dev/sdb /dev/sdc /dev/sdd /dev/sde
风险提示:--create 会清除成员盘上的所有数据。执行前用 lsblk 和 mdadm --examine 反复确认盘符,选错盘会造成不可逆的数据丢失。
查看状态:
cat /proc/mdstat
sudo mdadm --detail /dev/md0
/proc/mdstat 输出的重建进度示例:
md0 : active raid10 sde[3] sdd[2] sdc[1] sdb[0]
7813893120 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU]
[=====>...............] resync = 28.5% (2229698048/7813893120) finish=180.3min speed=51587K/sec
[UUUU] 表示四块盘都正常,出现 _ 表示那块盘掉了。
保存配置(重要,否则重启后阵列可能组装不起来):
# RHEL/CentOS/Rocky
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm.conf
# Debian/Ubuntu
sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
sudo update-initramfs -u
模拟故障与换盘演练:
sudo mdadm /dev/md0 --fail /dev/sdb # 标记为故障
sudo mdadm /dev/md0 --remove /dev/sdb # 移除
# 物理换盘后
sudo mdadm /dev/md0 --add /dev/sdb # 加入,自动开始重建
watch -n 5 cat /proc/mdstat # 观察重建进度
这个演练建议在上线前做一次,它能验证你的监控告警是否生效、换盘流程是否顺畅、重建要多久。真出故障时才第一次做,代价太大。
格式化与挂载:
sudo mkfs.xfs -f /dev/md0
sudo mkdir -p /data
sudo mount /dev/md0 /data
echo '/dev/md0 /data xfs defaults,noatime 0 0' | sudo tee -a /etc/fstab
用 UUID 而不是设备名写 fstab 更稳妥(设备名可能因盘序变化而改变):
sudo blkid /dev/md0
监控与告警
mdadm 可以配置邮件告警:
# /etc/mdadm.conf
MAILADDR ops@example.com
sudo systemctl enable --now mdmonitor
也可以定时检查:
sudo mdadm --monitor --scan --test # 发一封测试告警
另外要做 SMART 监控:
# 安装 smartmontools
# RHEL/CentOS/Rocky
sudo dnf install -y smartmontools
# Debian/Ubuntu
sudo apt-get install -y smartmontools
sudo smartctl -a /dev/sdb
sudo smartctl -H /dev/sdb # 只看健康状态
重点关注 Reallocated_Sector_Ct(重映射扇区数)、Current_Pending_Sector(待映射扇区)、UDMA_CRC_Error_Count(数据线错误)。这些指标上升是硬盘即将故障的前兆。
八、场景推荐
| 场景 | 推荐 | 理由 |
|---|---|---|
| 服务器系统盘 | RAID 1(两块 SSD) | 容量需求小,可靠性要求高,重建简单 |
| 数据库主库 | RAID 10(SSD/NVMe) | 随机读写密集,容错与性能都要 |
| 数据库从库 | RAID 10 或 RAID 5(小容量) | 写入压力小,但仍需可靠 |
| 虚拟化宿主 | RAID 10 | 随机 IO 密集,多虚拟机并发 |
| 文件共享 / 网盘 | RAID 5 或 RAID 6 | 读多写少,容量利用率重要 |
| 备份存储 / 归档 | RAID 6 | 大容量,容错优先,写入是批量顺序的 |
| 视频监控 / 日志 | RAID 5 或 RAID 6,甚至不做 RAID | 可容忍部分丢失,容量优先 |
| 临时数据 / 缓存 | RAID 0 | 可重建,性能优先 |
| 超大规模 | 分布式存储(副本或纠删码) | 单机 RAID 已到上限 |
几个判断原则:
先看业务的 IO 特征。 随机小写密集(数据库、虚拟化)→ RAID 10;顺序大块读写(备份、视频)→ RAID 5/6 也能接受。
再看盘的类型和容量。 大容量机械盘(6T 以上)尽量不用 RAID 5;SSD 上 RAID 5 的写放大会影响寿命,RAID 10 更合适。
最后看是否有可靠备份。 如果备份做得好,可以适度降低 RAID 级别换取容量;如果备份薄弱,RAID 级别要给足余量。但记住,这不能以牺牲备份为代价。
有时不做 RAID 反而更好。 对于本身就是多副本的系统(比如分布式存储、Hadoop、Ceph、Elasticsearch、Kafka),它们的软件层已经做了副本或纠删码,底层再叠一层 RAID 纯属浪费——应该让每个节点用独立单盘(JBOD),由软件层保证可靠性。
常见问题
两块盘做 RAID 1 还是 RAID 0?
看你更在意什么。两块盘的 RAID 1 有 50% 容量但有冗余,读写性能接近单盘(读可略好);RAID 0 有 100% 容量和翻倍的顺序性能,但任何一块坏就全丢。系统盘选 RAID 1,追求性能且数据可重建的临时存储选 RAID 0。数据库不要选 RAID 0。
RAID 5 真的不能用吗?
不是不能用,是有前提条件。小容量盘(4T 以内)、盘数少(3 到 5 块)、读多写少、且有可靠备份的场景,RAID 5 依然是性价比不错的选择。但大容量盘(6T 以上)做 RAID 5,重建时的 URE 风险是真实存在的,这时候应该上 RAID 6 或 RAID 10。
做了 RAID 还需要备份吗?
必须需要。 RAID 解决的是硬盘硬件故障导致的服务中断,它防不了误删除、误 UPDATE、勒索软件、控制器故障、机房事故。RAID 会把你的误操作一样"冗余"到每一块盘上。正确姿态是 RAID + 定期备份 + 异地备份,缺一不可。
RAID 卡电池(BBU)没电了继续用有问题吗?
有问题,而且可能很严重。 BBU 的作用是在掉电后保住 RAID 卡写缓存里的脏数据。BBU 失效后,如果写缓存策略还是 WriteBack,一次意外掉电就可能丢失缓存中的数据,导致文件系统或数据库文件损坏。
处理办法:检查 BBU 状态,失效就把缓存策略改成 WriteThrough(性能会下降但安全),或者更换 BBU。这是运维例行检查项,不能忽略。
不同容量的盘能组 RAID 吗?
技术上可以,但实际会以最小的那块为准,多出来的容量浪费掉。比如 4T + 8T 组 RAID 1,只能用 4T。建议用相同型号、相同容量的盘,性能一致、寿命曲线可预测,也便于备件管理。混用不同批次但同规格的盘反而有一定好处(避免同时失效)。
SSD 需要 RAID 吗?
看数据重要性。SSD 的可靠性通常高于机械盘,但它也会坏,且失效模式往往是"突然整体不可用"而不是逐渐变慢。数据库用 SSD 做 RAID 10 依然是标准做法,性能的随机读收益也很明显。另外要注意监控 SSD 的磨损指标(可用 smartctl 查看),并避免同批次盘同时达到寿命。
云服务器上要不要自己组 RAID?
一般不要。云盘底层已经是分布式多副本存储,可靠性由云厂商保障,用户在云盘上再叠软 RAID 会增加复杂度、损失部分性能,且重建逻辑与云盘的快照机制会互相干扰。有更高 IOPS 需求时,应该选更高规格的云盘或者用多块云盘做条带(在应用层或 LVM 层),而不是做传统 RAID 5/6。
阵列降级了要不要立刻换盘?
要。降级状态下 RAID 5 没有冗余、RAID 10 只剩一半冗余,此时再坏一块盘就可能丢数据,而且降级期间性能也会明显下降。这就是为什么建议配置热备盘——它能在无人值守时自动开始重建。
总结
- RAID 只有三种基础技术:条带(要性能、无冗余)、镜像(要冗余、容量减半)、校验(折中、写惩罚大)。所有级别都是这三种的组合,理解了它们就能自己推导各级别特性。
- 选级别看 IO 特征:随机小写密集的数据库、虚拟化选 RAID 10(写惩罚 2、重建快、随机读好);顺序大块的备份归档选 RAID 6(容量利用率高、容忍坏两块);读多写少的小容量场景 RAID 5 仍可用;系统盘两块 SSD 做 RAID 1。
- 重建风险是被低估的关键:8T 机械盘重建可能要一天以上,期间阵列无冗余、且高强度读取会加大其他同龄盘的二次故障概率。大容量盘做 RAID 5 的 URE 风险是量化存在的(12.5 TB 读取量一次 URE),这也是业界劝退大容量 RAID 5 的原因。配置热备盘能显著缩短降级窗口。
- RAID 不是备份:它防不了误删除、误 UPDATE、勒索软件、控制器故障、机房事故,而且会忠实地把你的误操作冗余到每一块盘上。RAID 提供可用性,备份提供可恢复性,两者都要有。
- 硬件 RAID 要注意 BBU:没有电池或超级电容保护时绝不能开 WriteBack 写缓存,否则掉电会导致缓存数据丢失甚至阵列损坏。软 RAID(mdadm)在 RAID 1/10 上性能接近硬件卡且可移植性更好,是预算有限或一般文件服务的好选择。
- mdadm 上线前要做换盘演练:用
--fail/--remove/--add模拟一次故障恢复,验证告警是否生效、重建要多久。--create会清空成员盘数据,执行前必须反复确认盘符。 - 监控比级别更重要:配好 mdadm 邮件告警(
MAILADDR+mdmonitor)、定期检查/proc/mdstat的[UUUU]状态、以及用smartctl关注重映射扇区数等前兆指标。一块盘坏了三个月没人知道,再好的 RAID 级别也救不了你。
企业QQ咨询




