31Jul

Μπορούν τα δεδομένα σε σκληρούς δίσκους να υποβαθμιστούν χωρίς μια προειδοποίηση για τη ζημιά;

Όλοι ανησυχούμε για τη διατήρηση των δεδομένων και των αρχείων μας ασφαλή και άθικτα, αλλά είναι δυνατόν τα δεδομένα να καταστραφούν και να έχουν πρόσβαση σε έναν χρήστη χωρίς καμία ειδοποίηση ή προειδοποίηση οποιασδήποτε φύσης σχετικά με το πρόβλημα;Η σημερινή δημοσίευση του χρήστη SuperUser Q & A έχει την απάντηση σε μια ερώτηση ανησυχούμενου για τον αναγνώστη.

Η σημερινή ερώτηση &Η συνάντηση απαντήσεων έρχεται με την ευγένεια του SuperUser - μια υποδιαίρεση του Stack Exchange, μια κοινότητα-καθοδηγούμενη ομαδοποίηση Q & A ιστοσελίδες.

Φωτογραφία ευγένεια γενικεύοντας( Flickr).

Η ερώτηση

SuperUser αναγνώστης topo morto θέλει να μάθει εάν τα δεδομένα σε σκληρούς δίσκους μπορούν να υποβαθμιστούν και να αποκτήσουν πρόσβαση χωρίς προειδοποίηση σχετικά με τη ζημιά:

Είναι πιθανό η φυσική υποβάθμιση ενός σκληρού δίσκου να μπορούσε να προκαλέσει την "αναστροφή" των δυαδικών ψηφίων στα περιεχόμενα ενός αρχείουχωρίς το λειτουργικό σύστημα να παρατηρεί την αλλαγή και να ειδοποιεί τον χρήστη για την ανάγνωση του αρχείου;Για παράδειγμα, θα μπορούσε ένα p( binary 01110000) σε ένα αρχείο κειμένου ASCII να αλλάξει σε ένα "q"( δυαδικό 01110001), τότε όταν ένας χρήστης ανοίγει το αρχείο, βλέπουν "q" χωρίς να γνωρίζουν ότι έχει σημειωθεί αποτυχία;

Ενδιαφέρομαι για απαντήσεις σχετικά με το FAT, το NTFS ή το ReFS( αν κάνει τη διαφορά).Θέλω να μάθω αν τα λειτουργικά συστήματα προστατεύουν τους χρήστες από αυτό, ή αν πρέπει να ελέγξουμε τα δεδομένα μας για τις διαφορές μεταξύ των αντιγράφων με την πάροδο του χρόνου.

Μπορούν τα δεδομένα των σκληρών δίσκων να υποβαθμιστούν και να έχουν πρόσβαση χωρίς προειδοποίηση για τη ζημιά;

Η απάντηση

Συνεργάτης SuperUser Guntram Blohm έχει την απάντηση για εμάς:

Ναι, υπάρχει κάτι που ονομάζεται bit σήψη.Αλλά όχι, δεν θα επηρεάσει τον χρήστη απαρατήρητο.

Όταν ένας σκληρός δίσκος γράφει έναν τομέα στις πιατέλες, δεν γράφει μόνο τα bits με τον ίδιο τρόπο που αποθηκεύονται στη μνήμη RAM, χρησιμοποιεί μια κωδικοποίηση για να βεβαιωθεί ότι δεν υπάρχουν αλληλουχίες του ίδιου bit που είναι πολύ μεγάλες.Προσθέτει επίσης κωδικούς ECC που του επιτρέπουν να επιδιορθώνει σφάλματα που επηρεάζουν μερικά bit και εντοπίζουν σφάλματα που επηρεάζουν περισσότερα από μερικά bit.

Όταν ο σκληρός δίσκος διαβάζει τον τομέα, ελέγχει αυτούς τους κωδικούς ECC και επισκευάζει τα δεδομένα εάν είναι απαραίτητο( και αν είναι δυνατόν).Αυτό που συμβαίνει στη συνέχεια εξαρτάται από τις περιστάσεις και το υλικολογισμικό του σκληρού δίσκου, το οποίο επηρεάζεται από τον χαρακτηρισμό του δίσκου.

  • Εάν ένας τομέας μπορεί να διαβαστεί και δεν έχει προβλήματα με κωδικό ECC, τότε μεταβιβάζεται στο λειτουργικό σύστημα.
  • Εάν ένας τομέας μπορεί να επιδιορθωθεί εύκολα, η επισκευασμένη έκδοση μπορεί να εγγραφεί στο δίσκο, να διαβαστεί και στη συνέχεια να επαληθευτεί εάν το σφάλμα ήταν τυχαίο( π.χ. κοσμικές ακτίνες κλπ.) Ή εάν υπάρχει συστηματικό σφάλμα με τα μέσα.
  • Εάν ο σκληρός δίσκος διαπιστώσει ότι υπάρχει κάποιο σφάλμα με το μέσο, ​​ανακατανέμει τον τομέα.
  • Εάν ένας τομέας δεν μπορεί να διαβαστεί ούτε να διορθωθεί μετά από μερικές προσπάθειες ανάγνωσης( σε σκληρό δίσκο που ονομάζεται σκληρός δίσκος RAID), τότε ο σκληρός δίσκος θα εγκαταλείψει, θα ανακατανείμει τον τομέα και θα πει στον ελεγκτή ότι υπήρχεπρόβλημα.Στηρίζεται στον ελεγκτή RAID για να ανασυγκροτήσει τον τομέα από τα άλλα μέλη του RAID και να το γράψει πίσω στον αποτυχημένο σκληρό δίσκο, ο οποίος στη συνέχεια το αποθηκεύει στον ανακατασκευασμένο τομέα( ο οποίος ελπίζουμε ότι δεν έχει πρόβλημα).
  • Εάν ένας τομέας δεν μπορεί να διαβαστεί ή να διορθωθεί σε έναν σκληρό δίσκο της επιφάνειας εργασίας, τότε ο σκληρός δίσκος θα κάνει περισσότερες προσπάθειες για να το διαβάσει.Ανάλογα με την ποιότητα του σκληρού δίσκου, αυτό μπορεί να περιλαμβάνει την επανατοποθέτηση του κεφαλιού, τον έλεγχο για να δείτε αν υπάρχουν κάποια κομμάτια που αναστρέφονται όταν διαβάζονται επανειλημμένα, ελέγχοντας ποια κομμάτια είναι τα πιο αδύναμα και μερικά άλλα πράγματα.Εάν κάποια από αυτές τις προσπάθειες επιτύχει, ο σκληρός δίσκος θα ανακατανείμει τον τομέα και θα γράψει πίσω τα επισκευασμένα δεδομένα.

Αυτή είναι μια από τις κύριες διαφορές μεταξύ σκληρών δίσκων που πωλούνται ως σκληροί δίσκοι "desktop", "NAS / RAID" ή "video surveillance".Ένας σκληρός δίσκος RAID μπορεί απλά να εγκαταλείψει γρήγορα και να κάνει τον ελεγκτή να επιδιορθώσει τον τομέα για να αποφύγει την λανθάνουσα κατάσταση από την πλευρά του χρήστη.Ένας σκληρός δίσκος επιφάνειας εργασίας θα συνεχίσει να προσπαθεί ξανά και ξανά επειδή ο χρήστης περιμένει λίγα δευτερόλεπτα είναι πιθανώς καλύτερος από το να λέει ότι τα δεδομένα χάνονται.Και ένας σκληρός δίσκος βίντεο εκτιμά σταθερά ποσοστά δεδομένων περισσότερο από την ανάκτηση σφαλμάτων, καθώς το κατεστραμμένο πλαίσιο συνήθως δεν παρατηρείται.

Εν πάση περιπτώσει, ο σκληρός δίσκος θα ξέρει αν υπήρχε κάψιμο bit, συνήθως θα ανακάμψει από αυτό και αν δεν μπορεί, θα πει στον ελεγκτή ο οποίος με τη σειρά του θα πει στον οδηγό που θα πει στη συνέχεια το λειτουργικό σύστημα.Στη συνέχεια, εναπόκειται στο λειτουργικό σύστημα να παρουσιάσει το σφάλμα στο χρήστη και να ενεργήσει σε αυτό.Αυτός είναι ο λόγος για τον οποίο το cybernard λέει:

  • Δεν έχω βιώσει ποτέ ένα λάθος μεμονωμένων δυαδικών ψηφίων, αλλά έχω δει πολλούς σκληρούς δίσκους όπου αποτυγχάνουν ολόκληροι τομείς.

Ο σκληρός δίσκος θα ξέρει αν υπάρχει κάποιο πρόβλημα με έναν τομέα, αλλά δεν θα ξέρει ποια bits έχουν αποτύχει.Ένα ενιαίο κομμάτι που έχει αποτύχει θα είναι πάντα πιασμένο από το ECC.

Σημειώστε ότι τα chkdsk και τα συστήματα αρχείων που αυτομάτως επισκευάζονται δεν αντιμετωπίζουν την επισκευή δεδομένων μέσα στα αρχεία.Αυτά στοχεύουν στη διαφθορά μέσα στη δομή του ίδιου του συστήματος αρχείων, όπως μια διαφορά στο μέγεθος του αρχείου μεταξύ της καταχώρησης καταλόγου και του αριθμού των κατανεμημένων μπλοκ.Η λειτουργία αυτοθεραπείας του NTFS θα ανιχνεύσει τις δομικές βλάβες και θα αποτρέψει την περαιτέρω επίδραση των δεδομένων σας, αλλά δεν θα επιδιορθώσει οποιαδήποτε δεδομένα έχουν ήδη υποστεί ζημιά.

Υπάρχουν, βεβαίως, και άλλοι λόγοι για τους οποίους τα δεδομένα ενδέχεται να καταστραφούν.Για παράδειγμα, η κακή μνήμη RAM σε ελεγκτή μπορεί να μεταβάλει τα δεδομένα πριν ακόμη αποσταλεί στον σκληρό δίσκο.Σε αυτή την περίπτωση, κανένας μηχανισμός στον σκληρό δίσκο δεν θα ανιχνεύσει ή να επιδιορθώσει τα δεδομένα και αυτό μπορεί να είναι ένας λόγος για τον οποίο η δομή ενός συστήματος αρχείων έχει καταστραφεί.Άλλοι λόγοι περιλαμβάνουν τα σφάλματα λογισμικού, τα σφάλματα κατά τη συγγραφή στον σκληρό δίσκο( αν και αυτό αντιμετωπίζεται από την αρχειοθέτηση του συστήματος αρχείων) ή τα κακά προγράμματα οδήγησης αρχείων( ο οδηγός NTFS στο Linux είναι προεπιλεγμένος μόνο για ανάγνωση για μεγάλο χρονικό διάστημα,δεν τεκμηριώνεται, και οι προγραμματιστές δεν εμπιστεύονται τον δικό τους κώδικα).

  • Είχα αυτό το σενάριο μια φορά που μια εφαρμογή θα σώσει όλα τα αρχεία της σε δύο διαφορετικούς διακομιστές σε δύο διαφορετικά κέντρα δεδομένων, προκειμένου να διατηρηθεί ένα αντίγραφο εργασίας των δεδομένων που είναι διαθέσιμα υπό οποιεσδήποτε συνθήκες.Μετά από μερικούς μήνες, παρατηρήσαμε ότι περίπου το 0,1 τοις εκατό όλων των αντιγραμμένων αρχείων δεν ταιριάζουν με το άθροισμα ελέγχου MD5 που η εφαρμογή αποθηκεύτηκε στη βάση δεδομένων της.Αποδείχθηκε ότι είναι ένα ελαττωματικό καλώδιο ινών μεταξύ του διακομιστή και του SAN.

Αυτοί οι άλλοι λόγοι είναι γιατί ορισμένα συστήματα αρχείων, όπως το ZFS, διατηρούν πρόσθετες πληροφορίες αθροίσματος ελέγχου για να ανιχνεύσουν σφάλματα.Έχουν σχεδιαστεί για να σας προστατεύουν από πολλά άλλα πράγματα που μπορούν να πάνε στραβά από απλά κάψιμο λίγο.

Έχετε κάτι να προσθέσετε στην εξήγηση;Απενεργοποιήστε τα σχόλια.Θέλετε να διαβάσετε περισσότερες απαντήσεις από άλλους χρήστες τεχνολογίας Stack Exchange;Δείτε το πλήρες νήμα συζήτησης εδώ.