Επιδιόρθωση συστημάτων αρχείων
Υπάρχουν δύο ειδών βλάβες που μπορεί να εμφανιστούν σε ένα σύστημα αρχείων, οι βλάβες λόγω ελαττωματικού υλικού και οι λογικές βλάβες.
Όσον αφορά τις βλάβες του υλικού, λίγα μπορούμε να κάνουμε, και εξαρτάται πάντα από το μέγεθος της βλάβης. Αν, για παράδειγμα, ο δίσκος μας έχει πάθει τοπική βλάβη σε κάποια blocks του (bad blocks όπως ονομάζονται) τότε πιθανώς να μπορείτε να διασώσετε τα υπόλοιπα δεδομένα και να τα αντιγράψετε σε ένα καινούριο σκληρό δίσκο. Αν πάλι καταστραφεί ολοσχερώς ο σκληρός δίσκος, θα πρέπει να αποχαιρετήσετε τα δεδομένα σας...
Από την άλλη, οι λογικές βλάβες αφορούν κάποιες λάθος πληροφορίες που έχουν αποθηκευτεί στο σύστημα αρχείων και προκαλούν σύγχυση στον υπολογιστή. Για παράδειγμα, αν ο υπολογιστής έκλεισε τη στιγμή που γινόταν εγγραφή ενός αρχείου, όταν επανεκκινήσει, το αρχείο θα έχει μείνει σε μια αντιφατική κατάσταση. Ορισμένα από τα δεδομένα ίσως να έχουν προλάβει να εγγραφούν αλλά όχι όλα. Πιθανόν να έχουν δεσμευτεί πληροφοριακοί κόμβοι (i-nodes) για το αρχείο οι οποίοι να είναι κενοί ή να ανήκουν σε κάποιο άλλο αρχείο. Άλλωστε, μπορεί να έχει γίνει κάποια λάθος κίνηση ακόμη και από τον ίδιο το χρήστη, όπως π.χ. να έχει γράψει απευθείας δεδομένα στο σημείο επαφής του διαμερίσματος (dd if=/dev/random of=/dev/sda1). Αυτά και άλλα προβλήματα είναι πολύ εύκολο να συμβούν, ειδικά σε συστήματα που έχουν πρόβλημα με τη σταθερή παροχή ρεύματος ή απρόσεχτους χρήστες!
Ευτυχώς, τα περισσότερα από τα προβλήματα αυτά μπορούν να επιλυθούν με τη χρήση λογισμικού ελεγχου και επιδιόρθωσης (filesystem check & repair software). Κάθε είδος συστήματος αρχείων έχει δικό του τέτοιο λογισμικό το οποίο θα πρέπει να χρησιμοποιείται σε κάθε πρόβλημα.
Mε την εκκίνηση, το Debian θα αναγνωρίσει αν κάποιο σύστημα αρχείων έχει λογική βλάβη και θα εκτελέσει το σωστό πρόγραμμα επιδιόρθωσης. Τις περισσότερες φορές δε θα χρειαστεί να κάνετε κάτι πέραν ίσως από το να απαντήσετε σε κάποιες τεχνικές ερωτήσεις. Αν το πρόβλημα είναι απλό, που συνήθως είναι, το σύστημα θα το διορθώσει μόνο του.
Ωστόσο, σε μερικές περιπτώσεις, το πρόβλημα που έχει δημιουργηθεί είναι αρκετά σοβαρό και θα πρέπει να υπάρξει παρέμβαση χρήστη (θα εμφανισθεί το μήνυμα “user intervention required”). Στην περίπτωση αυτή το σύστημα θα μεταβεί σε κατάσταση ανάγκης (βλ. Παράρτημα V, σελ. ). Στην περίπτωση αυτή θα πρέπει να εκτελέσετε δια χειρός το αντίστοιχο πρόγραμμα επιδιόρθωσης και να το καθοδηγήσετε κατά τη διαδικασία της επιδιόρθωσης.
Είναι ιδιαίτερα σημαντικό να χρησιμοποιήσετε το σωστό λογισμικό επιδιόρθωσης. Είναι ανώφελο να προσπαθήσετε να χρησιμοποιήσετε το λογισμικό επιδιόρθωσης του ext3 σε διαμέρισμα που φιλοξενεί NTFS σύστημα αρχείων. Οι δομές τους είναι τελείως διαφορετικές και το πιθανότερο είναι ότι το ίδιο το λογισμικό δε θα σας αφήσει να προχωρήσετε. Υπάρχει όμως περίπτωση να νομίζει ότι πρόκειται για κατεστραμμένο ext3 σύστημα αρχείων και να προχωρήσει στην επιδιόρθωση καταστρέφοντας έτσι και το NTFS. Βεβαιωθείτε ότι χρησιμοποιείτε το σωστό λογισμικό πριν προσπαθήσετε να κάνετε κάποια επιδιόρθωση δια χειρός. Ευτυχώς, κάτι τέτοιο είναι αρκετά απίθανο και σπάνια θα χρειαστεί να καλέσετε απευθείας το πρόγραμμα επιδιόρθωσης του συγκεκριμένου συστήματος αρχείων. Για τυπικά συστήματα αρχείων του Linux (ext2, ext3, reiserfs, jfs, xfs), αρκεί να καλέσετε την εντολή fsck και αυτή αναλαμβάνει να εκτελέσει το σωστό πρόγραμμα επιδιόρθωσης.
Η εντολή fsck
Όπως αναφέραμε, η εντολή αυτή καλείται αυτόματα κατά την εκκίνηση του συστήματος για τον έλεγχο των συστημάτων αρχέιων. Η ίδια η εντολή δεν πραγματοποιεί κάποιου είδους επιδιόρθωση στο σύστημα αρχείων, παρά μόνο εκτελεί το σωστό πρόγραμμα επιδιόρθωσης (συνήθως υπό το όνομα fsck.fstype όπου fstype το είδος του συστήματος αρχείων, π.χ. ext2, minix). Σε περίπτωση που θα χρειαστεί να την εκτελέσετε δια χειρός, η σύνταξή της είναι η εξής:
fsck [OPTIONS] device | dir [--] [FS-OPTIONS]
όπου device είναι το σημείο επαφής της συσκευής που φιλοξενεί το σύστημα αρχείων ή dir το όνομα του καταλόγου που λειτουργεί ως αρμός (στην περίπτωση χρήσης αρμού, θα πρέπει να υπάρχει αντίστοιχη καταχώρηση στο αρχείο /etc/fstab). Ως επιλογές αναφέρουμε τις σημαντικότερες:
Επιλογές
Λειτουργία
-t fslist
Ορίζει το είδος ή τα είδη του συστήματος αρχείων (χωρισμένα με κόμμα) που θα ελεγχθούν/επιδιορθωθούν.
-A
Ελέγχει/επιδιορθώνει όλα τα συστήματα αρχείων που είναι δηλωμένα στο αρχείο fstab.
-C
Εμφανίζει μια ράβδο προόδου (progress bar) για την διαδικασία ελέγχου/επιδιόρθωσης.
-N
Απλώς εμφανίζει τα βήματα της διαδικασίας ελέγχου/επιδιόρθωσης αλλά δεν κάνει καμία αλλαγή στο σύστημα αρχείων.
--
Μετά την επιλογή αυτή οποιαδήποτε επιλογή περνάει στο πραγματικό πρόγραμμα επιδιόρθωσης. Μερικές συνηθισμένες επιλογές που ισχύουν στα περισσότερα προγράμματα είναι οι εξής:
-a: Αυτόματη επιδιόρθωση του συστήματος αρχείων.
-r: Διαλογική επιδιόρθωση του συστήματος αρχείων.
Στην περίπτωση που θέλετε να χρησιμοποιήσετε πιο περίπλοκες επιλογές καλό είναι να καλέσετε το ίδιο το πρόγραμμα επιδιόρθωσης (π.χ. fsck.ext2) και όχι το wrapper fsck.
Το θέμα της επιδιόρθωσης ενός συστήματος σίγουρα δε σταματάει εδώ. Υπάρχουν πολλά κείμενα στο Internet αλλά και στην ίδια τη διανομή Debian, που θα σας δώσουν περισσότερες πληροφορίες. Πολύ χρήσιμες θα βρείτε και τις σελίδες οδηγιών των προγραμμάτων fsck, fsck.ext2, αλλά και τα κείμενα περιγραφής του συστήματος ext2. Άν έχετε εγκατεστημένο το πακέτο λογισμικού kernel-source-2.4.xx (όπου 2.4.xx η έκδοση του πυρήνα1), ενα καλό σημείο για να ξεκινήσετε τη μελέτη είναι:
/usr/src/kernel-source-2.4.20/Documentation/filesystems/ext2.txt
Active forum topics
- Wake up from suspend mode failed
- Οργάνωση στις μεταφράσεις των ελληνικών στο Debian.
- απορια σχετικα με nvidia440
- πρόβλημα εγκατάστασης nvidia driver GTS250.
- kernel 2.6.38 για squeeze
- Gnome3
- 2 μήνες σπασμένο το upgrade σε unstable [SOLVED]
- Οι χρήστες του Internet Explorer είναι χαζοί;
- Debian Lenny + Nvidia drivers
- εγκατασταση usb cosmote
New forum topics
Νέοι χρήστες
- kountp
- Adonthegreat
- giorgos_m
- prodromos
- airmaik
Οι πιο πρόσφατες καταχωρίσεις blog.
- Fosscomm 2012
- armhf officially into Debian!
- back from UDS/Linaro Connect...
- FTF is over, Linaro Interview
- straight from FTF 2011, San Antonio...
- Όσο μεγαλώνεις μαθαίνεις...
- Emdebian 2011 Sprint report, Genesi Europe store goes online...
- Θεσσαλονίκη - open source ERP workshop
- Χρήσιμο URL για Flash Cards και Linux filesystems
- Cambridge, UK, ARM HQ for Emdebian 2011 Sprint