目的
更换磁盘后恢复磁盘盘符
磁盘已完成替换
现象
磁盘设备
可以看到, sdb 设备已经不存在
# ls /dev/sd?
/dev/sda /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg
尝试创建磁盘失败
# megacli -CfgLdAdd -r0 [0:2] WB Direct -a0
Adapter 0: Configure Adapter Failed
zW error description:
The current operation is not allowed because the controller has data in cache for offline or missing virtual disks.
Exit Code: 0x54
原因, 磁盘之前已创建了虚拟设备
查询虚拟设备
# megacli -LDInfo -LALL –aAll | grep Virtual
Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Virtual Drive: 2 (Target Id: 2)
Virtual Drive: 3 (Target Id: 3)
Virtual Drive: 4 (Target Id: 4)
Virtual Drive: 5 (Target Id: 5)
Virtual Drive: 6 (Target Id: 6)
查询虚拟设备磁盘关系
# megacli -LDInfo -LALL -aAll | grep -E "Virtual|Raid\ Level|Mirror|Number|^Size"
Adapter 0 -- Virtual Drive Information:
Virtual Drive: 0 (Target Id: 0)
Size : 3.637 TB
Mirror Data : 3.637 TB
Number Of Drives : 2
Virtual Drive: 2 (Target Id: 2)
Size : 3.637 TB
Number Of Drives : 1
Virtual Drive: 3 (Target Id: 3)
Size : 3.637 TB
Number Of Drives : 1
Virtual Drive: 4 (Target Id: 4)
Size : 3.637 TB
Number Of Drives : 1
Virtual Drive: 5 (Target Id: 5)
Size : 3.637 TB
Number Of Drives : 1
Virtual Drive: 6 (Target Id: 6)
Size : 3.637 TB
Number Of Drives : 1
很明显, Virtual Drive: 1 就是之前替换的磁盘
# megacli -PDList -a0 | grep -E "Slot|DiskGroup"
Slot Number: 0
Drive's postion: DiskGroup: 0, Span: 0, Arm: 0
Slot Number: 1
Drive's postion: DiskGroup: 0, Span: 0, Arm: 1
Slot Number: 2
Slot Number: 3
Drive's postion: DiskGroup: 1, Span: 0, Arm: 0
Slot Number: 4
Drive's postion: DiskGroup: 2, Span: 0, Arm: 0
Slot Number: 5
Drive's postion: DiskGroup: 3, Span: 0, Arm: 0
Slot Number: 6
Drive's postion: DiskGroup: 4, Span: 0, Arm: 0
Slot Number: 7
Drive's postion: DiskGroup: 5, Span: 0, Arm: 0
清理一下缓存
# megacli -DiscardPreservedCache -L1 -a0
Adapter #0
Virtual Drive(Target ID 01): Preserved Cache Data Cleared. <- 这里就把 磁盘缓存给清理掉了
Exit Code: 0x00
重建 raid0
# megacli -CfgLdAdd -r0 [0:2] WB Direct -a0
Adapter 0: Created VD 1
Adapter 0: Configured the Adapter!!
Exit Code: 0x00
使用磁盘
(sdb 回来了)
# ls /dev/sd?
/dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg
分区格式化
# parted -s /dev/sdb mklabel gpt
]# parted /dev/sdb mkpart primary xfs 1 100%
Information: You may need to update /etc/fstab.
# mkfs -t xfs -i size=1024 /dev/sdb1
meta-data=/dev/sdb1 isize=1024 agcount=4, agsize=244140480 blks
= sectsz=4096 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=976561920, imaxpct=5
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=476836, version=2
= sectsz=4096 sunit=1 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0