5 Αντιμετώπιση Προβλημάτων

Το ακόλουθο τμήμα καλύπτει συχνές ερωτήσεις σχετικά με προβλήματα που μπορείτε να συναντήσετε στην υλοποίηση του jounaling.

5.1. Κατά τη διάρκεια έντονης χρήσης του δίσκου, το σύστημα μου σταματάει με kernel panic. Υπάρχει περίπτωση αυτό να σχετίζεται με το journaling;
5.2. Έκανα κάποιο λάθος στις ρυθμίσεις, και δεν μπορώ πλέον να ξεκινήσω κανονικά το σύστημα μου. Υπάρχει τρόπος να το διορθώσω;
5.3. Μπορώ να καταργήσω το journaling και να επιστρέψω στο κανονικό σύστημα αρχείων με τα Soft Updates;

5.1. Κατά τη διάρκεια έντονης χρήσης του δίσκου, το σύστημα μου σταματάει με kernel panic. Υπάρχει περίπτωση αυτό να σχετίζεται με το journaling;

Είναι πιθανό το ημερολόγιο να γεμίζει πριν προλάβουν τα προηγούμενα δεδομένα του να μεταφερθούν στο σύστημα αρχείων. Θα πρέπει να θυμάστε ότι το μέγεθος του ημερολογίου δεν εξαρτάται από το μέγεθος του παροχέα δεδομένων, αλλά από το φόρτο εργασίας του. Αν η δραστηριότητα του δίσκου σας είναι υψηλή, θα χρειαστείτε μεγαλύτερο μέγεθος για την κατάτμηση του ημερολογίου. Δείτε τη σχετική σημείωση στην ενότητα Κατανόηση του Journaling.

5.2. Έκανα κάποιο λάθος στις ρυθμίσεις, και δεν μπορώ πλέον να ξεκινήσω κανονικά το σύστημα μου. Υπάρχει τρόπος να το διορθώσω;

Πιθανόν ξεχάσατε να προσθέσετε (ή έχετε κάνει λάθος) την καταχώρηση στο /boot/loader.conf, ή ίσως υπάρχει λάθος στο αρχείο /etc/fstab. Τα λάθη αυτά συνήθως διορθώνονται εύκολα. Πιέστε Enter για να ξεκινήσετε το προεπιλεγμένο κέλυφος λειτουργίας ενός χρήστη. Μετά εντοπίστε την πηγή του προβλήματος:

# cat /boot/loader.conf

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

# gjournal load

GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal.
GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal.
GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data.
GEOM_JOURNAL: Journal ad0s1d clean.
GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data.
GEOM_JOURNAL: Journal ad0s1f clean.

# mount -a
# exit
(η εκκίνηση συνεχίζεται)

Αν ωστόσο η καταχώρηση αυτή είναι σωστή, ρίξτε μια ματιά στο αρχείο /etc/fstab. Το πιο πιθανό είναι να βρείτε ότι κάποια καταχώρηση λείπει, ή είναι λάθος. Στην περίπτωση αυτή, προσαρτήστε χειροκίνητα όλες τις κατατμήσεις και συνεχίστε την εκκίνηση κανονικά.

5.3. Μπορώ να καταργήσω το journaling και να επιστρέψω στο κανονικό σύστημα αρχείων με τα Soft Updates;

Βέβαια. Χρησιμοποιήστε την ακόλουθη διαδικασία η οποία αναιρεί τις αλλαγές. Μπορείτε έπειτα να χρησιμοποιήσετε τις κατατμήσεις των ημερολογίων για άλλο σκοπό, εφόσον το επιθυμείτε.

Εισέλθετε ως root και μεταβείτε σε κατάσταση ενός χρήστη:

# shutdown now

Αποπροσαρτήστε τις κατατμήσεις που χρησιμοποιούν journaling:

# umount /usr /var

Συγχρονίστε τα ημερολόγια:

# gjournal sync

Σταματήστε τους παροχείς ημερολογίου:

# gjournal stop ad0s1d.journal
# gjournal stop ad0s1f.journal

Διαγράψτε τα metadata του journaling από όλες τις συσκευές που χρησιμοποιήσατε:

# gjournal clear ad0s1d
# gjournal clear ad0s1f
# gjournal clear ad0s1g
# gjournal clear ad0s1h

Αναιρέστε την επιλογή του journaling, και θέστε ξανά την επιλογή για Soft Updates:

# tunefs -J disable -n enable ad0s1d

tunefs: gjournal cleared
tunefs: soft updates set

# tunefs-J disable -n enable ad0s1f

tunefs: gjournal cleared
tunefs: soft updates set

Προσαρτήστε χειροκίνητα τις κανονικές κατατμήσεις:

# mount -o rw /dev/ad0s1d  /var
# mount -o rw /dev/ad0s1f  /usr

Επεξεργαστείτε το /etc/fstab και επαναφέρατε τις προηγούμενες ρυθμίσεις:

/dev/ad0s1f     /usr            ufs     rw      2       2
/dev/ad0s1d     /var            ufs     rw      2       2

Τέλος, επεξεργαστείτε το αρχείο /boot/loader.conf, αφαιρέστε την καταχώρηση που φορτώνει το άρθρωμα geom_journal και επανεκκινήστε το σύστημα σας.

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

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