• Howto: Προλάβετε το κακό με χτυπημένους σκληρούς δίσκους

    Copyright (c) 2005, 2006 cosmos

    Είχα πολυυυυυυυυυυυυύ καιρό να γράψω κανά FAQ. Έπεσε για λίγες μέρες το load average@work, οπότε έσκασα μύτη και είπα να γράψω κάτι, να μην κάθομαι. Εξάλλου αργία μήτηρ πάσης κακίας

    Καλό διάβασμα
    1. Τί είναι το SMART;
      Τεχνολογία σε όλους τους σκληρούς δίσκους (ΗDD για συντομία) των πρόσφατων χρόνων, η οποία καταγράφει εσωτερικά τιμές κάποιων χαρακτηριστικών, όπως ο αριθμός των σφαλμάτων που πραγματοποιήθηκαν, το είδος τους, η θερμοκρασία του σκληρού.
    2. Και ποιος ο λόγος καταγραφής αυτών των χαρακτηριστικών;
      Αργά ή γρήγορα όλοι οι HDD τα τινάζουν. Αναγνωρίζοντας το αναπόφευκτο, οι κατασκευαστές πραγματοποίησαν μετρήσεις/μελέτες οι οποίες να συσχετίσουν διάφορα χαρακτηριστικά ενός δίσκου με (α) την υγεία του και (β) σε περίπτωση άσχημης υγείας, να προβλεφθεί ο χρόνος που απομένει μέχρι ο ασθενής να τα τινάξει οριστικά.

      Βλέπετε, εκτός και αν ρίξουμε καφέ σε έναν δίσκο ή τον πετάξουμε από τον 4ο όροφο, ένας HDD δεν τα τινάζει από τη μια μέρα στην άλλη. Είναι σταδιακή η φθορά, αλλά όχι ορατή σε μας, ώσπου να γίνει το μεγάλο κακό...
    3. Δλδ, το SMART είναι κάποιο μέντιουμ;
      090-.........
    4. Νταξ, μου άνοιξες την περιέργεια, πώς προβλέπει;
      Με κάποια ανάλυση βρέθηκε ότι υπάρχει έντονη συσχέτιση μεταξύ των χαρακτηριστικών ενός δίσκου και της υγείας του. Για συγκεκριμένο μοντέλο δίσκου, ο κατασκευαστής του ορίζει τα χαρακτηριστικά που παρακολουθεί το SMART αλλά και κατώφλια (thresholds) (συγκεκριμένες, σταθερές τιμές δλδ) για αρκετά ένα από αυτά. Αν η τιμή ενός χαρακτηριστικού πέσει κάτω (ή ακόμα και αν αρχίσει να πλησιάσει) από το κατώφλι ... τότε θα πρέπει να αρχίσετε να ανησυχείτε!
    5. Καλά όλα αυτά, αλλά δεν κατάλαβα Χριστό... Πώς με βοηθάει το SMART βρε αδερφέ;
      Έχοντας κάποιο πρόγραμμα το οποίο μπορεί να:
      • Διαβάζει τις τιμές των χαρακτηριστικών των δίσκων και τα κατώφλια,
      • Nα βγάζει κάποιο μήνυμα αν προβλέπεται σύντομα πρόβλημα
      • Να υπολογίζει χρόνο ώσπου να τα τινάξει οριστικά ο δίσκος σας
      • Nα στείλει e-mail (μήνυμα γενικά) όταν ο δίσκος παρουσίασε ένα σημαντικό πρόβλημα
      • κ.α. ...

    6. Και ποιο πρόγραμμα τα κάνει αυτά;
      Υπάρχουν πολλά προγράμματα; Σε Linux και *BSD χρησιμοποιώ τα smartmontools τα οποία τρέχουν ως δαίμονας και τα έχω ρυθμίσει να με ειδοποιήσουν αν κάτι στραβώσει μέσω email. Με αυτήν την πληροφορία, μπορώ να παραγγείλω νέο δίσκο για να μην έχω μεγάλο downtime σαν τα τινάξει οριστικά, να πάρω άμεσα backup κτλ.
    7. Tα smartmontools κυκλοφορούν και για Windows;
      Nαι και είναι και open-source αλλά θα ζορίσει λίγο ή ρύθμισή του.
    8. -=UPDATED=- Εναλλακτικές λύσεις για Windows;
      To Google είναι φίλος σας ! Με μια σύντομη αναζήτηση βρήκα ένα αρκετά συμπαθητικό shareware πρόγραμμα, το Drive Health. O hedgehog βρήκε το HDD Health, το οποίο είναι και δωρεάν για προσωπική χρήση (όχι σε επιχείρηση δλδ).

      Το πρώτο πλεονεκτεί σε σχέση με το δεύτερη στο ότι έχει μικρότερες απαιτήσεις μνήμης και επειδή τρέχει σαν service, μπορείτε να ειδοποιηθείτε αν στραβώσει κάτι, ακόμα και αν δεν είστε logged-in. Ή ακόμα και αν δεν τρέχει η σχετική γραφική εφαρμογή του (η οποία και δε χρειάζεται σε τελική ανάλυση, τα βασικά που χρειάζεσαι σου τα παρέχει το service κομμάτι του). Από την άλλη, το HDD health φαίνεται να δουλεύει πλήρες, παρακολουθώντας όλες τις παραμέτρους smart. Αν έχετε χρήστες που δουλεύουν στο μηχάνημα σαν users ή power users δε θα παίξει όμως, πρέπει ο χρήστης που το φορτώνει να είναι admin. H επιλογή είναι δική σας !

      Θα χρειαστεί να κάνετε 2 πράγματα. Συνίσταται κατ'αρχήν να ενεργοποιήσετε την επιλογή "Enable SMART" μέσα στο BIOS.

      Μετά εγκαταστήστε το Drive Health ή το HDD Health, από το παραπάνω link. Όπως είπα, το πρώτο είναι shareware πρόγραμμα, οπότε κάποια χαρακτηριστικά δεν παρακολουθούνται, αλλά γενικά βρήκα ότι δεν επηρεάζει την αποτελεσματικότητά του σημαντικά.
    9. Πώς το χρησιμοποιώ;
      Αν δεν υπάρχει κανένα πρόβλημα στο δίσκο, δε θα δείτε τίποτα. Αν εγκαταστήσατε το Drive Health, τότε εγκαταστάθηκε και ένα service, το οποίο κάθε μία ώρα διαβάζει τις τιμές των χαρακτηριστικών των δίσκων σας, τις οποίες και καταγράφει. Για τις πρώτες δύο εβδομάδες παρακολούθησης ενός δίσκου, παρακολουθείται από το service μόνο αν έχει ξεπεραστεί κάποιο κατώφλι, οπότε θα ειδοποιηθείτε άμεσα με μήνυμα στην οθόνη, ακόμα και αν δεν είστε logged in (το τελευταίο μόνο σε XP/NT/2000)! Το ξεπέρασμα ενός κατωφλίου λέγεται TEC (Threshold Exceeded Condition - Κατάσταση υπέρβασης κατωφλίου ασφαλείας, σε ελεύθερη μετάφραση). Το μήνυμα που θα σας εμφανιστεί αν έχουμε υπερβεί ένα κατώφλι έχει την μορφή της πρώτης συνημμένης εικόνας.

      Αν εγκαταστήσατε το HDD Health, παρόμοια θα εμφανιστεί σχετική ειδοποίηση. Απλά θα πρέπει εδώ να φροντίσετε να είναι ενεργό το HDD Health, δεν έχει δικό τους service. Το μόνο που ίσως θα θέλετε να πειράξετε είναι το διάστημα μεταξύ των ερωτήσεων κατάστασης: εξ ορισμού είναι 15', καλό είναι ίσως να το κάνετε 60' (Οptions -> General -> Polling Options -> Poll Drives every...) καθώς και τον έλεγχο θερμοκρασίας να γίνεται κάθε 60''
    10. Μίλησες για το τι κάνει το πρόγραμμα τις 2 πρώτες εβδομάδες παρακολούθησης. Τι αλλάζει μετά;
      Εδώ είναι η μεγάλη "μαγκιά": έχοντας μαζέψει δεδομένα για τουλάχιστον 2 περίπου εβδομάδες λειτουργίας του δίσκου, όλα σχεδόν τα προγράμματα SMART (συμπεριλαμβανομένου και του Drive Health και του HDD Health) μπορούν να "προβλέψουν" σε πόσο χρόνο κάποιο κρίσιμο χαρακτηριστικό θα φτάσει κοντά στο κατώφλι ή πόσος χρόνος απομένει μέχρι να τον απωλέσετε πλήρως!!! Με αυτήν την πληροφόρηση έχετε χρόνο για να σώσετε τα αρχεία σας πριν συμβεί το κακό! Το μήνυμα που θα σας εμφανιστεί, μπορεί να έχει τη μορφή της δεύτερης συνημμένης εικόνας (στη συγκεκριμένη προβλέπεται ότι θα μπούμε σε κατάσταση TEC, δλδ θα ξεπεράσουμε το κατώφλι ασφαλείας, σε 3 μέρες!) που προέρχεται από το Drive Health
    11. Μπορώ να δω τα χαρακτηριστικά και με γραφικό τρόπο;
      Στο Drive Health Εκτελέστε την αντίστοιχη εφαρμογή! Στο HDD Health συμπεριλαμβάνεται.
    12. Από ότι φαίνεται, είναι περισσότερο "παθητικό" εργαλείο. Μπορεί κάποιος να το χρησιμοποιήσει πιο ενεργά;
      Aκριβώς παθητικό δεν είναι, λόγω του χαρακτηριστικού της πρόβλεψης. Καθαρά ως ενεργό μπορείτε να το χρησιμοποιήσετε σε δίσκους η οποίοι στα χαρακτηριστικά τους SMART, έχουν και την θερμοκρασία του δίσκου. Αν είναι υψηλή, μπορείτε να δοκιμάσετε διαφορετική τοποθέτηση στο κουτί του συστήματος, ώσπου να δείτε τη χαμηλότερη δυνατή θερμοκρασία. Χαμηλότερη θερμοκρασία -> μεγαλύτερος χρόνος ζωής !
    13. Γενικά, η χρήση κάποιου προγράμματος SMART επηρεάζει την απόδοση του δίσκου που παρακαλουθείται;
      Γενικά όχι. Παρέχονται πάντως άπειροι τρόποι για να παίξεις με SMART σε ένα δίσκο. Ο απλούστερος είναι το απλό διάβασμα τιμών των χαρακτηριστιστικών και των κατωφλίων. Μπορείς όμως να κάνεις και σύντομα ή offline ή οnline διαγνωστικά τεστ καθώς και άλλα. Από όσο γνωρίζω, μόνο το online test θα απασχολήσει το δίσκο, στα άλλα καθυστερείται αυτόματα από τον δίσκο η διαδικασία τεστ, ώσπου ο δίσκος να γίνει idle.





    Σχόλια/προτάσεις; Γράψτε και μη φοβάστε, δε δαγκώνω (συνήθως). :-)

    Copyright (c) 2005, 2006 cosmos
    Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is available on the Internet at http://www.gnu.org/copyleft/fdl.html#SEC1
    Αυτό το άρθρο δημοσιεύθηκε πρώτα στο forum με θέμα: How To: Προλάβετε το κακό με χτυπημένους σκληρούς δίσκους Δημοσιεύθηκε από cosmos Δείτε την αρχική δημοσίευση
    Σχόλια 149 Σχόλια
    1. Το avatar του μέλους yiapap
      yiapap -
      Well done
      Πάντα είχα απορία πως δουλεύει το SMART και πως μπορούμε να το εκμεταλευτούμε!!!
      Thanks.
    1. Το avatar του μέλους sdikr
      sdikr -
      cosmos, we missed you, μήπως αυτό σημαίνει οτι θα σε έχουμε ποιο συχνά κοντά μας!!

      well done!!
    1. Το avatar του μέλους Cosmonaut
      Cosmonaut -
      Πολύ ενημερωτικό. Προσωπικά δεν είχα ιδέα. Ευχαριστούμε
    1. Το avatar του μέλους cosmos
      cosmos -
      Πώς ξέχασα το σημαντικότερο όλων, το νέο σημείο με αρίθμηση 10. Κανείς δεν είναι άσφαλτος. Μπήκαν και κάποια screenshots και κάποιες μικροδιορθώσεις.

      ΥΓ: Νάστε καλά για τα σχόλια
    1. Το avatar του μέλους GoofyX
      GoofyX -
      Cosmos, για να βάλεις τα screenshots, χτύπησες κανά δίσκο μέχρι να πάθει κολούμπρα;

      Πολύ καλό το faq/howto πάντως, μπράβο!
    1. Το avatar του μέλους zaranero
      zaranero -
      Πολυ ενημερωτικο.Δεν ειχα ιδεα για το SMART.Ευχαριστω
    1. Το avatar του μέλους chatasos
      chatasos -
      Και το speedfan παρέχει κάποιες πληροφορίες για το SMART (μεταξύ άλλων).

      Η τελευταία (beta) version υποστηρίζει και ειδοποίηση υπό ορισμένες καταστάσεις (events)
    1. Το avatar του μέλους cosmos
      cosmos -
      Παράθεση Αρχικό μήνυμα από GoofyX Εμφάνιση μηνυμάτων
      Cosmos, για να βάλεις τα screenshots, χτύπησες κανά δίσκο μέχρι να πάθει κολούμπρα;
      Όχι, αλλά κάποια στιγμή έψαξα λίγο πως μπορώ να αποφύγω σχετική κολούμπρα

      Είχα ένα FreeBSD σύστημα που τα τίναξε. Τρέχοντας εκ των υστέρων smartctl (κομμάτι του smartmontools) είδα ότι εδώ και καιρό είχαν καταγραφεί DMA write errors (αποθηκεύονται στο δίσκο σε ειδικό log του SMART). Οπότε το δις εξαμαρτείν ...
    1. Το avatar του μέλους GoofyX
      GoofyX -
      Σωστός Cosmos.
      Να συμπληρώσω ότι για να δούμε πληροφορίες μέσω των smartmontools στο Linux, μπορούμε να δώσουμε από την κονσόλα:

      Κώδικας:
      helios ~ # smartctl -a /dev/hda
      smartctl version 5.33 [i686-pc-linux-gnu] Copyright (C) 2002-4 Bruce Allen
      Home page is http://smartmontools.sourceforge.net/
      
      === START OF INFORMATION SECTION ===
      Device Model:     WDC WD1200JB-00CRA1
      Serial Number:    WD-WMA8C4588461
      Firmware Version: 17.07W17
      User Capacity:    120,034,123,776 bytes
      Device is:        In smartctl database [for details use: -P show]
      ATA Version is:   5
      ATA Standard is:  Exact ATA specification draft version not indicated
      Local Time is:    Sat Jun 18 01:03:40 2005 EEST
      SMART support is: Available - device has SMART capability.
      SMART support is: Enabled
      
      === START OF READ SMART DATA SECTION ===
      SMART overall-health self-assessment test result: PASSED
      
      General SMART Values:
      Offline data collection status:  (0x84)	Offline data collection activity
      					was suspended by an interrupting command from host.
      					Auto Offline Data Collection: Enabled.
      Self-test execution status:      (   0)	The previous self-test routine completed
      					without error or no self-test has ever 
      					been run.
      Total time to complete Offline 
      data collection: 		 (4680) seconds.
      Offline data collection
      capabilities: 			 (0x3b) SMART execute Offline immediate.
      					Auto Offline data collection on/off support.
      					Suspend Offline collection upon new
      					command.
      					Offline surface scan supported.
      					Self-test supported.
      					Conveyance Self-test supported.
      					No Selective Self-test supported.
      SMART capabilities:            (0x0003)	Saves SMART data before entering
      					power-saving mode.
      					Supports SMART auto save timer.
      Error logging capability:        (0x01)	Error logging supported.
      					No General Purpose Logging support.
      Short self-test routine 
      recommended polling time: 	 (   2) minutes.
      Extended self-test routine
      recommended polling time: 	 (  87) minutes.
      Conveyance self-test routine
      recommended polling time: 	 (   5) minutes.
      
      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     0x000b   200   200   051    Pre-fail  Always       -       0
        3 Spin_Up_Time            0x0007   097   092   021    Pre-fail  Always       -       5933
        4 Start_Stop_Count        0x0032   099   099   040    Old_age   Always       -       1548
        5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
        7 Seek_Error_Rate         0x000b   200   200   051    Pre-fail  Always       -       0
        9 Power_On_Hours          0x0032   096   096   000    Old_age   Always       -       3204
       10 Spin_Retry_Count        0x0013   100   100   051    Pre-fail  Always       -       0
       11 Calibration_Retry_Count 0x0013   100   100   051    Pre-fail  Always       -       0
       12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       1514
      196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
      197 Current_Pending_Sector  0x0012   200   200   000    Old_age   Always       -       0
      198 Offline_Uncorrectable   0x0012   200   200   000    Old_age   Always       -       0
      199 UDMA_CRC_Error_Count    0x000a   200   253   000    Old_age   Always       -       0
      200 Multi_Zone_Error_Rate   0x0009   200   200   051    Pre-fail  Offline      -       0
      
      SMART Error Log Version: 1
      No Errors Logged
      
      SMART Self-test log structure revision number 1
      Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
      # 1  Short offline       Completed without error       00%      1011         -
      # 2  Short offline       Completed without error       00%         2         -
      # 3  Short offline       Completed without error       00%       442         -
      # 4  Short offline       Completed without error       00%       365         -
      # 5  Short offline       Completed without error       00%       309         -
      # 6  Short offline       Completed without error       00%       302         -
      # 7  Short offline       Completed without error       00%        60         -
      # 8  Short offline       Completed without error       00%      1009         -
      # 9  Short offline       Completed without error       00%       971         -
      #10  Short offline       Completed without error       00%       851         -
      
      Device does not support Selective Self Tests/Logging
      Συγγνώμη για το μεγάλο output της εντολής, αλλά είναι ένα δείγμα του τι μπορεί να δει κανείς από το smartctl.
    1. Το avatar του μέλους mrsaccess
      mrsaccess -
      Με τους SATA σε linux τι γίνεται; Υποστηρίζονται από το smartmon;
    1. Το avatar του μέλους ReverseR
      ReverseR -
      όπως πληροφορίες smart έχει και το aida32.....
    1. Το avatar του μέλους GoofyX
      GoofyX -
      Ναι, αλλά με κάποιες προϋποθέσεις. Από τη σελίδα του project (http://smartmontools.sourceforge.net/):
      Smartmontools should work correctly with SATA drives under both Linux 2.4 and 2.6 kernels, if you use the standard IDE drivers in drivers/ide. If you use the new libata drivers, it won't work correctly because libata doesn't yet support the needed ATA-passthrough ioctl() calls. Jeff Garzik, the libata developer, says that this support will be added to libata in the future. When this happens, we'll add support to smartmontools for a new SATA/libata device type '-d sata'. Typically, to force an SATA disk to run using the standard (non-libata) drivers, you must use the BIOS to select "legacy mode" for the controller. If the IDE driver doesn't support your particular SATA controller, or the controller doesn't have a legacy interface, then only libata can be used. Unless the hard disk controller on the system motherboard is Intel, VIA or nVidia, standard IDE drivers may not work
    1. Το avatar του μέλους mrsaccess
      mrsaccess -
      Thanx! Δυστυχώς το έχω σε native με libdata...
    1. Το avatar του μέλους HawkPilot
      HawkPilot -
      Να συμπληρώσω ότι συνήθως όλα τα προγράμματα που παρακολουθούν τις παραμέτρους του SMART δε δουλεύουν με εξωτερικούς σκληρούς USB (και πιθανόν FW) όπως επίσης και με δίσκους σε διατάξεις RAID κλπ.
    1. Το avatar του μέλους sdikr
      sdikr -
      Παράθεση Αρχικό μήνυμα από HawkPilot Εμφάνιση μηνυμάτων
      όπως επίσης και με δίσκους σε διατάξεις RAID κλπ.
      Σε αυτή την περίπτωση κάνεις χρήση του προγράμματος παρακουλόυθησης του raid controler
    1. Το avatar του μέλους HawkPilot
      HawkPilot -
      Παράθεση Αρχικό μήνυμα από sdikr Εμφάνιση μηνυμάτων
      Σε αυτή την περίπτωση κάνεις χρήση του προγράμματος παρακουλόυθησης του raid controler
      Έχω τη μητρική της ASUS P4C800-E Deluxe η οποία έχει πάνω της τον Intel 82801ER SATA RAID Controller. Οι οδηγοί της Intel δε διαθέτουν πρόγραμμα που να δείχνει την κατάσταση SMART της συστοιχίας RAID0 που έχω. Μήπως γνωρίζεις κάποιο πρόγραμμα άλλου κατασκευαστή που να μου δείχνει την κατάσταση του SMART?
    1. Το avatar του μέλους sdikr
      sdikr -
      Παράθεση Αρχικό μήνυμα από HawkPilot Εμφάνιση μηνυμάτων
      Έχω τη μητρική της ASUS P4C800-E Deluxe η οποία έχει πάνω της τον Intel 82801ER SATA RAID Controller. Οι οδηγοί της Intel δε διαθέτουν πρόγραμμα που να δείχνει την κατάσταση SMART της συστοιχίας RAID0 που έχω. Μήπως γνωρίζεις κάποιο πρόγραμμα άλλου κατασκευαστή που να μου δείχνει την κατάσταση του SMART?
      Και εγώ την ίδια έχω, αλλά το έχω κάνει μέσω του promise, για τον intel δεν ξέρω πως
    1. Το avatar του μέλους dsp
      dsp -
      Γνωρίζει κάποιος αν η τεχνολογία SMART υποστηρίζεται από τον controller VIA8237 (SATA)? ; Έχω το mobo A7V600 της ASUS και δεν έχω καταφέρει να κάνω το SMART να δουλέψει στους δυο SATA δίσκους μου (SEAGATE και SAMSUNG)
    1. Το avatar του μέλους GoofyX
      GoofyX -
      Μάλλον το πρόβλημα είναι στους SATA δίσκους και όχι στον controller. Έχω το MSI KT6 Delta (KT600, 8237) και το SMART στον PATA WD που έχω δουλεύει μια χαρά.
    1. Το avatar του μέλους chatasos
      chatasos -
      Παράθεση Αρχικό μήνυμα από dsp Εμφάνιση μηνυμάτων
      Γνωρίζει κάποιος αν η τεχνολογία SMART υποστηρίζεται από τον controller VIA8237 (SATA)? ; Έχω το mobo A7V600 της ASUS και δεν έχω καταφέρει να κάνω το SMART να δουλέψει στους δυο SATA δίσκους μου (SEAGATE και SAMSUNG)
      Για ρίξε μια ματιά εδώ και εδώ.
      Επίσης φρόντισε να έχεις ενεργοποιήσει το SMART στο BIOS