diff --git a/el_GR.ISO8859-7/articles/Makefile b/el_GR.ISO8859-7/articles/Makefile index 0411742f10..982c80dbe0 100644 --- a/el_GR.ISO8859-7/articles/Makefile +++ b/el_GR.ISO8859-7/articles/Makefile @@ -1,21 +1,22 @@ # $FreeBSD$ # # %SOURCE% en_US.ISO8859-1/articles/Makefile # %SRCID% 1.39 SUBDIR = SUBDIR+= cvs-freebsd SUBDIR+= dialup-firewall SUBDIR+= explaining-bsd SUBDIR+= formatting-media SUBDIR+= freebsd-questions +SUBDIR+= gjournal-desktop SUBDIR+= greek-language-support SUBDIR+= laptop SUBDIR+= multi-os SUBDIR+= new-users SUBDIR+= problem-reports SUBDIR+= releng SUBDIR+= releng-packages DOC_PREFIX?= ${.CURDIR}/../.. .include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/el_GR.ISO8859-7/articles/gjournal-desktop/Makefile b/el_GR.ISO8859-7/articles/gjournal-desktop/Makefile new file mode 100644 index 0000000000..4cc2e1422f --- /dev/null +++ b/el_GR.ISO8859-7/articles/gjournal-desktop/Makefile @@ -0,0 +1,23 @@ +# +# $FreeBSD$ +# +# Article: Implementing UFS journaling on a desktop PC +# +# %SOURCE% en_US.ISO8859-1/articles/gjournal-desktop/Makefile +# %SRCID% 1.11 +# + +DOC?= article + +FORMATS?= html + +INSTALL_COMPRESSED?=gz +INSTALL_ONLY_COMPRESSED?= + +SRCS= article.sgml +IMAGES_EN = disklabel1.png +IMAGES_EN += disklabel2.png +URL_RELPREFIX?= ../../../.. +DOC_PREFIX?= ${.CURDIR}/../../.. + +.include "${DOC_PREFIX}/share/mk/doc.project.mk" diff --git a/el_GR.ISO8859-7/articles/gjournal-desktop/article.sgml b/el_GR.ISO8859-7/articles/gjournal-desktop/article.sgml new file mode 100644 index 0000000000..2077a3b312 --- /dev/null +++ b/el_GR.ISO8859-7/articles/gjournal-desktop/article.sgml @@ -0,0 +1,761 @@ + + + +%articles.ent; + +]> + +
+ + Υλοποίηση του UFS journaling σε ένα desktop υπολογιστή + + + Μανώλης + Κιαγιάς + +
manolis@FreeBSD.org
+
+
+ + + 2008 + Μανώλης Κιαγιάς + + + $FreeBSD$ + + + &tm-attrib.freebsd; + &tm-attrib.general; + + + + Ένα σύστημα αρχείων που διαθέτει δυνατότητα journaling, + χρησιμοποιεί ένα αρχείο καταγραφής (journal ή ημερολόγιο) στο οποίο + γίνονται αρχικά οι εγγραφές πριν καταχωρηθούν στο κανονικό σύστημα + αρχείων. Με τον τρόπο αυτό μπορεί να εξασφαλιστεί η ακεραιότητα του + συστήματος αρχείων στην περίπτωση κατάρρευσης ή απότομης διακοπής της + τροφοδοσίας του. Η χρήση του journaling διασφαλίζει την συνολική + ακεραιότητα του συστήματος αρχείων, αλλά δεν μπορεί να διασφαλίσει + ότι δεν θα έχουμε απώλεια δεδομένων σε μεμονωμένα αρχεία τα οποία + ήταν ενδεχομένως σε χρήση την ώρα της κατάρρευσης. Ένα πλεονέκτημα + του journaling είναι η ελαχιστοποίηση του χρόνου που απαιτείται για + τον έλεγχο του συστήματος αρχείων σε περίπτωση κακού τερματισμού. Το + σύστημα αρχείων UFS που χρησιμοποιείται από το &os; δεν διαθέτει δικό + του ενσωματωμένο journaling. Ωστόσο, το πλαίσιο λειτουργιών GEOM στο + &os; 7.X παρέχει ένα νέο journal class το οποίο δίνει αυτή τη + δυνατότητα, και μάλιστα ανεξάρτητα από το σύστημα αρχείων που + χρησιμοποιείται. Στο άρθρο αυτό εξετάζουμε πως μπορούμε να + χρησιμοποιήσουμε το journaling σε ένα τυπικό desktop μηχάνημα για + εργασία γραφείου. + +
+ + + Εισαγωγή + + Αν και οι περισσότεροι εξυπηρετητές που χρησιμοποιούνται σε + περιβάλλοντα παραγωγής είναι καλά προστατευμένοι από μη-αναμενόμενους + τερματισμούς, δεν συμβαίνει το ίδιο και με το συνηθισμένο desktop + μηχάνημα το οποίο βρίσκεται στα χέρια του τελικού χρήστη. Αυτό συνήθως + δεν προστατεύεται από διακοπές ρεύματος, ενώ δεν είναι και οι λίγες οι + περιπτώσεις που ο κακός τερματισμός οφείλεται σε λανθασμένο χειρισμό + του χρήστη (κατά λάθος πίεση του reset κ.α.). Στις περισσότερες από + αυτές τις περιπτώσεις, τα soft updates που χρησιμοποιεί το σύστημα + αρχείων UFS μπορούν να το προστατεύσουν αρκετά καλά, αν και μετά τον + προβληματικό τερματισμό απαιτείται συνήθως έλεγχος του συστήματος + αρχείων, ο οποίος ακόμα και όταν γίνεται στο παρασκήνιο, διαρκεί + αρκετό χρόνο. Σε σπάνιες περιπτώσεις, το σύστημα αρχείων μπορεί να + υποστεί ζημιά η οποία να χρειάζεται χειροκίνητη επέμβαση για να + διορθωθεί, ενώ είναι πιθανή και η απώλεια δεδομένων. + + Η νέα δυνατότητα για journaling που παρέχεται από το GEOM μπορεί + να βοηθήσει ιδιαίτερα στις παραπάνω περιπτώσεις, ελαχιστοποιώντας το + χρόνο που απαιτείται για τον έλεγχο του συστήματος αρχείων και + εξασφαλίζοντας ότι το σύστημα θα επανέλθει πολύ σύντομα σε σταθερή + κατάσταση. + + Το άρθρο αυτό περιγράφει μια διαδικασία για την υλοποίηση του UFS + journaling σε ένα τυπικό desktop PC (στο οποίο χρησιμοποιείται ένας + σκληρός δίσκος τόσο για το σύστημα όσο και για τα δεδομένα). Θα πρέπει + να ακολουθήσετε αυτές τις οδηγίες κατά τη διάρκεια μιας νέας + εγκατάστασης του &os;. Τα βήματα είναι αρκετά απλά και δεν απαιτούν + ιδιαίτερα πολύπλοκες εντολές. + + Αφού διαβάσετε αυτό το άρθρο, θα ξέρετε: + + + + Πως να δεσμεύσετε κάποιο χώρο στο δίσκο για το journaling κατά + τη διάρκεια μιας νέας εγκατάστασης του &os;. + + + + Πως να φορτώσετε και να ενεργοποιήσετε το άρθρωμα (module) + geom_journal (ή πως να ενσωματώσετε τη + λειτουργία του στον προσαρμοσμένο πυρήνα σας). + + + + Πως να μετατρέψετε τα υπάρχοντα συστήματα αρχείων σας ώστε + να χρησιμοποιούν journaling, και τι παραμέτρους θα πρέπει να δώσετε + στο /etc/fstab ώστε να τα προσαρτήσετε. + + + + Πως να ενεργοποιήσετε το journaling σε νέες (άδειες) + κατατμήσεις. + + + + Πως να αντιμετωπίσετε προβλήματα που σχετίζονται με το + journaling. + + + + Πριν διαβάσετε αυτό το άρθρο, θα πρέπει: + + + + Να κατανοείτε βασικές έννοιες του &unix; και του &os;. + + + + Να είστε εξοικειωμένος με τη διαδικασία εγκατάστασης του &os; + και το βοηθητικό πρόγραμμα + sysinstall. + + + + + Η διαδικασία που περιγράφεται εδώ, προορίζεται για χρήση σε νέες + εγκαταστάσεις, όπου δεν υπάρχουν ακόμα αποθηκευμένα δεδομένα χρήστη. + Αν και είναι δυνατόν να τροποποιήσετε και να επεκτείνετε τη + διαδικασία αυτή σε μηχανήματα που βρίσκονται ήδη σε κανονική χρήση, + θα πρέπει οπωσδήποτε να + πάρετε αντίγραφα ασφαλείας όλων των σημαντικών + δεδομένων πριν επιχειρήσετε οποιαδήποτε αλλαγή. Όταν κάνετε αλλαγές + στα συστήματα αρχείων και στις κατατμήσεις των δίσκων σε τέτοιο + επίπεδο, είναι πιθανόν να κάνετε λάθη τα οποία θα αποβούν μοιραία για + τα δεδομένα σας. + + + + + Κατανόηση του journaling στο &os; + + Το journaling που παρέχεται από το GEOM στο &os; 7.X δεν + είναι προσανατολισμένο σε κάποιο συγκεκριμένο σύστημα αρχείων (όπως για + παράδειγμα συμβαίνει με το σύστημα αρχείων ext3 στο &linux;) αλλά + λειτουργεί σε επίπεδο block. Αν και αυτό σημαίνει ότι μπορεί να + χρησιμοποιηθεί σε διαφορετικά συστήματα αρχείων, για το + &os; 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 θα είναι ο παροχέας + ημερολογίου. Η νέα αυτή συσκευή θα χρησιμοποιείται πλέον για όλες + τις εργασίες που θα εκτελούνται στο σύστημα αρχείων. + + + + Ο χώρος στο δίσκο που απαιτείται για το ημερολόγιο εξαρτάται από + τη χρήση του συστήματος αρχείων, και όχι από το μέγεθος του παροχέα + δεδομένων. Για παράδειγμα, σε ένα τυπικό μηχάνημα γραφείου, θα είναι + αρκετό να χρησιμοποιήσετε 1Gb για τον παροχέα ημερολογίου του + συστήματος αρχείων /usr, ενώ σε ένα μηχάνημα το + οποίο χρησιμοποιείται σε εργασίες όπου οι εγγραφές στο δίσκο είναι πολύ + συχνές και μεγάλες σε μέγεθος (π.χ. επεξεργασία video) θα χρειαστείτε + περισσότερο χώρο. Σε περίπτωση που ο χώρος που έχει δεσμευθεί για το + ημερολόγιο εξαντληθεί πριν γίνει δυνατή η εγγραφή δεδομένων στο + κανονικό σύστημα αρχείων, το σύστημα θα καταρρεύσει με kernel + panic. + + Για περισσότερες πληροφορίες σχετικά με το journaling, παρακαλούμε + διαβάστε τη σελίδα manual του &man.gjournal.8;. + + + + Βήματα κατά την εγκατάσταση του &os; + + + Δέσμευση χώρου στο δίσκο για το journaling + + Ένα τυπικό desktop μηχάνημα, έχει συνήθως ένα σκληρό δίσκο στον + οποίο αποθηκεύονται τόσο το λειτουργικό όσο και τα δεδομένα του + χρήστη. Συνήθως, οι προεπιλεγμένες κατατμήσεις που δημιουργούνται + από το sysinstall είναι περίπου σωστές: + Ένα desktop μηχάνημα δεν χρειάζεται μεγάλη κατάτμηση + /var, ενώ το μεγαλύτερο μέρος του ελεύθερου + χώρου αποδίδεται στο /usr, αφού στους + υποκαταλόγους του αποθηκεύονται τα δεδομένα του χρήστη και γίνονται + και οι εγκαταστάσεις του λογισμικού. + + Χρησιμοποιώντας τις προεπιλεγμένες κατατμήσεις (αυτές που + δημιουργεί ο επεξεργαστής disklabel όταν πιέσετε το + A), δεν μένει καθόλου ελεύθερος χώρος. Ωστόσο κάθε + κατάτμηση στην οποία θέλετε να χρησιμοποιήσετε journaling, χρειάζεται + ακόμα μία για την αποθήκευση του ημερολογίου. Καθώς η κατάτμηση + /usr είναι η μεγαλύτερη, το πλέον λογικό είναι + να την μικρύνουμε ελαφρά ώστε να εξασφαλίσουμε το χώρο που απαιτείται + για το journaling. + + Στο παράδειγμα μας, χρησιμοποιείται ένας δίσκος μεγέθους 80Gb. + Στην ακόλουθη εικόνα φαίνονται οι προεπιλεγμένες κατατμήσεις όπως + δημιουργούνται από τον επεξεργαστή disklabel κατά την + εγκατάσταση: + + + + + + + + Αν τα παραπάνω μεγέθη είναι περίπου τα επιθυμητά για την + εγκατάσταση σας, είναι αρκετά εύκολο να ρυθμιστούν ώστε να γίνει + δυνατή η χρήση του journaling. Απλώς χρησιμοποιήστε τα + πάνω και κάτω βελάκια για να + μετακινήσετε την μπάρα επιλογής στην κατάτμηση + /usr και πιέστε το D για να + την διαγράψετε. + + Τώρα, μετακινήστε την μπάρα επιλογής στο όνομα του σκληρού δίσκου + στο άνω μέρος της οθόνης, και πιέστε C για να + δημιουργήσετε μια νέα κατάτμηση για το /usr. + Η νέα αυτή κατάτμηση θα πρέπει να είναι μικρότερη κατά 1Gb (αν έχετε + σκοπό να χρησιμοποιήσετε journaling μόνο στο + /usr), ή κατά 2Gb (αν έχετε σκοπό να + χρησιμοποιήσετε journaling τόσο στο /usr όσο και + στο /var). Στο διάλογο που θα εμφανιστεί, + επιλέξτε να δημιουργήσετε σύστημα αρχείων (file system) και γράψτε + /usr ως το σημείο προσάρτησης + (mount point). + + + Είναι αναγκαία η χρήση journaling στην κατάτμηση + /var partition; Φυσιολογικά, το journaling έχει + νόημα μόνο σε αρκετά μεγάλες κατατμήσεις. Δεν πρόκειται ωστόσο να + δημιουργηθεί κάποιο πρόβλημα αν χρησιμοποιήσετε journaling στο + /var. Αν η χρήση του συγκεκριμένου συστήματος + αρχείων είναι μικρή (το οποίο είναι και το πιθανότερο σε ένα + dekstop μηχάνημα) ίσως είναι καλή ιδέα να χρησιμοποιήσετε λιγότερο + χώρο στο δίσκο για το ημερολόγιο του. + + Στο παράδειγμα μας, θα ενεργοποιήσουμε το journaling τόσο στο + /usr όσο και στο /var. + Μπορείτε φυσικά να προσαρμόσετε αυτή τη διαδικασία σύμφωνα με τις + ανάγκες σας. + + + Για να απλοποιήσουμε, όσο είναι δυνατόν, τη διαδικασία, θα + χρησιμοποιήσουμε το sysinstall για να + δημιουργήσουμε τις κατατμήσεις που απαιτούνται για το journaling. + Ωστόσο, κατά τη διάρκεια της εγκατάστασης, το + sysinstall επιμένει να ρωτάει για σημεία + προσάρτησης σε κάθε κατάτμηση που δημιουργείται. Στο σημείο αυτό, + δεν υπάρχουν σημεία προσάρτησης για τις κατατμήσεις μας, και στην + πραγματικότητα δεν τα χρειαζόμαστε καν. Οι + κατατμήσεις που χρησιμοποιούνται για τα ημερολόγια, δεν προσαρτώνται + κάπου. + + Για να αποφύγουμε αυτά τα προβλήματα με το + sysinstall, θα δημιουργήσουμε αυτές τις + κατατμήσεις ως χώρο swap. Στο swap δεν γίνεται ποτέ προσάρτηση, + ενώ και το sysinstall δεν έχει κανένα + πρόβλημα να δημιουργήσει όσες τέτοιες κατατμήσεις χρειαζόμαστε. Μετά + την πρώτη εκκίνηση, θα πρέπει ωστόσο να επεξεργαστούμε το αρχείο + /etc/fstab και να αφαιρέσουμε τις έξτρα + καταχωρήσεις swap που δημιουργήθηκαν κατά την εγκατάσταση. + + Για να δημιουργήσετε τους χώρους swap, χρησιμοποιήστε πάλι τα + πάνω και κάτω βελάκια για να + μετακινήσετε την μπάρα επιλογής στο άνω μέρος της οθόνης του + επεξεργαστή disklabel, έτσι ώστε να είναι επιλεγμένο το όνομα του + σκληρού δίσκου. Κατόπιν, πιέστε N, δώστε το + επιθυμητό μέγεθος (1024M), και επιλέξτε + swap space από το μενού που εμφανίζεται. Επαναλάβετε + για κάθε ημερολόγιο που επιθυμείτε να δημιουργήσετε. Στο παράδειγμα + μας, δημιουργούμε δύο κατατμήσεις στις οποίες θα αποθηκεύονται τα + ημερολόγια των /usr και + /var. Το τελικό αποτέλεσμα φαίνεται στην + παρακάτω εικόνα: + + + + + + + + Μόλις ολοκληρώσετε τη δημιουργία των κατατμήσεων, σας συνιστούμε + να σημειώσετε τα ονόματα τους και τα σημεία προσάρτησης για να τα + έχετε πρόχειρα κατά τη φάση των ρυθμίσεων. Με τον τρόπο αυτό θα + αποφύγετε τυχόν λάθη που μπορεί να καταστρέψουν την εγκατάσταση σας. + Ο παρακάτω πίνακας δείχνει τις σημειώσεις μας για το παράδειγμα + μας: + + + Κατατμήσεις και ημερολόγια + + + + Κατάτμηση + Σημείο προσάρτησης + Ημερολόγιο + + + + + + ad0s1d + /var + ad0s1h + + + + ad0s1f + /usr + ad0s1g + + +
+ + Συνεχίστε την εγκατάσταση όπως συνήθως. Σας συνιστούμε ωστόσο να + μην εγκαταστήσετε εφαρμογές (πακέτα) μέχρι να ολοκληρώσετε τη + διαδικασία του journaling. +
+ + + Πρώτη εκκίνηση + + Το σύστημα σας θα ξεκινήσει φυσιολογικά, αλλά θα χρειαστεί να + επεξεργαστείτε το /etc/fstab και να διαγράψετε + τις καταχωρήσεις για τις κατατμήσεις swap που θα χρησιμοποιηθούν στα + ημερολόγια. Φυσιολογικά, η κατάτμηση που χρησιμοποιείται ως κανονικό + swap τελειώνει με το γράμμα b (π.χ. ad0s1b στο + παράδειγμα μας). Διαγράψτε όλες τις άλλες καταχωρήσεις για το swap + και επανεκκινήστε το σύστημα σας, ώστε να σταματήσει το &os; να τις + χρησιμοποιεί. + + Μόλις το σύστημα εκκινήσει ξανά, θα είμαστε έτοιμοι να ρυθμίσουμε + το journaling. + + + + Ρύθμιση του journaling + + + Εκτέλεση της εντολής gjournal + + Έχοντας προετοιμάσει όλες τις απαραίτητες κατατμήσεις, είναι + σχετικά απλό να ρυθμίσουμε το journaling. Θα πρέπει να μεταβούμε σε + κατάσταση ενός χρήστη, για το λόγο αυτό εισέλθετε στο σύστημα ως root + και γράψτε: + + &prompt.root; shutdown now + + Πιέστε enter για να βγείτε στο προεπιλεγμένο κέλυφος. Θα πρέπει + να αποπροσαρτήσουμε τις κατατμήσεις στις οποίες θα γίνει το + journaling, στο παράδειγμα μας τις + /usr και /var: + + &prompt.root; umount /usr /var + + Φορτώστε το άρθρωμα του πυρήνα που απαιτείται για το + journaling: + + &prompt.root; gjournal load + + Χρησιμοποιήστε τώρα τις σημειώσεις σας για να καθορίσετε + ποια κατάτμηση χρησιμοποιείται για κάθε ημερολόγιο. Στο + παράδειγμα μας, το /usr βρίσκεται στο + ad0s1f και το ημερολόγιο του + θα είναι στο ad0s1g, ενώ το + /var είναι στο + ad0s1d και το ημερολόγιο του θα + είναι στο ad0s1h. Θα χρειαστείτε + τις παρακάτω εντολές: + + &prompt.root; gjournal label ad0s1f ad0s1g + +GEOM_JOURNAL: Journal 2948326772: ad0s1f contains data. +GEOM_JOURNAL: Journal 2948326772: ad0s1g contains journal. + +&prompt.root; gjournal label ad0s1d ad0s1h + +GEOM_JOURNAL: Journal 3193218002: ad0s1d contains data. +GEOM_JOURNAL: Journal 3193218002: ad0s1h contains journal. + + + Αν ο τελευταίος τομέας κάποιας από τις κατατμήσεις είναι σε + χρήση, η εντολή gjournal θα σας επιστρέψει ένα + μήνυμα λάθους. Θα πρέπει να εκτελέσετε την εντολή χρησιμοποιώντας + την παράμετρο με την οποία θα υποχρεώσετε την + επανεγγραφή του τομέα, π.χ.: + + &prompt.root; gjournal label -f ad0s1d ad0s1h + + Μια που πρόκειται για νέα εγκατάσταση, είναι μάλλον απίθανο + να προκαλέσετε κάποιο πρόβλημα. + + Στο σημείο αυτό δημιουργούνται δύο νέες συσκευές, οι + ad0s1d.journal και + ad0s1f.journal. Αυτές + αντιπροσωπεύουν τις κατατμήσεις + /var και /usr + που θα πρέπει να προσαρτήσουμε. Πριν τις προσαρτήσουμε ωστόσο, + θα πρέπει να θέσουμε την επιλογή journal και να αναιρέσουμε την + επιλογή soft updates: + + &prompt.root; tunefs -J enable -n disable ad0s1d.journal + +tunefs: gjournal set +tunefs: soft updates cleared + +&prompt.root; tunefs -J enable -n disable ad0s1f.journal + +tunefs: gjournal set +tunefs: soft updates cleared + + Προσαρτήστε τώρα χειροκίνητα τις νέες συσκευές στα αντίστοιχα + σημεία προσάρτησης (σημειώστε ότι μπορούμε πλέον να χρησιμοποιήσουμε + την επιλογή async κατά την προσάρτηση): + + &prompt.root; mount -o async /dev/ad0s1d.journal /var +&prompt.root; mount -o async /dev/ad0s1f.journal /usr + + Επεξεργαστείτε το αρχείο /etc/fstab και + ανανεώστε τις καταχωρήσεις για τις κατατμήσεις + /usr και /var: + + /dev/ad0s1f.journal /usr ufs rw,async 2 2 +/dev/ad0s1d.journal /var ufs rw,async 2 2 + + + Βεβαιωθείτε ότι οι παραπάνω καταχωρήσεις είναι σωστές, + διαφορετικά θα έχετε πρόβλημα να εκκινήσετε κανονικά στην επόμενη + επανεκκίνηση του συστήματος σας. + + + Τέλος, επεξεργαστείτε το αρχείο + /boot/loader.conf και προσθέστε την ακόλουθη + γραμμή ώστε να φορτώνεται το άρθρωμα &man.gjournal.8; σε κάθε + εκκίνηση: + + geom_journal_load="YES" + + Συγχαρητήρια! Το σύστημα σας είναι τώρα έτοιμο για journaling. + Μπορείτε να γράψετε exit για να επιστρέψετε στην + κανονική λειτουργία (πολλαπλών χρηστών) ή να επανεκκινήσετε το σύστημα + σας (συνίσταται) για να ελέγξετε τις ρυθμίσεις σας. Κατά την + εκκίνηση, θα δείτε μηνύματα όπως το παρακάτω: + + ad0: 76293MB XEC XE800JD-00HBC0 08.02D08 at ata0-master SATA150 +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. + + Μετά από ένα προβληματικό τερματισμό θα δείτε μηνύματα όπως το + παρακάτω: + + GEOM_JOURNAL: Journal ad0s1d consistent. + + Αυτό συνήθως σημαίνει ότι το &man.gjournal.8; χρησιμοποίησε τις + πληροφορίες του ημερολογίου για να επιστρέψει το σύστημα αρχείων + σε σταθερή κατάσταση. + + + + Χρήση του journaling σε νέες κατατμήσεις + + Αν και η παραπάνω διαδικασία είναι απαραίτητη για να + χρησιμοποιήσετε journaling σε κατατμήσεις που έχουν ήδη δεδομένα, η + αντίστοιχη διαδικασία για νέες κατατμήσεις είναι πιο απλή. Στην + περίπτωση αυτή, μπορεί να χρησιμοποιηθεί ο ίδιος παροχέας τόσο για + τα δεδομένα όσο και για το ημερολόγιο. Για παράδειγμα, υποθέστε ότι + έχετε προσθέσει ένα νέο δίσκο και έχετε δημιουργήσει την κατάτμηση + /dev/ad1s1d. Η δημιουργία του + ημερολογίου είναι αρκετά απλή και φαίνεται παρακάτω: + + &prompt.root; gjournal label ad1s1d + + Το προεπιλεγμένο μέγεθος του ημερολογίου είναι 1Gb. Μπορείτε + ωστόσο να το ρυθμίσετε χρησιμοποιώντας την επιλογή + . Μπορείτε να δώσετε τιμές σε bytes, ή να βάλετε + μετά την τιμή ένα από τα γράμματα K, + M ή G για να δηλώσετε + Kilobytes, Megabytes ή Gigabytes αντίστοιχα. Σημειώστε ότι η εντολή + gjournal, δεν θα σας επιτρέψει να δημιουργήσετε + ημερολόγιο που να είναι ακατάλληλο λόγω μικρού μεγέθους. + + Για παράδειγμα, για να δημιουργήσετε ένα ημερολόγιο μεγέθους 2Gb, + μπορείτε να χρησιμοποιήσετε την ακόλουθη εντολή: + + &prompt.root; gjournal label -s 2G ad1s1d + + Μπορείτε έπειτα να δημιουργήσετε ένα σύστημα αρχείων στη νέα σας + κατάτμηση, και ταυτόχρονα να ενεργοποιήσετε το journaling, + χρησιμοποιώντας την επιλογή : + + &prompt.root; newfs -J /dev/ad1s1d.journal + + + + Ενσωμάτωση του journaling σε προσαρμοσμένο πυρήνα + + Αν δεν θέλετε να φορτώσετε το geom_journal ως + άρθρωμα, μπορείτε να ενσωματώσετε τις λειτουργίες του στον + προσαρμοσμένο πυρήνα σας. Επεξεργαστείτε το αρχείο ρυθμίσεων του + πυρήνα, και βεβαιωθείτε ότι περιλαμβάνει τις ακόλουθες δύο + γραμμές: + + options UFS_GJOURNAL # Σημείωση: η επιλογή αυτή υπάρχει στο GENERIC + +options GEOM_JOURNAL # Θα πρέπει να προσθέσετε αυτή τη γραμμή + + Μεταγλωττίστε και επανεγκαταστήστε τον πυρήνα σας χρησιμοποιώντας + τις σχετικές + οδηγίες στο Εγχειρίδιο του &os;. + + Μην ξεχάσετε να αφαιρέσετε την αντίστοιχη καταχώρηση + load από το αρχείο + /boot/loader.conf αν την είχατε χρησιμοποιήσει + προηγουμένως. + + + + + Αντιμετώπιση προβλημάτων + + Το ακόλουθο τμήμα καλύπτει συχνές ερωτήσεις σχετικά με προβλήματα + που μπορείτε να συναντήσετε στην υλοποίηση του jounaling. + + + + + Κατά τη διάρκεια έντονης χρήσης του δίσκου, το σύστημα μου + σταματάει με kernel panic. Υπάρχει περίπτωση αυτό να σχετίζεται + με το journaling; + + + + Είναι πιθανό το ημερολόγιο να γεμίζει πριν προλάβουν τα + προηγούμενα δεδομένα του να μεταφερθούν στο σύστημα αρχείων. Θα + πρέπει να θυμάστε ότι το μέγεθος του ημερολογίου δεν εξαρτάται + από το μέγεθος του παροχέα δεδομένων, αλλά από το φόρτο εργασίας + του. Αν η δραστηριότητα του δίσκου σας είναι υψηλή, θα + χρειαστείτε μεγαλύτερο μέγεθος για την κατάτμηση του + ημερολογίου. + + + + + + Έκανα κάποιο λάθος στις ρυθμίσεις, και δεν μπορώ πλέον να + ξεκινήσω κανονικά το σύστημα μου. Υπάρχει τρόπος να το + διορθώσω; + + + + Πιθανόν ξεχάσατε να προσθέσετε (ή έχετε κάνει λάθος) την + καταχώρηση στο /boot/loader.conf, ή ίσως + υπάρχει λάθος στο αρχείο /etc/fstab. Τα + λάθη αυτά συνήθως διορθώνονται εύκολα. Πιέστε enter για να + ξεκινήσετε το προεπιλεγμένο κέλυφος λειτουργίας ενός χρήστη. Μετά + εντοπίστε την πηγή του προβλήματος: + + &prompt.root; cat /boot/loader.conf + + Αν λείπει ή υπάρχει λάθος στην καταχώρηση + geom_journal_load, οι αντίστοιχες συσκευές + δεν δημιουργούνται καν. Μπορείτε να φορτώσετε το άρθρωμα + χειροκίνητα, να προσαρτήσετε όλες τις κατατμήσεις, και να + συνεχίσετε με την κανονική εκκίνηση: + + &prompt.root; 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. + +&prompt.root; mount -a +&prompt.root; exit +(η εκκίνηση συνεχίζεται) + + Αν ωστόσο η καταχώρηση αυτή είναι σωστή, ρίξτε μια ματιά + στο αρχείο /etc/fstab. Το πιο πιθανό είναι + να βρείτε ότι κάποια καταχώρηση λείπει, ή είναι λάθος. + Στην περίπτωση αυτή, προσαρτήστε χειροκίνητα όλες τις κατατμήσεις + και συνεχίστε την εκκίνηση κανονικά. + + + + + + Μπορώ να καταργήσω το journaling και να επιστρέψω στο + κανονικό σύστημα αρχείων με τα soft updates; + + + + Βέβαια. Χρησιμοποιήστε την ακόλουθη διαδικασία η οποία + αναιρεί τις αλλαγές. Μπορείτε έπειτα να χρησιμοποιήσετε τις + κατατμήσεις των ημερολογίων για άλλο σκοπό, εφόσον το + επιθυμείτε. + + Εισέλθετε ως root και μεταβείτε σε κατάσταση ενός + χρήστη: + + &prompt.root; shutdown now + + Συγχρονίστε τα ημερολόγια: + + &prompt.root; gjournal sync + + Αποπροσαρτήστε τις κατατμήσεις που χρησιμοποιούν + journaling: + + &prompt.root; umount /usr /var + + Σταματήστε τους παροχείς ημερολογίου: + + &prompt.root; gjournal stop ad0s1d.journal +&prompt.root; gjournal stop ad0s1f.journal + + Διαγράψτε τα metadata του journaling από όλες τις συσκευές + που χρησιμοποιήσατε: + + &prompt.root; gjournal clear ad0s1d +&prompt.root; gjournal clear ad0s1f +&prompt.root; gjournal clear ad0s1g +&prompt.root; gjournal clear ad0s1h + + Αναιρέστε την επιλογή του journaling, και θέστε ξανά την + επιλογή για soft updates: + + &prompt.root; tunefs -J disable -n enable ad0s1d + +tunefs: gjournal cleared +tunefs: soft updates set + +&prompt.root; tunefs-J disable -n enable ad0s1f + +tunefs: gjournal cleared +tunefs: soft updates set + + Προσαρτήστε χειροκίνητα τις κανονικές κατατμήσεις: + + &prompt.root; mount -o rw /dev/ad0s1d /var +&prompt.root; 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 και + επανεκκινήστε το σύστημα σας. + + + + + + + + Επιπλέον πληροφορίες + + Το journaling είναι μια σχετικά νέα δυνατότητα του &os;, και έτσι + δεν είναι ακόμα καλά τεκμηριωμένη. Ίσως όμως να βρείτε χρήσιμες + πληροφορίες στις παρακάτω αναφορές: + + + + Υπάρχει ένα νέο τμήμα για το journaling + στο Εγχειρίδιο του &os;. + + + + Αυτή η δημοσίευση στη λίστα + &a.current.name; από τον δημιουργό του &man.gjournal.8;, &a.pjd;. + + + + Αυτή η δημοσίευση στη λίστα + &a.questions.name; από τον Ivan Voras. + + + + Οι σελίδες manual του &man.gjournal.8; και &man.geom.8;. + + + +
+ +