quais são as indicações do smartctl que mostram status ruim do disco

1

quando executamos o smartctl -a no disco nós temos um monte de saída

qual é o status final que indica que o disco está bom ou ruim?

smartctl -a /dev/sdb
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.10.0-327.el7.x86_64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Vendor:               SEAGATE
Product:              ST2000NX0433
Revision:             NS02
User Capacity:        2,000,398,934,016 bytes [2.00 TB]
Logical block size:   512 bytes
Formatted with type 2 protection
Logical block provisioning type unreported, LBPME=0, LBPRZ=0
Rotation Rate:        7200 rpm
Form Factor:          2.5 inches
Logical Unit id:      0x5000c5009eaededf
Serial number:        W46064KW
Device type:          disk
Transport protocol:   SAS
Local Time is:        Thu Nov 22 10:38:35 2018 UTC
SMART support is:     Available - device has SMART capability.
SMART support is:     Enabled
Temperature Warning:  Disabled or Not Supported

=== START OF READ SMART DATA SECTION ===
SMART Health Status: OK

Current Drive Temperature:     23 C
Drive Trip Temperature:        60 C

Manufactured in week 06 of year 2017
Specified cycle count over device lifetime:  10000
Accumulated start-stop cycles:  49
Specified load-unload count over device lifetime:  300000
Accumulated load-unload cycles:  550
Elements in grown defect list: 0

Vendor (Seagate) cache information
  Blocks sent to initiator = 1986603075
  Blocks received from initiator = 2165723528
  Blocks read from cache and sent to initiator = 1298028358
  Number of read and write commands whose size <= segment size = 201615101
  Number of read and write commands whose size > segment size = 0

Vendor (Seagate/Hitachi) factory information
  number of hours powered up = 12335.38
  number of minutes until next internal SMART test = 26

Error counter log:
           Errors Corrected by           Total   Correction     Gigabytes    Total
               ECC          rereads/    errors   algorithm      processed    uncorrected
           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors
read:   26648753        0         0  26648753          0      83475.092           0
write:         0        0         2         2          2     135145.593           0
verify: 3914513941        0         0  3914513941          0     109628.879           0

Non-medium error count:       14

SMART Self-test log
Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]
     Description                              number   (hours)
# 1  Background short  Completed                  96       2                 - [-   -    -]
Long (extended) Self Test duration: 20400 seconds [340.0 minutes]

dose o seguinte é boa indicação?

smartctl -a /dev/sda | grep  Completed

ou

 smartctl -a /dev/sda

echo $?
    
por yael 22.11.2018 / 11:42

1 resposta

3

O estado de integridade geral é a parte da saída de smartctl -a que aborda a questão global

Is the drive good or bad?

melhor. Na sua saída citada, esse status é relatado na linha

SMART Health Status: OK

que também pode ser obtido separadamente (com algum cabeçalho) usando a opção -H de smartctl , em vez de -a .

Note que esta avaliação não vem do smartmontools, mas da própria drive (veja a página man smartctl (8) on -H option) e que o seu significado é bastante grosseiro: Veja esta citação de Wikipedia :

The S.M.A.R.T. status does not necessarily indicate the drive's past or present reliability. If a drive has already failed catastrophically, the S.M.A.R.T. status may be inaccessible. Alternatively, if a drive has experienced problems in the past, but the sensors no longer detect such problems, the S.M.A.R.T. status may, depending on the manufacturer's programming, suggest that the drive is now sound.

e (mesma fonte):

More detail on the health of the drive may be obtained by examining the S.M.A.R.T. Attributes.

O status geral de integridade é refletido pelo bit 3 (contando a partir de 0) do status de saída de smartctl , que está configurado no disco com falha. Consulte a seção "VALORES DE RETORNO" na página man smartctl (8) .

Logo após a execução de smartctl , esse bit pode ser avaliado pela expressão (Bash) $(($? & 8)) like in

if [ $(($? & 8)) -eq 0 ]; then
   echo Good.
else
   echo Bad.
fi

Por favor, note que se o bit 3 estiver definido, a expressão $(($? & 8)) será 8, não 1.

Um status de saída zero de smartctl é suficiente para um disco saudável (até onde o SMART pode julgar), mas como condição isso pode ser strong: O bit 6 desse status reflete a existência de registros de erro no logs de dispositivos, que também podem se referir a erros de comunicação entre a unidade e o host (erros de leitura de DMA). Eu tenho várias unidades cujos logs mostram esses erros em seus registros desde suas primeiras horas de vida, mas eu usei essas unidades diariamente sem problemas por anos. Portanto, esse critério pode fornecer muitos falsos positivos. Claro que isso é discutível, já que houve erros no final das contas.

De qualquer forma, se você quiser considerar todos os bits, menos aquele (bit 6), poderá usar essa expressão em seu teste: $(($? & 191)) .

Por outro lado, o critério

smartctl -a /dev/sda | grep Completed

que você mencionou não diz nada sobre a integridade da unidade, pois apenas informa que um autoteste foi concluído, sem levar em conta o resultado.

    
por 25.11.2018 / 06:58