MegaCLI 建逻辑盘
用 MegaCLI 建阵列的核心命令是 -CfgLdAdd:指定 RAID 级别与物理盘(按 Enclosure:Slot 定位),并设置写策略、读策略与初始化方式。命令本身很短,风险全在参数上——槽位号抄错会在错误的盘上建阵列,写策略不设会随固件默认值变化,初始化方式选错则会让创建过程持续数小时。
创建 RAID 5 逻辑盘
创建 RAID 5 逻辑盘
M=/opt/MegaRAID/MegaCli/MegaCli64
$M -PDList -a0 | grep -E "Enclosure Device ID|Slot Number|Firmware state" # 先核对可用盘
$M -CfgLdAdd -r5 [252:0,252:1,252:2,252:3] WB Direct -a0 # 建 RAID 5
$M -LDInfo -Lall -aALL | grep -E "RAID Level|State|Size" # 核对结果
$M -AdpSetProp -RebuildRate -a0 | head # 查看重建速率设置关键参数
| -CfgLdAdd | 创建逻辑盘的主命令 |
|---|---|
| -rN 级别 | -r0 / -r1 / -r5 / -r6 / -r10 / -r50 / -r60 |
| [Enclosure:Slot] | 物理盘定位,多个盘用逗号分隔并加方括号 |
| WB / WT | 写策略 Write Back 或 Write Through |
| Direct / Cached | 读策略直读或走缓存 |
| 验证 | 创建后用 -LDInfo -Lall -aALL 核对级别、容量与状态 |
创建前后的检查
| 阶段 | 检查项 | 用途 |
|---|---|---|
| 创建前 | -PDList 确认盘为空闲状态 | 避免误用已在阵列中的盘 |
| 创建前 | 确认容量与型号一致 | 避免容量按最小盘计造成浪费 |
| 创建时 | 写策略与读策略与设计一致 | 避免随固件默认值漂移 |
| 创建后 | -LDInfo 核对级别与状态 | 确认逻辑盘状态为 Optimal |
| 创建后 | 记录槽位与逻辑盘对应关系 | 为后续换盘与扩容留依据 |
动手前的四项确认
- 槽位号来自 -PDList 的实际输出,不凭机箱印刷号猜
- 目标盘上没有需要保留的数据,创建会写入元数据
- 写策略按是否有电池或电容保护来定
- 创建完先核对状态再投入业务,不要直接格式化挂载
创建逻辑盘会写入元数据并做初始化,目标盘上的既有数据不可恢复;操作前确认盘未在别的阵列中,并核对槽位号。