RAID 陣列單顆硬碟離線時,機箱內十幾顆外觀相同的硬碟,如何在最短時間拔出故障盤?答案是:**貼標籤 + 查序號**。本文分享零成本、高可靠的工程師實戰定位法。
/dev/sda、/dev/sdb...) 會隨啟動順序、熱插拔順序漂移,**不可**作為物理定位依據hdparm -I 讀取裝置序號 → 對照物理標籤 → 精準鎖定故障盤物理位置SN: 5QF0337C | Slot: 3 | RAID: Array-A | Date: 2024-01# 查看所有磁碟序號 (需 root 權限)
for d in /dev/sd[a-z]; do
echo "=== $d ==="
hdparm -I "$d" | grep -E 'Serial Number|Model Number'
done
# 或針對已知故障裝置 (如 /dev/sdc)
hdparm -I /dev/sdc
# 輸出範例:
# /dev/sdc:
# Model Number: ST3320620AS
# Serial Number: 5QF0337C
# Firmware Revision: 3.AAC
# ...
hdparm 輸出序號對於大規模部署,建議維護 CSV/資料庫:
| 序號 | 型號 | 容量 | 機櫃 | 機箱 | 槽位 | RAID 群組 | 上架日期 | 保固到期 |
|---|---|---|---|---|---|---|---|---|
| 5QF0337C | ST3320620AS | 320GB | A01 | R42-U12 | Slot 3 | Array-A | 2024-01-15 | 2029-01-15 |
配合資產管理系統 (CMDB) 或簡易試算表,故障時秒級定位物理位置,無需現場逐顆核對。
smartctl -i /dev/sdX (smartmontools):同樣可讀取序號,且提供健康評估lsblk -o +SERIAL,MODEL:快速列表所有區塊裝置序號 (需 udev 支援)storcli /c0/eall/sall show | grep -E "Serial|Slot|State"ipmitool fru、redfish /Systems/1/Storage 可遠端查詢序號與槽位/dev/sdX 順序拔盤 → 拔錯盤導致陣列崩潰「標籤貼得好,拔盤不發愁」。這招看似笨拙,實則是無數次故障演練驗證出的最高可靠、最低成本定位法。請在下次上架/擴容時就落實執行。