Πως να επιδιορθωσετε το συστημα αρχειων στο LINUX
Quote from Root on 10/08/2022, 16:20Οταν το Λειτουργικο σας "κρασαρει" λογω διακοπης ρευματος,
βεβιασμενου shutdown ή απο αλλη αιτια,
τα συνδεδεμενα συστηματα αρχειων μπορει να καταστραφουν.
Ως κατεστραμενο συστημα αρχειων θεωρουμε το γεγονος οτι το superblock
(το τμημα του συστηματος που περιεχει πληροφοριες για τον τυπο του συστηματος αρχειων,
το μεγεθος,τα inodes κλπ) δεν ειναι σωστα ενημερωμενο και περιεχει λανθασμενες πληροφοριες.Βασικες εννοιες που θα χρησιμοποιησουμε
Η εντολη fsck:
Το fsck ειναι ενα προγραμμα που ελεγχει το συστημα αρχειων για σφαλματα,
και τα διορθωνει.
"Τρεχει" τοσο χειροκινητα,οσο και αυτοματα (στην εκκινηση εαν ανιχνευσει σφαλματα),
ή εαν εχει ορισθει στο fstab για καποιο συγκεκριμενο filesystem.
ΑΠΟΠΡΟΣΑΡΤΗΣΤΕ το συστημα αρχειων πριν το χρησιμοποιησετε σε καποιο filesystem!Η εντολη dd:
Η εντολη αυτη χρησιμοποιηται για να αντιγραψει και (εαν το επιθυμουμε)
να μετατρεψει δεδομενα.
Προσοχη,η λανθασμενη χρηση της εντολης μπορει να προκαλεσει ΑΠΩΛΕΙΑ ΔΕΔΟΜΕΝΩΝ.Ας δουμε μια περιπτωση οπου εχουμε ζημια λογω διακοπης ρευματος
(οποτε το μηχανημα μας εσβησε αποτομα)
Θα χρησιμοποιησουμε μια ΕΙΚΟΝΙΚΗ μηχανη (για να μην εργαστουμε σε πραγματικα δεδομενα!)
και θα χρησιμοποιησουμε την εντολη dd για να γραψουμε τυχαια δεδομενα σε ενα κενο filesystem.
Μετα θα χρησιμοποιησουμε την fsck για να επισκευασουμε τα σφαλματα.
(θυμηθειτε να αλλαξετε το PARTITION με το ονομα του εικονικου
που θα χρησιμοποιησουμε,πχ sda3)Παμε βημα βημα:
Δωστε την dd ως εξης:
dd if=/dev/zero count=1 bs=4096 seek=0 of=/dev/PARTITION(θυμηθειτε να αλλαξετε το PARTITION με το ονομα του εικονικου
που θα χρησιμοποιησουμε,πχ sda3)
επαναλαμβανω,ΜΗΝ το τρεξετε σε πραγματικα δεδομενα!Τωρα,δωστε την fsck για να επισκευασετε διαδραστικα το συστημα
fsck /dev/PARTITIONΒεβαιωστε οτι η επισκευη εγινε,δινοντας παλι fsck /dev/PARTITION
Για να αναγκασετε τον ελεγχο ενος σωστου partition,
για να βεβαιωθειτε οτι ειναι ενταξει, δωστε
fsck -f /dev/PARTITIONΔωστε ξανα την dd για να δοκιμασουμε κατι αλλο:
dd if=/dev/zero count=1 bs=4096 seek=0 of=/dev/PARTITIONΑς διορθωσουμε το κατεστραμενο συστημα αυτοματα
fsck -y /dev/PARTITION
Ειμαστε ετοιμοι!
Τελειωνοντας,θυμηθειτε,ΠΟΤΕ μην τρεχετε την fsck σε συνδεδεμενο συστημα αρχειων!
Πρωτα αποπροσαρτηστε το (unmount) πριν τρεξετε την εντολη!
Οταν το Λειτουργικο σας "κρασαρει" λογω διακοπης ρευματος,
βεβιασμενου shutdown ή απο αλλη αιτια,
τα συνδεδεμενα συστηματα αρχειων μπορει να καταστραφουν.
Ως κατεστραμενο συστημα αρχειων θεωρουμε το γεγονος οτι το superblock
(το τμημα του συστηματος που περιεχει πληροφοριες για τον τυπο του συστηματος αρχειων,
το μεγεθος,τα inodes κλπ) δεν ειναι σωστα ενημερωμενο και περιεχει λανθασμενες πληροφοριες.
Βασικες εννοιες που θα χρησιμοποιησουμε
Η εντολη fsck:
Το fsck ειναι ενα προγραμμα που ελεγχει το συστημα αρχειων για σφαλματα,
και τα διορθωνει.
"Τρεχει" τοσο χειροκινητα,οσο και αυτοματα (στην εκκινηση εαν ανιχνευσει σφαλματα),
ή εαν εχει ορισθει στο fstab για καποιο συγκεκριμενο filesystem.
ΑΠΟΠΡΟΣΑΡΤΗΣΤΕ το συστημα αρχειων πριν το χρησιμοποιησετε σε καποιο filesystem!
Η εντολη dd:
Η εντολη αυτη χρησιμοποιηται για να αντιγραψει και (εαν το επιθυμουμε)
να μετατρεψει δεδομενα.
Προσοχη,η λανθασμενη χρηση της εντολης μπορει να προκαλεσει ΑΠΩΛΕΙΑ ΔΕΔΟΜΕΝΩΝ.
Ας δουμε μια περιπτωση οπου εχουμε ζημια λογω διακοπης ρευματος
(οποτε το μηχανημα μας εσβησε αποτομα)
Θα χρησιμοποιησουμε μια ΕΙΚΟΝΙΚΗ μηχανη (για να μην εργαστουμε σε πραγματικα δεδομενα!)
και θα χρησιμοποιησουμε την εντολη dd για να γραψουμε τυχαια δεδομενα σε ενα κενο filesystem.
Μετα θα χρησιμοποιησουμε την fsck για να επισκευασουμε τα σφαλματα.
(θυμηθειτε να αλλαξετε το PARTITION με το ονομα του εικονικου
που θα χρησιμοποιησουμε,πχ sda3)
Παμε βημα βημα:
Δωστε την dd ως εξης:
dd if=/dev/zero count=1 bs=4096 seek=0 of=/dev/PARTITION
(θυμηθειτε να αλλαξετε το PARTITION με το ονομα του εικονικου
που θα χρησιμοποιησουμε,πχ sda3)
επαναλαμβανω,ΜΗΝ το τρεξετε σε πραγματικα δεδομενα!
Τωρα,δωστε την fsck για να επισκευασετε διαδραστικα το συστημα
fsck /dev/PARTITION
Βεβαιωστε οτι η επισκευη εγινε,δινοντας παλι fsck /dev/PARTITION
Για να αναγκασετε τον ελεγχο ενος σωστου partition,
για να βεβαιωθειτε οτι ειναι ενταξει, δωστε
fsck -f /dev/PARTITION
Δωστε ξανα την dd για να δοκιμασουμε κατι αλλο:
dd if=/dev/zero count=1 bs=4096 seek=0 of=/dev/PARTITION
Ας διορθωσουμε το κατεστραμενο συστημα αυτοματα
fsck -y /dev/PARTITION
Ειμαστε ετοιμοι!
Τελειωνοντας,θυμηθειτε,ΠΟΤΕ μην τρεχετε την fsck σε συνδεδεμενο συστημα αρχειων!
Πρωτα αποπροσαρτηστε το (unmount) πριν τρεξετε την εντολη!