Newsgroup: it.comp.os.linux.sys
Titolo: Data scrubbing con mdadm e dischi agonizzanti

Il sistema di rilevamento della rottura di un disco da parte di mdadm non 
mi ha mai convinto. Nel senso, che se stacchi il cavo o tagli il disco 
con il flessibile se ne accorge, ma quando hai problemi con settori 
danneggiati, sembra non funzionare.
A questo proposito, ho predisposto su una macchina di test, un raid 1 con 
due dischi ide, di cui uno con settori danneggiati.
Ho abilitato l'invio di messaggi via mail ecc.
/sbin/mdadm --monitor --pid-file /var/run/mdadm/monitor.pid --daemonise --
scan --syslog
Il raid ha cominciato a sincronizzarsi, poi ad un certo punto su /var/log/
messages hanno cominciato i messaggi:
Nov 16 12:50:46 sanciopancio kernel: [ 7698.688521] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:50:46 sanciopancio kernel: [ 7698.688521] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290751
Nov 16 12:50:46 sanciopancio kernel: [ 7698.688521] ide: failed opcode 
was: unknown
Nov 16 12:50:49 sanciopancio kernel: [ 7701.705086] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:50:49 sanciopancio kernel: [ 7701.705119] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290759
Nov 16 12:50:49 sanciopancio kernel: [ 7701.705166] ide: failed opcode 
was: unknown
Nov 16 12:50:52 sanciopancio kernel: [ 7704.702811] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:50:52 sanciopancio kernel: [ 7704.702845] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290767
Nov 16 12:50:52 sanciopancio kernel: [ 7704.702892] ide: failed opcode 
was: unknown
...
Nov 16 12:52:19 sanciopancio kernel: [ 7791.821629] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:52:19 sanciopancio kernel: [ 7791.821662] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80291711, sector=80291519
Nov 16 12:52:19 sanciopancio kernel: [ 7791.821708] ide: failed opcode 
was: unknown
Nov 16 12:52:26 sanciopancio kernel: [ 7798.558352] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:52:26 sanciopancio kernel: [ 7798.558386] hdd: dma_intr: 
error=0x01 { AddrMarkNotFound }, LBAsect=80291713, sector=80291527
Nov 16 12:52:26 sanciopancio kernel: [ 7798.558432] ide: failed opcode 
was: unknown
Nov 16 12:52:29 sanciopancio kernel: [ 7801.539506] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 16 12:52:29 sanciopancio kernel: [ 7801.539541] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80291713, sector=80291527
Nov 16 12:52:29 sanciopancio kernel: [ 7801.539587] ide: failed opcode 
was: unknown
e così via per un bel po'. Facendo un cat /proc/mdstat e un mdadm /dev/
mdx --detail, il raid risulta integro.
Cercando, ho trovato che si può far fare un controllo "data scrubbing" al 
raid periodicamente per cercare settori balordi con:
echo check >> /sys/block/mdX/md/sync_action 
E' partito il controllo, anche qui mi sono trovato in messages i messaggi 
qui sotto, ma ancora il raid risulta in buono stato.
Purtroppo non ho un disco sata con settori danneggiati da fare ulteriori 
prove, ma solo ide.
A voi funziona? Come vi trovate con mdadm?
Nov 17 23:54:22 sanciopancio kernel: [133915.279011] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:22 sanciopancio kernel: [133915.279046] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290751
Nov 17 23:54:22 sanciopancio kernel: [133915.279092] ide: failed opcode 
was: unknown
Nov 17 23:54:25 sanciopancio kernel: [133918.293441] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:25 sanciopancio kernel: [133918.293475] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290759
Nov 17 23:54:25 sanciopancio kernel: [133918.293522] ide: failed opcode 
was: unknown
Nov 17 23:54:28 sanciopancio kernel: [133921.274570] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:28 sanciopancio kernel: [133921.274605] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290767
Nov 17 23:54:28 sanciopancio kernel: [133921.274651] ide: failed opcode 
was: unknown
Nov 17 23:54:31 sanciopancio kernel: [133924.289000] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:31 sanciopancio kernel: [133924.289035] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290775
Nov 17 23:54:31 sanciopancio kernel: [133924.289081] ide: failed opcode 
was: unknown
Nov 17 23:54:34 sanciopancio kernel: [133927.268561] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:34 sanciopancio kernel: [133927.268561] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290783
Nov 17 23:54:34 sanciopancio kernel: [133927.268561] ide: failed opcode 
was: unknown
Nov 17 23:54:37 sanciopancio kernel: [133930.284572] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:37 sanciopancio kernel: [133930.284606] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290791
Nov 17 23:54:37 sanciopancio kernel: [133930.284652] ide: failed opcode 
was: unknown
Nov 17 23:54:40 sanciopancio kernel: [133933.265711] hdd: dma_intr: 
status=0x51 { DriveReady SeekComplete Error }
Nov 17 23:54:40 sanciopancio kernel: [133933.265744] hdd: dma_intr: 
error=0x40 { UncorrectableError }, LBAsect=80290994, sector=80290799
Nov 17 23:54:40 sanciopancio kernel: [133933.265791] ide: failed opcode 
was: unknown

 status=0x51 { DriveReady SeekComplete Error }
Sono a livello piu' basso e non vengono 'catturati'.
smartd ed una quotidiana ispezione dei log sono sempre consigliati.
Davide

 smartd ed una quotidiana ispezione dei log sono sempre consigliati.
Per smartd, ho abilitato in smart.conf
/dev/hdc -m 
pi...@pippo.it
 -M test
/dev/hdd -m 
pi...@pippo.it
 -M test
/dev/hdd -s L/../../4/03 -m 
pi...@pippo.it
Ma non ho trovato n� mail n� messaggi sul log.
smartctl -l error /dev/hdd
invece ritorna gli errori.
L'ispezione dei log quotidiana � praticamente impossibile. E' continua
emergenza per un motivo o per l'altro, ma questo lo sai meglio di me.

Mandi! Sam
  In chel dì si favelave...
S> Il sistema di rilevamento della rottura di un disco da parte di mdadm non 
S> mi ha mai convinto. Nel senso, che se stacchi il cavo o tagli il disco 
S> con il flessibile se ne accorge, ma quando hai problemi con settori 
S> danneggiati, sembra non funzionare.
...e che secondo me gli errori del disco sono stati risolti/rilocati,
ti posso assicurare che se realmente la scrittura sulla partizione è
fallita, questa viene marcata fault.
E il fatto che tu abbia fatto un check e torna ok avvalora la mia tesi,
il disco sta morendo ma non è morto.
Che poi in termini prestazionali sia una mina vagante...
-- 
  Le persone ti pesano? Non metterle sulle tue spalle.
  Portale nel cuore.				(Don Helder Camara)

 emergenza per un motivo o per l'altro, ma questo lo sai meglio di me.
Perchè non ti abiliti logwatch? Se lo configuri a puntino ti arrivano in 
mailbox solo gli errori veramente critici.
-- 
LORENZO MAINARDI
Email: 
lorm...@gmail.com
Linux Registered User: 461615
Key Fingerprint: AC63 5C15 562F 71AF C853  4D4A C03F 75EB 52F4 A0D0

 Che poi in termini prestazionali sia una mina vagante...
Più che per le prestazioni per i dati. :-)
Intanto grazie a tutti.

 smartd ed una quotidiana ispezione dei log sono sempre consigliati.
per quello che serve lo stato SMART...
Ciao Jack