LSI陣列卡檢視SSD壽命
1 使用centos 6.2 等linux系統live cd引導裝置。並安裝LSI megacli命令包。
2 使用 MegaCli 來取得 RAID 卡下硬碟的資訊:
然後使用下面的命令:
1
/opt/MegaRAID/MegaCli/MegaCli64 -PDList -aALL
這樣可以查出 RAID 卡下面的內容.會顯示如下:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Enclosure Device ID: 252
Slot Number: 7
Device Id: 28
Sequence Number: 2
Media Error Count: 0
Other Error Count: 1
Predictive Failure Count: 0
Last Predictive Failure Event Seq Number: 0
PD Type: SATA
Raw Size: 119.242 GB [0xee7c2b0 Sectors]
Non Coerced Size: 118.742 GB [0xed7c2b0 Sectors]
Coerced Size: 118.277 GB [0xec8e000 Sectors]
Firmware state: Online, Spun Up
SAS Address(0): 0x1e394d57aa996b80
Connected Port Number: 7(path0)
Inquiry Data: 0000000011070303A99EC300-CTFDDAC128MAG 0007
FDE Capable: Not Capable
FDE Enable: Disable
Secured: Unsecured
Locked: Unlocked
Needs EKM Attention: No
Foreign State: None
Device Speed: 6.0Gb/s
Link
Media Type: Solid State Device
注意上面幾個地方,上面會輸出很多這樣的資訊,只有 Media Type: Solid State Device .表示這是 SSD .其中 Device Id: 28 這個需要記下來.這個過一會使用 smartctl 查詢時會需要.我們可以見到上面都顯示了硬碟的型號:Inquiry Data:0000000011070303A99EC300-CTFDDAC128MAG .另外還有一個標誌告訴你這個 SSD 是不是正常的 Firmwarestate: Online,Spun Up 這個選項,所以如果你做 SSD 的監控報警,直接監控這個引數基本就行了.
接下來使用 smartctl 來取得 SSD 硬碟的詳細資訊
smartctl -a -d megaraid,28 /dev/sda1 -s on
這時,可能會顯示如下的資訊:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate 0x002f 100 100 000 Pre-fail Always - 0
5 Reallocated_Sector_Ct 0x0033 100 100 000 Pre-fail Always - 0
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 5572
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 3
170 Grown_Failing_Block_Ct 0x0033 100 100 000 Pre-fail Always - 0
171 Program_Fail_Count 0x0032 100 100 000 Old_age Always - 0
172 Erase_Fail_Count 0x0032 100 100 000 Old_age Always - 0
173 Wear_Levelling_Count 0x0033 090 090 000 Pre-fail Always - 536
174 Unexpect_Power_Loss_Ct 0x0032 100 100 000 Old_age Always - 1
181 Non4k_Aligned_Access 0x0022 100 100 000 Old_age Always - 0 0 0
183 SATA_Iface_Downshift 0x0032 100 100 000 Old_age Always - 0
184 End-to-End_Error 0x0033 100 100 000 Pre-fail Always - 0
187 Reported_Uncorrect 0x0032 100 100 000 Old_age Always - 0
188 Command_Timeout 0x0032 100 100 000 Old_age Always - 0
189 Factory_Bad_Block_Ct 0x000e 100 100 000 Old_age Always - 250
195 Hardware_ECC_Recovered 0x003a 100 100 000 Old_age Always - 0
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0032 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0030 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x0036 100 100 000 Old_age Always - 0
202 Perc_Rated_Life_Used 0x0018 090 090 000 Old_age Offline - 10
206 Write_Error_Rate 0x000e 100 100 000 Old_age Always - 0
SSD 是否健康的引數分析:
其實我們要看 SSD
是否健康,主要是要通過
Wear Leveling Count(顆粒平均擦寫次數)這個引數和Grown
Failling Block Ct這個引數.
注意看下面二行:
1
2
170 Grown_Failing_Block_Ct 0x0033 100 100 000 Pre-fail Always - 0
173 Wear_Levelling_Count 0x0033 090 090 000 Pre-fail Always - 536
上面二個引數是關鍵:
-
Wear Levelling Count(顆粒平均擦寫次數): 先講這個引數.更加重要.先宣告這個硬碟是使用了一年的 SSD 硬碟.圖中顯示的資料為536,即這塊128G的硬碟的全盤寫入/擦除(P/E)數為536 次,顯示還有 90% 的壽命.所以大約這個硬碟使用的快閃記憶體顆粒的壽命為 5000 多次的樣子.536 約為 5000 的 10% ,所以此項值為90(CA).
-
Grown Failing Block Count(使用中新增壞塊數): 此項代表 SSD 的快閃記憶體顆粒在使用時出現的壞塊(類似於HDD的壞道)數量,此處資料為 0 即尚未有出現壞塊,若你命不好.新購買回來 SSD 在正常使用時,很短的時間內這個資料產生較大變化,那代表盤可能有問題。
MegaCli常用引數組合介紹:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
MegaCli -cfgdsply -aALL | grep “Error” 【正常都是0】
MegaCli -LDGetProp -Cache -LALL -a0 【寫策略】
MegaCli -cfgdsply -aALL | grep “Memory” 【記憶體大小】
MegaCli -LDInfo -Lall -aALL 【查RAID級別】
MegaCli -AdpAllInfo -aALL 【查RAID卡資訊】
MegaCli -PDList -aALL 【檢視硬碟資訊】
MegaCli -AdpBbuCmd -aAll 【檢視電池資訊】
MegaCli -FwTermLog -Dsply -aALL 【檢視RAID卡日誌】
MegaCli -adpCount 【顯示介面卡個數】
MegaCli -AdpGetTime –aALL 【顯示介面卡時間】
MegaCli -AdpAllInfo -aAll 【顯示所有介面卡資訊】
MegaCli -LDInfo -LALL -aAll 【顯示所有邏輯磁碟組資訊】
MegaCli -PDList -aAll 【顯示所有的物理資訊】
MegaCli -AdpBbuCmd -GetBb