Πνευματικά Δικαιώματα © 2008 Μανώλης Κιαγιάς
Ένα σύστημα αρχείων που διαθέτει δυνατότητα journaling, χρησιμοποιεί ένα αρχείο καταγραφής (journal ή ημερολόγιο) στο οποίο γίνονται αρχικά οι εγγραφές πριν καταχωρηθούν στο κανονικό σύστημα αρχείων. Με τον τρόπο αυτό μπορεί να εξασφαλιστεί η ακεραιότητα του συστήματος αρχείων στην περίπτωση κατάρρευσης ή απότομης διακοπής της τροφοδοσίας του. Η χρήση του journaling διασφαλίζει την συνολική ακεραιότητα του συστήματος αρχείων, αλλά δεν μπορεί να διασφαλίσει ότι δεν θα έχουμε απώλεια δεδομένων σε μεμονωμένα αρχεία τα οποία ήταν ενδεχομένως σε χρήση την ώρα της κατάρρευσης. Ένα πλεονέκτημα του journaling είναι η ελαχιστοποίηση του χρόνου που απαιτείται για τον έλεγχο του συστήματος αρχείων σε περίπτωση κακού τερματισμού. Το σύστημα αρχείων UFS που χρησιμοποιείται από το FreeBSD δεν διαθέτει δικό του ενσωματωμένο journaling. Ωστόσο, το πλαίσιο λειτουργιών GEOM στο FreeBSD 7.X παρέχει ένα νέο journal class το οποίο δίνει αυτή τη δυνατότητα, και μάλιστα ανεξάρτητα από το σύστημα αρχείων που χρησιμοποιείται. Στο άρθρο αυτό εξετάζουμε πως μπορούμε να χρησιμοποιήσουμε το journaling σε ένα τυπικό desktop μηχάνημα για εργασία γραφείου.
Αν και οι περισσότεροι εξυπηρετητές που χρησιμοποιούνται σε περιβάλλοντα παραγωγής είναι καλά προστατευμένοι από μη-αναμενόμενους τερματισμούς, δεν συμβαίνει το ίδιο και με το συνηθισμένο desktop μηχάνημα το οποίο βρίσκεται στα χέρια του τελικού χρήστη. Αυτό συνήθως δεν προστατεύεται από διακοπές ρεύματος, ενώ δεν είναι και οι λίγες οι περιπτώσεις που ο κακός τερματισμός οφείλεται σε λανθασμένο χειρισμό του χρήστη (κατά λάθος πίεση του reset κ.α.). Στις περισσότερες από αυτές τις περιπτώσεις, τα Soft Updates που χρησιμοποιεί το σύστημα αρχείων UFS μπορούν να το προστατεύσουν αρκετά καλά, αν και μετά τον προβληματικό τερματισμό απαιτείται συνήθως έλεγχος του συστήματος αρχείων, ο οποίος ακόμα και όταν γίνεται στο παρασκήνιο, διαρκεί αρκετό χρόνο. Σε σπάνιες περιπτώσεις, το σύστημα αρχείων μπορεί να υποστεί ζημιά η οποία να χρειάζεται χειροκίνητη επέμβαση για να διορθωθεί, ενώ είναι πιθανή και η απώλεια δεδομένων.
Η νέα δυνατότητα για journaling που παρέχεται από το GEOM μπορεί να βοηθήσει ιδιαίτερα στις παραπάνω περιπτώσεις, ελαχιστοποιώντας το χρόνο που απαιτείται για τον έλεγχο του συστήματος αρχείων και εξασφαλίζοντας ότι το σύστημα θα επανέλθει πολύ σύντομα σε σταθερή κατάσταση.
Το άρθρο αυτό περιγράφει μια διαδικασία για την υλοποίηση του UFS journaling σε ένα τυπικό desktop PC (στο οποίο χρησιμοποιείται ένας σκληρός δίσκος τόσο για το σύστημα όσο και για τα δεδομένα). Θα πρέπει να ακολουθήσετε αυτές τις οδηγίες κατά τη διάρκεια μιας νέας εγκατάστασης του FreeBSD. Τα βήματα είναι αρκετά απλά και δεν απαιτούν ιδιαίτερα πολύπλοκες εντολές.
Αφού διαβάσετε αυτό το άρθρο, θα ξέρετε:
Πως να δεσμεύσετε κάποιο χώρο στο δίσκο για το journaling κατά τη διάρκεια μιας νέας εγκατάστασης του FreeBSD.
Πως να φορτώσετε και να ενεργοποιήσετε το άρθρωμα (module) geom_journal (ή πως να ενσωματώσετε τη λειτουργία του στον προσαρμοσμένο πυρήνα σας).
Πως να μετατρέψετε τα υπάρχοντα συστήματα αρχείων σας ώστε να χρησιμοποιούν journaling, και τι παραμέτρους θα πρέπει να δώσετε στο /etc/fstab ώστε να τα προσαρτήσετε.
Πως να ενεργοποιήσετε το journaling σε νέες (άδειες) κατατμήσεις.
Πως να αντιμετωπίσετε προβλήματα που σχετίζονται με το journaling.
Πριν διαβάσετε αυτό το άρθρο, θα πρέπει:
Να κατανοείτε βασικές έννοιες του UNIX® και του FreeBSD.
Να είστε εξοικειωμένος με τη διαδικασία εγκατάστασης του FreeBSD και το βοηθητικό πρόγραμμα sysinstall.
Προειδοποίηση: Η διαδικασία που περιγράφεται εδώ, προορίζεται για χρήση σε νέες εγκαταστάσεις, όπου δεν υπάρχουν ακόμα αποθηκευμένα δεδομένα χρήστη. Αν και είναι δυνατόν να τροποποιήσετε και να επεκτείνετε τη διαδικασία αυτή σε μηχανήματα που βρίσκονται ήδη σε κανονική χρήση, θα πρέπει οπωσδήποτε να πάρετε αντίγραφα ασφαλείας όλων των σημαντικών δεδομένων πριν επιχειρήσετε οποιαδήποτε αλλαγή. Όταν κάνετε αλλαγές στα συστήματα αρχείων και στις κατατμήσεις των δίσκων σε τέτοιο επίπεδο, είναι πιθανόν να κάνετε λάθη τα οποία θα αποβούν μοιραία για τα δεδομένα σας.
Επόμενο | ||
Κατανόηση του Journaling στο FreeBSD |
Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την
<questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.