先把当时的情况摆出来。一台 Dell R740 跑 CentOS 7.9,机房断电重启后系统里看不到数据盘,MegaCli 或 storcli 显示 PD 全是 Unconfigured Good,VD 列表为空并且提示有 foreign configuration 待处理。
原因不止一个,得分开看。掉电时 RAID 卡缓存里的配置还没落盘到 NVRAM,重启后被当成外部配置隔离起来。另一种情况是两块盘先后上电,卡把先到的那块的配置判为 foreign。
另外,更换过一块背板,SAS 地址变化让卡认不出原来的 VD。少数情况下是有人在开机时误进阵列配置界面,点过 clear configuration。
第一件事是看是不是真的有外部配置待导入
storcli64 /c0 show foreign
随后导入外部配置,别先清掉
storcli64 /c0/fall import
再往下确认虚拟盘回到 Optimal 状态
storcli64 /c0/vall show
等前面都确认过,再核对文件系统并正常挂载
blkid /dev/sdb1 && mount /data && df -h /data
恢复的判定其实很直接。storcli64 /c0 show 里 Foreign 为空,VD 状态是 Optimal,操作系统能看到原分区并挂载成功,数据校验一致。
容易忽略的是,foreign 配置必须先 import 再谈别的,clear 会把盘上的 VD 信息彻底抹掉;导入前把 show all 的输出导一份,万一失败还有原始配置可查。改动前把原配置备份一份,出问题能马上回滚,这比任何技巧都实用。
