2. Κατανόηση του Journaling στο FreeBSD
Προηγ |  | Επόμενο

## 2. Κατανόηση του Journaling στο FreeBSD

Το journaling που παρέχεται από το GEOM στο FreeBSD 7.`X` δεν είναι προσανατολισμένο σε κάποιο συγκεκριμένο σύστημα αρχείων (όπως για παράδειγμα συμβαίνει με το σύστημα αρχείων ext3 στο Linux®) αλλά λειτουργεί σε επίπεδο block. Αν και αυτό σημαίνει ότι μπορεί να χρησιμοποιηθεί σε διαφορετικά συστήματα αρχείων, για το FreeBSD 7.0-RELEASE, είναι δυνατή η χρήση του μόνο στο UFS2.

Οι λειτουργίες journaling παρέχονται φορτώνοντας το άρθρωμα `geom_journal.ko` στον πυρήνα (ή ενσωματώνοντας τη λειτουργία του σε ένα προσαρμοσμένο πυρήνα) και χρησιμοποιώντας την εντολή `gjournal` για τη ρύθμιση των συστημάτων αρχείων. Η χρήση του journaling είναι γενικά θεμιτή σε μεγάλα συστήματα αρχείων, όπως είναι το `/usr`. Θα χρειαστεί ωστόσο να έχετε δεσμεύσει από πριν κάποιο ελεύθερο χώρο στο δίσκο.

Όταν γίνεται χρήση του journaling σε ένα σύστημα αρχείων, απαιτείται κάποιος ελεύθερος χώρος για να αποθηκεύονται τα δεδομένα του ημερολογίου καταγραφής (journal). Ο χώρος του δίσκου που αποθηκεύονται τα πραγματικά δεδομένα αναφέρεται ως παροχέας δεδομένων (data provider), ενώ ο χώρος στον οποίο αποθηκεύεται το ημερολόγιο ονομάζεται παροχέας ημερολογίου (journal provider). Σε περίπτωση που το journaling γίνεται σε σύστημα αρχείων το οποίο έχει ήδη δεδομένα, οι δύο παροχείς πρέπει να βρίσκονται σε διαφορετικές κατατμήσεις. Σε περίπτωση χρήσης journaling σε νέα κατάτμηση, έχετε την επιλογή να χρησιμοποιήσετε τον ίδιο παροχέα και για τα δεδομένα και για το ημερολόγιο. Σε κάθε περίπτωση, με τη χρήση της εντολής `gjournal`, οι δύο παροχείς συνδυάζονται για να δημιουργήσουν το τελικό σύστημα αρχείων που υποστηρίζει journaling. Για παράδειγμα:

- Θέλετε να χρησιμοποιήσετε journaling στο σύστημα αρχείων `/usr`, το οποίο βρίσκεται στο `/dev/ad0s1f` (το σύστημα αρχείων περιέχει ήδη δεδομένα).

- Έχετε κρατήσει κάποιο κενό χώρο στο δίσκο, σε μια κατάτμηση στο `/dev/ad0s1g`.

- Με την χρήση της εντολής `gjournal`, θα δημιουργηθεί μια νέα συσκευή, η `/dev/ad0s1f.journal`, όπου το `/dev/ad0s1f` θα είναι ο παροχέας δεδομένων και το `/dev/ad0s1g` θα είναι ο παροχέας ημερολογίου. Η νέα αυτή συσκευή θα χρησιμοποιείται πλέον για όλες τις εργασίες που θα εκτελούνται στο σύστημα αρχείων.

Ο χώρος στο δίσκο που απαιτείται για το ημερολόγιο εξαρτάται από τη χρήση του συστήματος αρχείων, και όχι από το μέγεθος του παροχέα δεδομένων. Για παράδειγμα, σε ένα τυπικό μηχάνημα γραφείου, θα είναι αρκετό να χρησιμοποιήσετε 1 GB για τον παροχέα ημερολογίου του συστήματος αρχείων `/usr`, ενώ σε ένα μηχάνημα το οποίο χρησιμοποιείται σε εργασίες όπου οι εγγραφές στο δίσκο είναι πολύ συχνές και μεγάλες σε μέγεθος (π.χ. επεξεργασία video) θα χρειαστείτε περισσότερο χώρο. Σε περίπτωση που ο χώρος που έχει δεσμευθεί για το ημερολόγιο εξαντληθεί πριν γίνει δυνατή η εγγραφή δεδομένων στο κανονικό σύστημα αρχείων, το σύστημα θα καταρρεύσει με kernel panic.

### Σημείωση:

Τα μεγέθη που προτείνονται εδώ για τον παροχέα ημερολογίου, είναι απίθανο να προκαλέσουν πρόβλημα σε τυπική χρήση γραφείου (περιήγηση στο διαδίκτυο, επεξεργασία κειμένου, αναπαραγωγή πολυμέσων). Αν ωστόσο το είδος της εργασίας σας περιλαμβάνει έντονη χρήση του σκληρού δίσκου, μπορείτε να χρησιμοποιήσετε τον ακόλουθο κανόνα για τη μεγαλύτερη δυνατή αξιοπιστία: όλη η μνήμη RAM του συστήματος σας πρέπει να χωράει στο 30% του χώρου του ημερολογίου. Για παράδειγμα, αν το σύστημα σας έχει 1 GB RAM, θα πρέπει να δημιουργήσετε ημερολόγιο μεγέθους περίπου 3.3 GB. (Πολλαπλασιάστε το μέγεθος της RAM με το 3.3 για να βρείτε το μέγεθος του ημερολογίου.)

Για περισσότερες πληροφορίες σχετικά με το journaling, παρακαλούμε διαβάστε τη σελίδα manual του gjournal(8).

Προηγ |  | Επόμενο
Υλοποίηση του UFS Journaling σε ένα Desktop Υπολογιστή | Αρχή | 3. Βήματα Κατά την Εγκατάσταση του FreeBSD

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.