必须先区分软硬raid类型:cat /proc/mdstat仅显示软件raid实时状态(如active、同步进度、[uu]状态),不包含chunk size等配置参数;mdadm --detail /dev/mdx才可查软件raid元数据中的完整参数;硬件raid则需用厂商工具(如megacli、hpssacli)读取控制器固件配置,/proc/mdstat和mdadm对其无效。

得先分清是软件 RAID 还是硬件 RAID —— 两者的参数来源完全不同,混用命令只会看到空结果或报错。
cat /proc/mdstat 只能看软件 RAID 的实时状态,不是详细参数
这个文件只反映内核当前维护的快照:是否 active、同步进度、降级标识(比如 [UU] 或 [_U]),但不包含 chunk size、bitmap 位置、write-intent log 状态等配置参数。
- 执行
cat /proc/mdstat后若没看到mdX设备,说明系统没识别到软件 RAID,别硬查 - 输出里出现
resync = 45.2%表示正在重建,此时改参数会中断过程甚至损坏阵列 -
Personalities : [raid1] [raid5]行只显示已加载的 RAID 模块,不代表实际设备存在
mdadm --detail /dev/mdX 才是查软件 RAID 具体参数的正确入口
它输出的是元数据头(superblock)里存的实际配置,包括 RAID 级别、chunk size、layout、bitmap 设置、设备 UUID 和各成员盘状态。
宝塔Linux面板11.8.1为官网当前正式版,新增AI建站能力并经过宝塔网站工程师深度调教,开放自定义AI功能API,同时对WAF进行界面重构和深度优化,提升拦截能力与运维效率。
- 必须用 root 权限运行,否则部分字段(如
Events :)可能为空 - 重点看
Chunk Size :(默认 512K,RAID5/6 性能敏感)、Bitmap :(internal表示启用写意图日志,none则无崩溃保护) -
Array State :后的字母串(如AAAAA)每个位置对应一块盘:A=active,. = missing,F = faulty —— 比括号里的[UU_U]更精确 - 如果
State :显示clean, degraded,说明已有盘失效,但阵列仍在运行;inactive则代表未启动,需手动mdadm --assemble
硬件 RAID 卡参数必须用厂商工具,/proc/mdstat 和 mdadm 一律无效
LSI/Broadcom 卡用 MegaCLI,HP Smart Array 用 hpssacli,Dell PERC 用 perccli —— 这些工具读取的是 RAID 卡固件里的配置,和 Linux 内核无关。
-
MegaCLI -LDInfo -Lall -aAll输出里的Strip Size(非 chunk size)、Cache Policy(WriteBack/WriteThrough)、BBU Status都是关键参数 -
hpssacli ctrl all show config会列出物理盘的Drive Firmware Revision和逻辑卷的Logical Drive Number,这些在/proc/scsi/scsi里根本看不到 - 试图对硬件 RAID 设备(如
/dev/cciss/c0d0或/dev/sda)运行mdadm --detail会报No md superblock detected,这不是错误,是设计如此
查不到参数时,先确认设备类型再选工具
很多误操作源于把硬件 RAID 当成软件 RAID 查 —— 最快验证方式是:
- 运行
lspci | grep -i raid:输出含LSI Logic、Avago、HP Smart Array就是硬件卡,别碰mdadm - 运行
ls /dev/md*:有结果才说明存在软件 RAID,否则mdadm --detail必然失败 -
cat /proc/mdstat第一行是Personalities :但下面没mdX行?大概率阵列根本没激活,或者成员盘没被识别(检查dmesg | grep -i "md")
参数细节藏在不同层级:软件 RAID 在 superblock 里,硬件 RAID 在控制器固件里,操作系统层看不到全貌 —— 拿错工具,看到的永远是残缺信息。










