Как использовать smartctl с одним рейд-контроллером
Я использую рейд-контроллер PERC H730 Mini:
# lspci -d::0104 -k
02:00.0 RAID bus controller: Broadcom / LSI MegaRAID SAS-3 3108 [Invader] (rev 02)
Subsystem: Dell PERC H730 Mini
Kernel driver in use: megaraid_sas
Kernel modules: megaraid_sas
и вот диски, подключенные к серверу:
# lsscsi -s
[0:2:0:0] disk DELL PERC H730 Mini 4.28 /dev/sda 499GB
[0:2:1:0] disk DELL PERC H730 Mini 4.28 /dev/sdb 8.00TB
[0:2:2:0] disk DELL PERC H730 Mini 4.28 /dev/sdc 8.00TB
[0:2:3:0] disk DELL PERC H730 Mini 4.28 /dev/sdd 8.00TB
[0:2:4:0] disk DELL PERC H730 Mini 4.28 /dev/sde 8.00TB
[0:2:5:0] disk DELL PERC H730 Mini 4.28 /dev/sdf 8.00TB
[0:2:6:0] disk DELL PERC H730 Mini 4.28 /dev/sdg 8.00TB
[0:2:7:0] disk DELL PERC H730 Mini 4.28 /dev/sdh 8.00TB
[0:2:8:0] disk DELL PERC H730 Mini 4.28 /dev/sdi 8.00TB
[0:2:9:0] disk DELL PERC H730 Mini 4.28 /dev/sdj 8.00TB
[0:2:10:0] disk DELL PERC H730 Mini 4.28 /dev/sdk 8.00TB
[0:2:11:0] disk DELL PERC H730 Mini 4.28 /dev/sdl 8.00TB
[0:2:12:0] disk DELL PERC H730 Mini 4.28 /dev/sdp 8.00TB
[0:2:13:0] disk DELL PERC H730 Mini 4.28 /dev/sdm 8.00TB
[0:2:14:0] disk DELL PERC H730 Mini 4.28 /dev/sdn 8.00TB
[0:2:15:0] disk DELL PERC H730 Mini 4.28 /dev/sdq 8.00TB
[0:2:16:0] disk DELL PERC H730 Mini 4.28 /dev/sdo 399GB
Я думал, что имя устройства былоdenoting which disk on the controller is monitored.
Но тогда при использовании одного RAID-контроллера также потребуетсяThe non-negative integer N (in the range of 0 to 127 inclusive) denotes which disk on the controller is monitored.
и дает совершенно другой результат, когда значение отличается:
# smartctl -i /dev/sdq -d megaraid,0 -j | jq -r .model_name,.user_capacity.bytes
INTEL SSDSC2BX400G4R
400088457216
# smartctl -i /dev/sdq -d megaraid,1 -j | jq -r .model_name,.user_capacity.bytes
SEAGATE ST8000NM0075
8001563222016
Кажется, используяN=0
возвращает неправильный диск, поскольку емкость не соответствует емкостиlsscsi -s
выход.
Как выбрать правильныйN
значение сsmartctl
?
1 ответ
Это нормально. Ваши результаты никогда не будут соответствовать выходным, поскольку устройства SCSI, которые вы видите в
Фактические физические диски не видны операционной системе — они спрятаны «за» RAID-контроллером (это буквально работа контроллера), поэтому вам нужен
(Если бы контроллер работал как обычный адаптер HBA и напрямую открывал диски, вам не требовался бы какой-либо специальный синтаксис для доступа к ним, вы бы просто использовали их имена /dev; но тогда контроллер не мог бы реализовать RAID без вмешательства.)