Re: Τί κάνω όταν υπάρχουν errors στο smartctl;

Nick Demou ndemou at gmail.com
Sat Mar 10 00:37:04 EET 2012


2012/3/9 Nick Demou <ndemou at gmail.com>:
> 2012/3/9 Antonis Christofides <anthony at itia.ntua.gr>
>> 2) Όταν ο δίσκος βγάνει UNC σε ένα σέκτορα, τότε ορθώς υποθέτω ότι αυτό
>> θα αναφερθεί στο soft RAID5 του Linux, το οποίο θα διορθώσει την
>> κατάσταση (δηλαδή θα ξαναγράψει τα δεδομένα στον ελαττωματικό σέκτορα);
>
> <<<
> Normally, RAID passively detects bad blocks. If a read error occurs,
> the data is reconstructed from the rest of the array, and the bad
> block is rewritten. If the block can not be rewritten, the defective
> disk is kicked out of the active array.
> Once the defective drive is replaced, reconstruction will cause all
> blocks of the remaining drives to be read. If this process runs across
> a previously undetected bad block on the remaining drives, another
> drive will be marked as failed, making RAID5 unusable. The larger the
> disks, the higher the odds that passive bad block detection will be
> inadaquate. Therefore, with today's large disks it is important to
> actively perform data scrubbing on your array.
>>>>
> -- http://en.gentoo-wiki.com/wiki/RAID/Software#Data_Scrubbing

ουπς! ξέχασα να αναφέρω κάτι σημαντικό: είναι πολύ πιθανό ένας
σύγχρονος δίσκος να μην αναφέρει στο λειτουργικό ότι είχε read error
αν καταφέρει εν τέλη να διαβάσει ένα sector μετά από κάποια retries
(και επίσης δεν θα το αναφέρει αν είχε write error). Τυπικά αν αυτό
συμβεί ο δίσκος θα κάνει realocate τα δεδομένα σε έναν spare sector
και θα πάψει να γράφει/διαβάζει από τον προβληματικό sector ΑΛΛΑ το
λειτουργικό (και συνεπώς και το sw raid) ποτέ δεν θα το μάθει (κι εσύ
το μόνο που ισως να προσέξεις αν τα λάθη είναι πολλά είναι ότι το PC
σου θα σέρνεται). Λογικά βέβαια τέτοια errors καταγράφονται στα SMART
data (αν θημάμαι σωστά στο attribute reallocated sector count) αλλά
δεν ξέρω κάποιο tool της προκοπής που να ελέγχει αυτόματα τα SMART
data και π.χ. να σε ενημερώνει αν δει ξαφνική άυξηση των realocations
(και από ότι φαίνεται ο κάθε κατασκευαστής βάζει ότι του κατέβει στα
SMART οπότε δεν είναι εύκολο να υπάρξει ένα tool της προκοπής).
Προσωπικά στα δικά μου PCs απλά ελέγχω με ένα cron job κάθε λίγα λεπτά
τα logs με grep -i " ata[0-9].* error\|end_request: I/O error" και αν
πιάσω αποτέλεσμα κάνω μερικά beeps, μετά eject το CD, μετά στέλνω
email και μετά από λίγα sec shutdown -h now :)



More information about the Linux-greek-users mailing list