Κεφάλαιο 9 Δίσκοι, Συστήματα Αρχείων και Φορτωτές Εκκίνησης

9.1. Πως μπορώ να προσθέσω ένα καινούριο δίσκο στο FreeBSD σύστημα μου;
9.2. Πως μπορώ να μεταφέρω το σύστημα μου στον καινούριο μου τεράστιο δίσκο;
9.3. Κινδυνεύει η υγεία μου αν χρησιμοποιήσω δίσκο σε «επικίνδυνα αφοσιωμένη» κατάσταση λειτουργίας;
9.4. Σε ποιες κατατμήσεις είναι ασφαλές να χρησιμοποιήσω τα Soft Updates; ¶κουσα ότι μπορούν να δημιουργήσουν πρόβλημα στο /.
9.5. Τι δεν είναι σωστό στο ccd(4);
9.6. Γιατί δεν μπορώ να αλλάξω τις ετικέτες (disk labels) στις συσκευές ccd(4);
9.7. Μπορώ να προσαρτήσω συστήματα αρχείων άλλων λειτουργικών συστήματων στο FreeBSD;
9.8. Πως μπορώ να προσαρτήσω μια δευτερεύουσα κατάτμηση του DOS;
9.9. Υπάρχει κρυπτογραφημένο σύστημα αρχείων για το FreeBSD;
9.10. Πως μπορώ να χρησιμοποιήσω το φορτωτή εκκίνησης των Windows NT® για να ξεκινήσω το FreeBSD;
9.11. Πως μπορώ να ξεκινήσω το FreeBSD και το Linux® μέσω LILO;
9.12. Πως μπορώ να εκκινήσω FreeBSD και Linux χρησιμοποιώντας το GRUB;
9.13. Πως μπορώ να εκκινήσω FreeBSD και Linux χρησιμοποιώντας το BootEasy;
9.14. Πως μπορώ να αλλάξω την προτροπή εκκίνησης από ??? σε κάτι που να έχει νόημα;
9.15. Έχω ένα καινούριο αφαιρούμενο οδηγό δίσκο, πως μπορώ να τον χρησιμοποιήσω;
9.16. Γιατί παίρνω το μήνυμα Incorrect super block όταν προσπαθώ να προσαρτήσω ένα CD-ROM;
9.17. Γιατί παίρνω το μήνυμα Device not configured όταν προσαρτώ ένα CD-ROM;
9.18. Γιατί όταν προσαρτώ το CD μου στο FreeBSD όλοι οι μη-Αγγλικοί χαρακτήρες φαίνονται σαν «?»;
9.19. Έγραψα ένα CD στο FreeBSD και τώρα δεν μπορώ να το διαβάσω από οποιοδήποτε άλλο λειτουργικό σύστημα. Γιατί;
9.20. Πως μπορώ να δημιουργήσω μια εικόνα (image) ενός CD δεδομένων;
9.21. Γιατί δεν μπορώ να προσαρτήσω μέσω της mount ένα μουσικό CD;
9.22. Πως μπορώ να προσαρτήσω μέσω της mount ένα CD με πολλαπλά session;
9.23. Πως μπορώ να επιτρέψω σε απλούς χρήστες να προσαρτούν δισκέτες, CD-ROM και άλλα αφαιρούμενα μέσα;
9.24. Οι εντολές du και df δείχνουν διαφορετικά αποτελέσματα για τον διαθέσιμο ελεύθερο χώρο στο δίσκο. Τι συμβαίνει;
9.25. Πως μπορώ να προσθέσω περισσότερο χώρο εικονικής μνήμης (swap);
9.26. Γιατί το FreeBSD βλέπει το δίσκο μου μικρότερο από αυτό που αναφέρει ο κατασκευαστής του;
9.27. Πως είναι δυνατόν μια κατάτμηση να είναι γεμάτη περισσότερο από 100%;

9.1. Πως μπορώ να προσθέσω ένα καινούριο δίσκο στο FreeBSD σύστημα μου;

Δείτε την ενότητα Προσθήκη Δίσκων στο Εγχειρίδιο του FreeBSD.

9.2. Πως μπορώ να μεταφέρω το σύστημα μου στον καινούριο μου τεράστιο δίσκο;

Η καλύτερη μέθοδος είναι να επανεγκαταστήσετε το λειτουργικό στον καινούριο σας δίσκο και έπειτα να μεταφέρετε σε αυτόν τα δεδομένα των χρηστών. Σας το συνιστούμε, ειδικά αν ακολουθείτε το κλάδο -STABLE για χρονικό διάστημα που καλύπτει περισσότερο από μια έκδοση, ή αν έχετε αναβαθμίσει το σύστημα σας από μια προηγούμενη έκδοση (αντί να κάνετε νέα εγκατάσταση). Μπορείτε να εγκαταστήσετε το booteasy και στους δύο δίσκους μέσω της boot0cfg(8), και να έχετε δυνατότητα dual boot μέχρι να βεβαιωθείτε ότι η νέα εγκατάσταση λειτουργεί ικανοποιητικά. Δείτε την μεθεπόμενη παράγραφο για να μάθετε πως να μετακινήσετε τα δεδομένα των χρηστών αφού τελειώσετε με την παραπάνω διαδικασία.

Αν αποφασίσετε να μην κάνετε φρέσκια εγκατάσταση, θα πρέπει να δημιουργήσετε slices και κατατμήσεις στο νέο δίσκο, είτε μέσω του sysinstall(8), ή της fdisk(8) και disklabel(8). Θα πρέπει επίσης να εγκαταστήσετε το booteasy και στους δύο δίσκους μέσω της boot0cfg(8), ώστε να μπορείτε να εκκινήσετε είτε την παλιά είτε την νέα εγκατάσταση μετά το τέλος της αντιγραφής. Δείτε το άρθρο Διαμόρφωση Μέσων για λεπτομέρειες σχετικά με αυτή τη διαδικασία.

Ο νέος σας δίσκος είναι πλέον έτοιμος και πρόκειται να αρχίσετε την μεταφορά των δεδομένων. Δυστυχώς δεν μπορείτε απλώς να αντιγράψετε τα δεδομένα. Ειδικά αρχεία (όπως αυτά που βρίσκονται στον κατάλογο /dev), flags, και δεσμοί δεν μπορούν να αντιγραφούν κανονικά. Θα πρέπει να χρησιμοποιήσετε εργαλεία που αντιλαμβάνονται αυτές τις ειδικές περιπτώσεις, όπως για παράδειγμα το dump(8). Αν και συνίσταται η μεταφορά να γίνει σε κατάσταση λειτουργίας ενός χρήστη (single user mode), δεν είναι ωστόσο υποχρεωτικό.

Δεν πρέπει ποτέ να χρησιμοποιήσετε κάτι άλλο εκτός από dump(8) και restore(8) για να μετακινήσετε το ριζικό (root) σύστημα αρχείων. Η εντολή tar(1) μπορεί να δουλέψει, μπορεί και όχι. Θα πρέπει επίσης να χρησιμοποιήσετε τις dump(8) και restore(8) για να μετακινήσετε μια κατάτμηση σε μια νέα άδεια κατάτμηση. Τα βήματα που πρέπει να ακολουθήσετε με χρήση της dump για να μετακινήσετε τα δεδομένα μιας κατάτμησης σε μια νέα, είναι:

  1. Χρησιμοποιήστε την εντολή newfs στη νέα κατάτμηση.

  2. Προσαρτήστε την νέα κατάτμηση χρησιμοποιώντας την εντολή mount σε ένα προσωρινό σημείο προσάρτησης.

  3. Χρησιμοποιήστε την εντολή cd για να μετακινηθείτε σε αυτό τον κατάλογο.

  4. Χρησιμοποιήστε την εντολή dump στην παλιά κατάτμηση, διοχετεύοντας (piping) την έξοδο της εντολή προς τη νέα κατάτμηση.

Για παράδειγμα, αν πρόκειται να μετακινήσετε το ριζικό σύστημα αρχείων από το /dev/ad1s1a, στο /mnt (το οποίο είναι το προσωρινό σημείο προσάρτησης της νέας κατάτμησης), γράψτε:

# newfs /dev/ad1s1a
# mount /dev/ad1s1a /mnt
# cd /mnt
# dump 0af - / | restore rf -

Η διαδικασία είναι ελαφρά πιο πολύπλοκη, αν επιθυμείτε να ανακατανείμετε τις κατατμήσεις σας χρησιμοποιώντας τη dump. Για να συγχωνεύσετε μια κατάτμηση όπως την /var μέσα στη γονική της, φτιάξτε μια νέα κατάτμηση με αρκετό χώρο για τα δεδομένα και των δύο, και έπειτα μετακινήστε την μέσα στον άδειο κατάλογο που δημιουργήθηκε κατά τη μετακίνηση της γονικής:

# newfs /dev/ad1s1a
# mount /dev/ad1s1a /mnt
# cd /mnt
# dump 0af - / | restore rf -
# cd var
# dump 0af - /var | restore rf -

Για να χωρίσετε ένα κατάλογο από τον γονικό του, ώστε π.χ. να έχετε το /var σε δική του κατάτμηση, αν πριν ήταν σε ένα κατάλογο, δημιουργήστε και τις δύο κατατμήσεις και έπειτα προσαρτήστε την νέα ανεξάρτητη κατάτμηση στον κατάληλλο κατάλογο του προσωρινού σημείου προσάρτησης. Μπορείτε έπειτα να μετακινήσετε τα δεδομένα της παλιάς μοναδικής κατάτμησης:

# newfs /dev/ad1s1a
# newfs /dev/ad1s1d
# mount /dev/ad1s1a /mnt
# mkdir /mnt/var
# mount /dev/ad1s1d /mnt/var
# cd /mnt
# dump 0af - / | restore rf -

Ίσως προτιμάτε να χρησιμοποιήσετε τις εντολές cpio(1), pax(1), tar(1) αντί για την dump(8) για να μεταφέρετε τα δεδομένα των χρηστών. Την ώρα που γράφονται αυτές οι γραμμές, οι παραπάνω εντολές δεν μπορούν να χειριστούν τα flags των αρχείων, οπότε καλό είναι να τις μεταχειρίζεστε με προσοχή.

9.3. Κινδυνεύει η υγεία μου αν χρησιμοποιήσω δίσκο σε «επικίνδυνα αφοσιωμένη» κατάσταση λειτουργίας;

Η διαδικασία εγκατάστασης σας επιτρέπει να επιλέξετε ανάμεσα σε δύο διαφορετικές μεθόδους κατάτμησης των σκληρών σας δίσκων. Η προεπιλεγμένη μέθοδος είναι συμβατή με άλλα λειτουργικά συστήματα που μπορείτε να έχετε εγκατεστημένα στο ίδιο μηχάνημα, και χρησιμοποιεί καταχωρίσεις σε ένα πίνακα κατατμήσεων που δημιουργούνται με την fdisk(8) (οι κατατμήσεις αυτές στην πραγματικότητα καλούνται «slices» στην ορολογία του FreeBSD). Σε αυτή την περίπτωση δημιουργείται ένα slice για το FreeBSD το οποίο κατόπιν χωρίζεται εσωτερικά σε περισσότερες κατατμήσεις. Προαιρετικά, είναι δυνατή η εγκατάσταση ενός συστήματος επιλογής λειτουργικού: κατά την εκκίνηση ζητείται από το χρήστη να επιλέξει το λειτουργικό που θα εκκινήσει, εφόσον υπάρχουν εγκατεστημένα περισσότερα από ένα. Η εναλλακτική μέθοδος χρησιμοποιεί ολόκληρο το δίσκο για το FreeBSD και δεν προσπαθεί να επιτύχει συμβατότητα με άλλα λειτουργικά συστήματα.

Γιατί λοιπόν ονομάζουμε αυτή την κατάσταση «επικίνδυνη»; Ένας δίσκος που λειτουργεί με αυτό τον τρόπο δεν περιέχει αυτό έγκυρες καταχωρίσεις του τύπου fdisk(8), τις οποίες αναγνωρίζουν τα περισσότερα βοηθητικά προγράμματα δίσκων των PC. Ανάλογα με το πόσο καλά είναι σχεδιασμένα αυτά τα προγράμματα, μπορεί να παραπονεθούν ότι δεν αναγνωρίζουν το δίσκο, ή ακόμα χειρότερα, να καταστρέψουν τις πληροφορίες εκκίνησης του BSD χωρίς να σας ρωτήσουν ή να σας ειδοποιήσουν. Επιπρόσθετα η «επικίνδυνα αφοσιωμένη» κατάσταση λειτουργίας είναι γνωστό ότι προκαλεί σύγχυση σε αρκετά BIOS, συμπεριλαμβανομένων και αυτών της AWARD (τα οποία θα βρείτε σε αρκετούς εξυπηρετητής Netserver της HP και σε συστήματα της Micronics, αλλά και σε πολλά άλλα) και της Symbios/NCR (της γνωστής σειράς ελεγκτών SCSI 53C8xx). Δεν πρόκειται για πλήρη λίστα, υπάρχουν και άλλα BIOS που επηρεάζονται. Συμπτώματα της σύγχυσης περιλαμβάνουν μηνύματα του τύπου read error τα οποία εμφανίζονται από τον κώδικα εκκίνησης του FreeBSD όταν δεν μπορεί να εντοπίσει κάποια τμήματα του, καθώς και παγώματα κατά τη διαδικασία εκκίνησης.

Γιατί να υπάρχει τότε αυτή η κατάσταση λειτουργίας; Το μόνο που κερδίζουμε είναι μερικά kilobytes ελεύθερου χώρου, ενώ μπορεί να προκαλέσει πραγματικά προβλήματα σε μια νέα εγκατάσταση. Η ύπαρξη της «επικίνδυνα αφοσιωμένης» κατάστασης λειτουργίας οφείλεται στην επιθυμία να ξεπεραστεί ένα από τα πιο συνηθισμένα προβλήματα που επηρεάζουν το πρόγραμμα εγκατάστασης του FreeBSD -- το ταίριασμα της γεωμετρίας του δίσκου που δίνει το BIOS, με την πραγματική γεωμετρία.

Η ίδια η έννοια της «Γεωμετρίας» είναι ήδη ξεπερασμένη, αλλά βρίσκεται στην καρδία του BIOS του PC και στον τρόπο με τον οποίο αλληλεπιδρά με τους δίσκους. Όταν το πρόγραμμα εγκατάστασης του FreeBSD δημιουργεί κατατμήσεις (slices) θα πρέπει να καταγράψει την θέση τους στο δίσκο, με τρόπο που να αντιστοιχεί σε αυτόν που αναμένει το BIOS του μηχανήματος να τα βρει. Αν αυτό δεν γίνει σωστά, η εκκίνηση του λειτουργικού δεν θα είναι δυνατή.

Η «επικίνδυνα αφοσιωμένη» κατάσταση προσπαθεί να ξεπεράσει αυτό το πρόβλημα, απλοποιώντας το. Σε μερικές περιπτώσεις, φαίνεται να δουλεύει σωστά. Αλλά είναι σκόπιμο να χρησιμοποιείται ως τελευταία εναλλακτική. Στις περισσότερες περιπτώσεις, υπάρχουν καλύτεροι τρόποι επίλυσης του προβλήματος.

Πως όμως μπορείτε να αποφύγετε την χρήση της επικίνδυνα αφοσιωμένης κατάστασης όταν κάνετε μια νέα εγκατάσταση; Ξεκινήστε σημειώνοντας τη γεωμετρία που ισχυρίζεται το BIOS του μηχανήματος ότι χρησιμοποιεί για τους δίσκους σας. Μπορείτε να ορίσετε στον πυρήνα να τυπώνει αυτή την πληροφορία, δίνοντας την παράμετρο -v στην προτροπή boot: ή χρησιμοποιώντας την εντολή boot -v στο φορτωτή εκκίνησης (loader). Αμέσως πριν την εκκίνηση του προγράμματος εγκατάστασης, ο πυρήνας θα τυπώσει μια λίστα με τις γεωμετρίες που έχει αναγνωρίσει το BIOS. Μην πανικοβληθείτε: περιμένετε να τελειώσει η φόρτωση του προγράμματος εγκατάστασης, και χρησιμοποιήστε την κύλιση κειμένου προς τα πίσω για να διαβάσετε τους αριθμούς. Τυπικά, οι δίσκοι στο BIOS θα εμφανίζονται με την ίδια σειρά που αναγνωρίζονται και από το FreeBSD, πρώτα οι δίσκοι IDE και μετά οι SCSI.

Όταν δημιουργείτε κατατμήσεις στο σκληρό σας δίσκο, ελέγξτε ότι η γεωμετρία που εμφανίζεται στην οθόνη του FDISK είναι σωστή (ταιριάζει δηλαδή με τους αριθμούς που δίνει το BIOS). Αν είναι λάθος, χρησιμοποιήστε το πλήκτρο G για να την διορθώσετε. Ίσως χρειαστεί να το κάνετε αυτό αν δεν υπάρχει τίποτα στο δίσκο, ή αν μεταφέρατε το δίσκο από κάποιο άλλο σύστημα. Σημειώστε ότι αυτό το πρόβλημα υπάρχει μόνο με το δίσκο εκκίνησης. Το FreeBSD θα καταφέρει να χρησιμοποιήσει χωρίς πρόβλημα οποιοδήποτε άλλο δίσκο έχετε.

Από τη στιγμή που θα επιτύχετε τη συμφωνία του BIOS και του FreeBSD όσο αφορά τη γεωμετρία του δίσκου, τα προβλήματα σας είναι σχεδόν σίγουρο ότι θα έχουν λυθεί, χωρίς να χρειαστεί να χρησιμοποιήσετε καθόλου την επικίνδυνα αφοσιωμένη κατάσταση. Αν όμως εξακολουθείτε να λαμβάνετε το μήνυμα read error όταν προσπαθείτε να εκκινήσετε, είναι ώρα να δοκιμάσετε την επικίνδυνα αφοσιωμένη κατάσταση. Έτσι και αλλιώς, δεν έχετε τίποτα να χάσετε!

Για να επιστρέψετε ένα δίσκο από την «επικίνδυνα αφοσιωμένη» κατάσταση σε κανονική λειτουργία, έχετε δύο βασικές επιλογές. Η πρώτη είναι να γράψετε μηδενικά πάνω στο MBR για να κάνετε το σύστημα σας να πιστεύει ότι ο δίσκος αυτός είναι άδειος. Αυτό μπορεί να γίνει με την παρακάτω εντολή:

# dd if=/dev/zero of=/dev/rda0 count=15

Εναλλακτικά, μπορείτε να χρησιμοποιήσετε το παρακάτω «χαρακτηριστικό» του DOS για το οποίο φαίνεται ότι δεν είναι κάπου τεκμηριωμένο:

C:\> fdisk /mbr

Το παραπάνω θα εγκαταστήσει καινούριο MBR, με αποτέλεσμα να σβηστεί και ο κώδικας εκκίνησης του BSD.

9.4. Σε ποιες κατατμήσεις είναι ασφαλές να χρησιμοποιήσω τα Soft Updates; ¶κουσα ότι μπορούν να δημιουργήσουν πρόβλημα στο /.

Γρήγορη απάντηση: μπορείτε συνήθως να χρησιμοποιήσετε τα Soft Updates με ασφάλεια σε όλες τις κατατμήσεις.

Μεγάλη απάντηση: Παλιότερα υπήρχαν κάποια θέματα με τη χρήση των Soft Updates στην ριζική (root) κατάτμηση. Υπάρχουν δύο χαρακτηριστικά των Soft Updates που ευθύνονται για αυτό. Το ένα είναι ότι υπάρχει μια μικρή πιθανότητα απώλειας δεδομένων σε περίπτωση που το σύστημα κρεμάσει (δεν θα υπάρξει πρόβλημα με την κατάτμηση, απλώς θα χαθούν δεδομένα). Επίσης, τα Soft Updates μπορούν να δημιουργησούν προσωρινή μείωση του ελεύθερου χώρου.

Όταν γίνεται χρήση των Soft Updates, ο πυρήνας μπορεί να καθυστερήσει ως και τριάντα δευτερόλεπτα για να γράψει στην πραγματικότητα τις αλλαγές στο φυσικό δίσκο. Αν διαγράψετε ένα μεγάλο αρχείο, το αρχείο θα εξακολουθεί να βρίσκεται στο δίσκο μέχρι ο πυρήνας να το διαγράψει πραγματικά. Αυτό μπορεί να προκαλέσει μια πολύ απλή κατάσταση ανταγωνισμού (race). Ας υποθέσουμε ότι διαγράφετε ένα μεγάλο αρχείο και αμέσως μετά δημιουργείτε ένα άλλο μεγάλο αρχείο. Το πρώτο μεγάλο αρχείο δεν έχει στην πραγματικότητα διαγραφεί ακόμα από το δίσκο, έτσι ο δίσκος ίσως δεν έχει αρκετό χώρο για το δεύτερο μεγάλο αρχείο. Λαμβάνετε ένα μήνυμα λάθους ότι ο δίσκος δεν έχει αρκετό ελεύθερο χώρο ενώ γνωρίζετε πολύ καλά ότι μόλις απελευθερώσατε ένα αρκετά μεγάλο κομμάτι. Όταν προσπαθήσετε ξανά, λίγα δευτερόλεπτα μετά, η δημιουργία του αρχείου λειτουργεί κανονικά, όπως ήταν αναμενόμενο. Αυτό έχει οδηγήσει πολλούς χρήστες να ξύνουν το κεφάλι τους και να αναρρωτιούνται αν έχουν χάσει αυτοί τα λογικά τους, ή το σύστημα αρχείων του FreeBSD, ή και τα δύο.

Αν ένα σύστημα κρεμάσει καθώς ο πυρήνας περιμένει να γράψει ένα μεγάλο όγκο δεδομένων στο δίσκο, ίσως υπάρξει απώλεια ή καταστροφή δεδομένων. Η πιθανότητα είναι εξαιρετικά μικρή αλλά όχι αδύνατη. Αυξάνεται πολύ περισσότερο αν γίνεται χρήση της λανθάνουσας μνήμης (cache) των δίσκων IDE. Συνιστούμε να απενεργοποιήσετε την cache εγγραφής του IDE όταν χρησιμοποιείτε Soft Updates.

Τα παραπάνω προβλήματα αφορούν όλες τις κατατμήσεις που χρησιμοποιούν Soft Updates. Τι σημαίνει αυτό ειδικά για την ριζική κατάτμηση;

Οι κρίσιμες πληροφορίες στην ριζική κατάτμηση αλλάζουν πολύ σπάνια. Αρχεία όπως το /boot/kernel/kernel και τα περιεχόμενα του /etc αλλάζουν μόνο κατά την συντήρηση του συστήματος, ή όταν οι χρήστες αλλάζουν τους κωδικούς τους. Αν το σύστημα κρεμάσει κατα τη διάρκεια του παραθύρου των τριάντα δευτερολέπτων μετά από μια τέτοια αλλαγή, είναι πιθανόν να υπάρξει απώλεια δεδομένων. Στις περισσότερες περιπτώσεις, το ρίσκο είναι μηδαμινό, αλλά θα πρέπει να γνωρίζετε την ύπαρξη του. Αν ακόμα και αυτή η μικρή πιθανότητα δεν είναι αποδεκτή, μη χρησιμοποιήσετε Soft Updates στο ριζικό σύστημα αρχείων!

To / είναι κατά παράδοση μια από τις μικρότερες κατατμήσεις. Αν βάλετε τον κατάλογο /tmp μέσα στο / και το σύστημα σας χρησιμοποιεί ιδιαίτερα το /tmp, θα αντιμετωπίζετε προβλήματα χώρου κατά διαστήματα. Το πρόβλημα λύνεται με τη δημιουργία συμβολικού δεσμού του /tmp προς το /var/tmp.

9.5. Τι δεν είναι σωστό στο ccd(4);

Το σύμπτωμα του προβλήματος είναι:

# ccdconfig -C
ccdconfig: ioctl (CCDIOCSET): /dev/ccd0c: Inappropriate file type or format

Αυτό συνήθως συμβαίνει όταν προσπαθείτε να συνενώσετε τις κατατμήσεις c, οι οποίες από προεπιλογή είναι τύπου unused. Το πρόγραμμα οδήγησης ccd(4) απαιτεί ο τύπος της κατάτμησης να είναι FS_BSDFFS. Επεξεργαστείτε τις ετικέτες (disk label) των δίσκων που προσπαθείτε να συνενώσετε και αλλάξτε τους τύπους των κατατμήσεων σε 4.2BSD.

9.6. Γιατί δεν μπορώ να αλλάξω τις ετικέτες (disk labels) στις συσκευές ccd(4);

Το σύμπτωμα του προβλήματος είναι:

# disklabel ccd0
(εμφανίζεται έγκυρη πληροφορία, ας προσπαθήσουμε να την επεξεργαστούμε)
# disklabel -e ccd0
(edit, save, quit)
disklabel: ioctl DIOCWDINFO: No disk label on disk;
use "disklabel -r" to install initial label

Αυτό συμβαίνει επειδή η ετικέτα που επιστρέφεται από την ccd(4) είναι στην πραγματικότητα «ψεύτικη» και δεν είναι γραμμένη στο δίσκο. Μπορείτε να λύσετε αυτό το πρόβλημα, υποχρεώνοντας την εγγραφή της στο δίσκο:

# disklabel ccd0 > /tmp/disklabel.tmp
# disklabel -Rr ccd0 /tmp/disklabel.tmp
# disklabel -e ccd0
(this will work now)

9.7. Μπορώ να προσαρτήσω συστήματα αρχείων άλλων λειτουργικών συστήματων στο FreeBSD;

Το FreeBSD υποστηρίζει πλήθος διαφορετικών συστημάτων αρχείων.

UFS

Το FreeBSD μπορεί να προσαρτήσει άμεσα CD-ROM που χρησιμοποιούν το σύστημα αρχείων UFS. Η προσάρτηση κατατμήσεων του UNIX της Digital και άλλων συστημάτων που υποστηρίζουν UFS, ίσως είναι πιο πολύπλοκη, ανάλογα με τις λεπτομέρειες των κατατμήσεων του αντίστοιχου λειτουργικού.

ext2/ext3

Το FreeBSD υποστηρίζει κατατμήσεις ext2fs και ext3fs. Δείτε το mount_ext2fs(8) για περισσότερες πληροφορίες.

NTFS

Το FreeBSD περιλαμβάνει ένα πρόγραμμα οδήγησης μόνο ανάγνωσης για NTFS. Για περισσότερες πληροφορίες, δείτε το mount_ntfs(8). Υπάρχει επίσης ένα port του προγράμματος ntfs-3g το οποίο υποστηρίζει εγγραφή στο NTFS (see sysutils/fusefs-ntfs).

FAT

Το FreeBSD περιλαμβάνει ένα πρόγραμμα οδήγησης ανάγνωσης και εγγραφής για FAT. Για περισσότερες πληροφορίες, δείτε το mount_msdosfs(8).

ReiserFS

Το FreeBSD περιλαμβάνει ένα πρόγραμμα οδήγησης μόνο ανάγνωσης για το ReiserFS. Για περισσότερες πληροφορίες, δείτε το mount_reiserfs(8).

ZFS

Τη δεδομένη στιγμή, το FreeBSD περιλαμβάνει ένα port του προγράμματος οδήγησης για το ZFS της Sun". Αυτή τη στιγμή συνίσταται η χρήση του μόνο σε αρχιτεκτονική amd64 με επαρκή ποσότητα μνήμης. Για περισσότερες πληροφορίες, δείτε το zfs(8).

Το FreeBSD υποστηρίζει επίσης δικτυακά συστήματα αρχείων όπως το NFS (δείτε το mount_nfs(8)), NetWare (δείτε το mount_nwfs(8)), και τα συστήματα τύπου SMB της Microsoft® (δείτε το mount_smbfs(8)). Μπορείτε να βρείτε επίσης ports που βασίζονται στο FUSE (sysutils/fusefs-kmod) και καλύπτουν πολλά ακόμα συστήματα αρχείων.

9.8. Πως μπορώ να προσαρτήσω μια δευτερεύουσα κατάτμηση του DOS;

Οι δευτερεύουσες κατατμήσεις του DOS βρίσκονται μετά από όλες τις πρωτεύοντες κατατμήσεις. Για παράδειγμα, αν έχετε μια κατάτμηση «E» ως δεύτερη DOS κατάτμηση στο δεύτερο οδηγό SCSI, θα υπάρχει ένα αρχείο συσκευής για το «slice 5» στον κατάλογο /dev, το οποίο μπορείτε απλώς να προσαρτήσετε:

# mount -t msdosfs /dev/da1s5 /dos/e

9.9. Υπάρχει κρυπτογραφημένο σύστημα αρχείων για το FreeBSD;

Ναι. Μπορείτε να χρησιμοποιήσετε είτε το gbde(8) ή το geli(8), δείτε την ενότητα Κρυπτογράφηση Κατατμήσεων Δίσκων στο Εγχειρίδιο του FreeBSD.

9.10. Πως μπορώ να χρησιμοποιήσω το φορτωτή εκκίνησης των Windows NT® για να ξεκινήσω το FreeBSD;

Η γενική ιδέα είναι να αντιγράψετε τον πρώτο τομέα της FreeBSD κατάτμησης σας σε ένα αρχείο που θα τοποθετήσετε στην κατάτμηση του DOS/Windows NT. Υποθέτοντας ότι ονομάσατε αυτό το αρχείο κάτι σαν c:\bootsect.bsd (κατά αντιστοιχία με το c:\bootsect.dos), μπορείτε να επεξεργαστείτε το αρχείο c:\boot.ini ώστε να μοιάζει με το παρακάτω:

[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows NT"
C:\BOOTSECT.BSD="FreeBSD"
C:\="DOS"

Αν το FreeBSD είναι εγκατεστημένο στον ίδιο δίσκο που βρίσκεται και η κατάτμηση εκκίνησης των Windows NT, απλώς αντιγράψτε το /boot/boot1 στο C:\BOOTSECT.BSD. Αν ωστόσο το FreeBSD είναι εγκατεστημένο σε διαφορετικό δίσκο, το /boot/boot1 δεν θα λειτουργήσει, θα χρειαστείτε το /boot/boot0.

Το /boot/boot0 θα πρέπει να εγκατασταθεί χρησιμοποιώντας το sysinstall(8) και επιλέγοντας το FreeBSD boot manager στην οθόνη που σας ζητάει να επιλέξετε αν επιθυμείτε να χρησιμοποιήσετε boot manager. Αυτό συμβαίνει επειδή το /boot/boot0 γεμίζει τον πίνακα κατατμήσεων με χαρακτήρες NULL αλλά το sysinstall(8) αντιγράφει τον πίνακα πριν εγκαταστήσει το /boot/boot0 στο MBR.

Προειδοποίηση: Μην αντιγράψετε απλώς το /boot/boot0 αντί για το /boot/boot1. Θα γραφεί πάνω από τον πίνακα κατατμήσεων σας και η εκκίνηση του υπολογιστή σας θα είναι πλέον αδύνατη!

Όταν εκτελείται ο διαχειριστής εκκίνησης του FreeBSD, σημειώνει το τελευταίο λειτουργικό σύστημα που ξεκινήσατε, θέτοντας την αντίστοιχη κατάτμηση ως ενεργή στον πίνακα κατατμήσεων και έπειτα ξαναγράφει τον εαυτό του (512 bytes) στο MBR. Για το λόγο αυτό, αν αντιγράψετε απλώς το /boot/boot0 στο C:\BOOTSECT.BSD, θα γράψετε στο MBR ένα κενό πίνακα κατατμήσεων, στον οποίο μια καταχώριση θα έχει τεθεί ως ενεργή.

9.11. Πως μπορώ να ξεκινήσω το FreeBSD και το Linux® μέσω LILO;

Αν έχετε το FreeBSD και το Linux στον ίδιο δίσκο, απλώς ακολουθήστε τις οδηγίες εγκατάστασης του LILO για εκκίνηση μη-Linux λειτουργικού. Συνοπτικά οι οδηγίες είναι:

Ξεκινήστε το Linux, και προσθέστε τις παρακάτω γραμμές στο /etc/lilo.conf:

other=/dev/hda2
        table=/dev/hda
        label=FreeBSD

(στο παραπάνω υποθέτουμε ότι το FreeBSD slice είναι γνωστό στο Linux ως /dev/hda2. Προσαρμόστε το ώστε να ταιριάζει στη δική σας εγκατάσταση). Εκτελέστε έπειτα την εντολή lilo ως root και φυσιολογικά έχετε τελειώσει.

Αν το FreeBSD βρίσκεται σε διαφορετικό δίσκο, θα πρέπει να προσθέσετε τη γραμμή loader=/boot/chain.b στην καταχώριση του LILO. Για παράδειγμα:

other=/dev/dab4
        table=/dev/dab
        loader=/boot/chain.b
        label=FreeBSD

Σε μερικές περιπτώσεις θα πρέπει να καθορίσετε στον φορτωτή εκκίνησης του FreeBSD τον οδηγό δίσκου όπως τον βλέπει το BIOS, για να έχετε επιτυχή εκκίνηση από το δεύτερο δίσκο. Για παράδειγμα, αν ο FreeBSD SCSI δίσκος σας φαίνεται από το BIOS ως δίσκος 1, θα πρέπει να καθορίσετε το παρακάτω στην προτροπή του φορτωτή εκκίνησης:

Boot: 1:da(0,a)/boot/kernel/kernel

Μπορείτε να ρυθμίσετε το παραπάνω να γίνεται αυτόματα μέσω του boot(8) σε κάθε εκκίνηση.

To Linux+FreeBSD mini-HOWTO αποτελεί ένα καλό οδηγό σε θέματα διαλειτουργικότητας FreeBSD και Linux.

9.12. Πως μπορώ να εκκινήσω FreeBSD και Linux χρησιμοποιώντας το GRUB;

Η εκκίνηση του FreeBSD με χρήση του GRUB είναι πολύ απλή. Απλώς προσθέστε το παρακάτω στο αρχείο ρυθμίσεων /boot/grub/menu.lst/boot/grub/grub.conf σε ορισμένα συστήματα, π.χ. Red Hat Linux και τα παράγωγα του).

title FreeBSD 6.1
        root (hd0,a)
        kernel /boot/loader
          

Όπου το hd0,a δείχνει στη ριζική κατάτμηση στον πρώτο δίσκο. Αν πρέπει να καθορίσετε το slice που θα χρησιμοποιηθεί, χρησιμοποιήστε κάτι σαν (hd0,2,a). Από προεπιλογή, αν παραλείψετε τον αριθμό του slice, το GRUB ψάχνει το πρώτο slice το οποίο περιέχει κατάτμηση a.

9.13. Πως μπορώ να εκκινήσω FreeBSD και Linux χρησιμοποιώντας το BootEasy;

Εγκαταστήστε το LILO στην αρχή της κατάτμησης εκκίνησης του Linux αντί για το MBR. Μπορείτε έπειτα να ξεκινήσετε το LILO μέσω του BootEasy.

Αυτό συνίσταται ούτως ή άλλως αν χρησιμοποιείτε Windows® και Linux, ώστε να μπορείτε να αποκαταστήσετε ευκολότερα την εκκίνηση του Linux σε περίπτωση που χρειαστεί να επανεγκαταστήσετε τα Windows (το οποίο είναι Ζηλιάρικο Λειτουργικό Σύστημα και δεν θα ανεχθεί κανένα άλλο λειτουργικό σύστημα στο MBR).

9.14. Πως μπορώ να αλλάξω την προτροπή εκκίνησης από ??? σε κάτι που να έχει νόημα;

Δεν μπορείτε να το κάνετε αυτό με τον τυποποιημένο διαχειριστή εκκίνησης χωρίς να τον ξαναγράψετε. Υπάρχει ωστόσο πλήθος άλλων διαχειριστών στα ports, στην κατηγορία sysutils οι οποίοι παρέχουν αυτή τη δυνατότητα.

9.15. Έχω ένα καινούριο αφαιρούμενο οδηγό δίσκο, πως μπορώ να τον χρησιμοποιήσω;

Είτε πρόκειται για αφαιρούμενο οδηγό όπως το Zip® ή EZ drive (ή και οδηγός δισκέτας αν αυτό θέλετε να χρησιμοποιήσετε), ή καινούριος σκληρός δίσκος, από τη στιγμή που θα εγκατασταθεί και θα αναγνωριστεί από το σύστημα, αρκεί να βάλετε το αντίστοιχο μέσο (δισκέτα, ταινία ή οτιδήποτε). Η διαχείριση δεν διαφέρει αισθητά από τη μια συσκευή στην άλλη.

(Η ενότητα αυτή είναι βασισμένη στο ZIP FAQ του Mark Mayo)

Αν πρόκειται για οδηγό ZIP drive ή δισκέτα, θα έχετε ήδη ένα σύστημα αρχείων DOS σε αυτό, και μπορείτε να το χρησιμοποιήσετε άμεσα με μια εντολή όπως την παρακάτω:

# mount -t msdosfs /dev/fd0c /floppy

αν πρόκειται για δισκέτα, ή αυτό:

# mount -t msdosfs /dev/da2s4 /zip

αν πρόκειτα για δίσκο ZIP με τις προκαθορισμένες εργοστασιακές ρυθμίσεις.

Για άλλους τύπους δίσκων, δείτε την κατάσταση τους μέσω της fdisk(8) ή του sysinstall(8).

Για τα υπόλοιπα μας παραδείγματα, θα θεωρήσουμε ένα οδηγό ZIP με όνομα συσκευής da2, το οποίο αντιστοιχεί στον τρίτο SCSI δίσκο.

Εκτός αν πρόκειται για δισκέτα, ή για κάποιο αφαιρούμενο μέσο που πρόκειται να διαμοιραστείτε με άλλους, είναι μάλλον καλή ιδέα να χρησιμοποιήσετε σύστημα αρχείων BSD. Θα έχετε υποστήριξη για μεγάλα ονόματα αρχείων, τουλάχιστον διπλάσια απόδοση και πολύ καλύτερη σταθερότητα. Πρέπει αρχικά να δημιουργήσετε ξανά τις κατατμήσεις και τα συστήματα αρχείων που υπάρχουν από το DOS επίπεδο. Μπορείτε να χρησιμοποιήσετε είτε την fdisk(8) είτε το sysinstall(8), ή για κάποιο οδηγό μικρού μεγέθους που δεν σας ενδιαφέρει η διαλειτουργικότητα με άλλα συστήματα, είναι καλύτερο να διαγράψετε εντελώς τον πίνακα κατατμήσεων (slice) του DOS, και να χρησιμοποιήσετε το σύστημα κατατμήσεων του BSD:

# dd if=/dev/zero of=/dev/rda2 count=2
# disklabel -Brw da2 auto

Μπορείτε να χρησιμοποιήσετε το disklabel(8) ή το sysinstall(8) για να δημιουργήσετε πολλαπλές κατατμήσεις BSD. Αυτό θα είναι σίγουρα επιθυμητό αν πρόκειται να δημιουργήσετε χώρο εικονικής μνήμης (swap) σε ένα σταθερό δίσκο, αλλά είναι μάλλον άσκοπο σε ένα αφαιρούμενο οδηγό όπως το ZIP.

Τέλος, δημιουργήστε ένα νέο σύστημα αρχείων. Στο παράδειγμα μας χρησιμοποιούμε ένα οδηγό ZIP και το νέο σύστημα αρχείων καλύπτει όλο το δίσκο:

# newfs /dev/rda2c

Προσαρτήστε το:

# mount /dev/da2c /zip

Είναι καλή ιδέα να προσθέσετε μια γραμμή όπως την παρακάτω στο /etc/fstab (δείτε το fstab(5)) ώστε μελλοντικα να μπορείτε απλώς να γράφετε mount /zip:

/dev/da2c /zip ffs rw,noauto 0 0

9.16. Γιατί παίρνω το μήνυμα Incorrect super block όταν προσπαθώ να προσαρτήσω ένα CD-ROM;

Θα πρέπει να δηλώσετε στη mount(8) το είδος της συσκευής που επιθυμείτε να προσαρτήσετε. Αυτό περιγράφεται στην ενότητα του Εγχειριδίου σχετικά με τη χρήση οπτικών μέσων, και ειδικότερα στην ενότητα Χρήση CD Δεδομένων.

9.17. Γιατί παίρνω το μήνυμα Device not configured όταν προσαρτώ ένα CD-ROM;

Αυτό γενικά σημαίνει ότι δεν υπάρχει δίσκος CD-ROM στον οδηγό, ή ότι ο οδηγός δεν φαίνεται στο δίαυλο του συστήματος (είναι αποσυνδεμένος). Παρακαλούμε δείτε την ενότητα Χρήση CD Δεδομένων στο Εγχειρίδιο, για λεπτομερή ανάλυση του προβλήματος.

9.18. Γιατί όταν προσαρτώ το CD μου στο FreeBSD όλοι οι μη-Αγγλικοί χαρακτήρες φαίνονται σαν «?»;

Το CD-ROM σας προφανώς χρησιμοποιεί τις επεκτάσεις «Joliet» για την αποθήκευση πληροφοριών σχετικά με τα αρχεία και τους καταλόγους. Περισσότερες πληροφορίες θα βρείτε στο κεφάλαιο του Εγχειριδίου σχετικά με την δημιουργία και χρήση CD-ROM, και ειδικότερα την ενότητα Χρήση CD-ROM Δεδομένων.

9.19. Έγραψα ένα CD στο FreeBSD και τώρα δεν μπορώ να το διαβάσω από οποιοδήποτε άλλο λειτουργικό σύστημα. Γιατί;

Το πιο πιθανό είναι ότι γράψατε ένα αρχείο τύπου raw στο CD, χωρίς να δημιουργήσετε σύστημα αρχείων ISO 9660. Δείτε το the κεφάλαιο του Εγχειριδίου σχετικά με τη δημιουργία CD-ROM, και ειδικότερα την ενότητα σχετικά με τη δημιουργία raw CD δεδομένων.

9.20. Πως μπορώ να δημιουργήσω μια εικόνα (image) ενός CD δεδομένων;

Αυτό εξηγείται στο Εγχειρίδιο, στην ενότητα για την αντιγραφή CD δεδομένων. Για περισσότερες πληροφορίες σχετικά με τη δημιουργία CD-ROM, δείτε την ενότητα σχετικά με την Δημιουργία CD στο κεφάλαιο Αποθηκευτικών Μέσων του Εγχειρίδιου.

9.21. Γιατί δεν μπορώ να προσαρτήσω μέσω της mount ένα μουσικό CD;

Αν προσπαθήσετε να προσαρτήσετε ένα μουσικό CD, θα λάβετε ένα μήνυμα λάθους cd9660: /dev/acd0c: Invalid argument. Αυτό συμβαίνει επειδή η εντολή mount λειτουργεί μόνο σε συστήματα αρχείων. Τα μουσικά CD δεν έχουν συστήματα αρχείων, έχουν απλώς δεδομένα. Χρειάζεστε ένα πρόγραμμα το οποίο να διαβάζει μουσικά CD, όπως για παράδειγμα το port audio/xmcd.

9.22. Πως μπορώ να προσαρτήσω μέσω της mount ένα CD με πολλαπλά session;

Από προεπιλογή, η mount(8) θα προσπαθήσει να προσαρτήσει το τελευταίο session δεδομένων ενός CD. Αν θέλετε να προσαρτήσετε ένα προηγούμενο session, θα πρέπει να χρησιμοποιήσετε την παράμετρο -s στη γραμμή εντολών. Για συγκεκριμένα παραδείγματα, δείτε το mount_cd9660(8).

9.23. Πως μπορώ να επιτρέψω σε απλούς χρήστες να προσαρτούν δισκέτες, CD-ROM και άλλα αφαιρούμενα μέσα;

Είναι δυνατόν να επιτραπεί σε απλούς χρήστες να προσαρτούν συσκευές. Ακολουθήστε τα παρακάτω βήματα:

  1. Ως root θέστε τη μεταβλητή sysctl vfs.usermount σε 1.

    # sysctl -w vfs.usermount=1
    
  2. Ως root ρυθμίστε τις κατάλληλες άδειες στη συσκευή που αντιστοιχεί στο αφαιρούμενο μέσο.

    Για παράδειγμα, για να επιτρέψετε στους χρήστες να προσαρτούν τον πρώτο οδηγό δισκέτας, γράψτε:

    # chmod 666 /dev/fd0
    

    Για να επιτρέψετε στους χρήστες που ανήκουν στην ομάδα operator να προσαρτούν τον οδηγό CD-ROM, γράψτε:

    # chgrp operator /dev/acd0c
    # chmod 640 /dev/acd0c
    
  3. Θα πρέπει να αλλάξετε το /etc/devfs.conf για να ενεργοποιούνται αυτές οι ρυθμίσεις αυτόματα σε κάθε επανεκκίνηση.

    Ως root, προσθέστε τις κατάλληλες γραμμές στο /etc/devfs.conf. Για παράδειγμα, για να επιτρέψετε στους χρήστες να προσαρτούν τον πρώτο οδηγό δισκέτας, προσθέστε τις παρακάτα γραμμές:

    # Allow all users to mount the floppy disk.
    own       /dev/fd0        root:operator
    perm      /dev/fd0        0666
    

    Για να επιτρέψετε στους χρήστες της ομάδας operator να προσαρτούν τον οδηγό CD-ROM, προσθέστε τις παρακάτω γραμμές:

    # Allow members of the group operator to mount CD-ROMs.
    own       /dev/acd0       root:operator
    perm      /dev/acd0       0660
    
  4. Ως τελευταία ρύθμιση, προσθέστε τη γραμμή vfs.usermount=1 στο αρχείο /etc/sysctl.conf ώστε να επανέρχεται σε κάθε επανεκκίνηση.

Όλοι οι χρήστες μπορούν να προσαρτούν πλέον τη μονάδα δισκέτας /dev/fd0 σε ένα κατάλογο που τους ανήκει:

% mkdir ~/my-mount-point
% mount -t msdosfs /dev/fd0 ~/my-mount-point

Οι χρήστες της ομάδας operator μπορούν να προσαρτούν το CD-ROM /dev/acd0c σε ένα κατάλογο που τους ανήκει:

% mkdir ~/my-mount-point
% mount -t cd9660 /dev/acd0c ~/my-mount-point

Η αποπροσάρτηση της συσκευής είναι απλή:

% umount ~/my-mount-point

Η ενεργοποίηση του vfs.usermount έχει ωστόσο αρνητικές επιπτώσεις όσο αφορά την ασφάλεια του συστήματος. Μια καλύτερη μέθοδος για πρόσβαση σε μέσα που χρησιμοποιούν το σύστημα αρχείων MS-DOS® είναι μέσω του πακέτου emulators/mtools που διατίθεται στην Συλλογή των Ports.

Σημείωση: Το ονομα συσκευής που χρησιμοποιήθηκε στα προηγούμενα παραδείγματα θα πρέπει να προσαρμοστεί ανάλογα για το σύστημα σας.

9.24. Οι εντολές du και df δείχνουν διαφορετικά αποτελέσματα για τον διαθέσιμο ελεύθερο χώρο στο δίσκο. Τι συμβαίνει;

Πρέπει να κατανοήσετε τι κάνουν στα αλήθεια οι εντολές du και df. H du διατρέχει το δέντρο των καταλόγων και μετράει πόσο μεγάλο είναι το κάθε αρχείο, ώστε να παρουσιάσει το τελικό άθροισμα. Η εντολή df απλώς ρωτά το σύστημα αρχείων πόσο χώρο έχει ακόμα διαθέσιμο. Μοιάζει το ίδιο πράγμα, αλλά ένα αρχείο χωρίς καταχώριση στον κατάλογο επηρεάζει το αποτέλεσμα της df αλλά όχι της du.

Όταν ένα πρόγραμμα χρησιμοποιεί ένα αρχείο και εσείς το διαγράψετε, το αρχείο δεν διαγράφεται στα αλήθεια από το σύστημα αρχείων, μέχρι να σταματήσει το πρόγραμμα να το χρησιμοποιεί. Διαγράφεται ωστόσο άμεσα από τη λίστα αρχείων του καταλόγου. Μπορείτε να το δείτε αυτό αρκετά εύκολα με ένα πρόγραμμα όπως το more. Ας υποθέσουμε ότι διαθέτετε ένα αρχείο αρκετά μεγάλο ώστε να επηρεάζει την έξοδο των εντολών du και df. (Καθώς οι δίσκοι σήμερα είναι πολύ μεγάλοι, το αρχείο αυτό μάλλον θα είναι πραγματικά μεγάλο). Αν διαγράψετε αυτό το αρχείο καθώς το βλέπετε με την more, η εντολή δεν θα παραπονεθεί άμεσα ότι δεν μπορεί να βρει το αρχείο. Η καταχώριση διαγράφεται απλώς από τον κατάλογο, ώστε κανένα άλλο πρόγραμμα ή χρήστης να μην μπορεί να έχει πρόσβαση στο αρχείο. Η εντολή du δείχνει ότι το αρχείο δεν υπάρχει. Η εντολή df δείχνει ότι είναι ακόμα εκεί, καθώς το σύστημα αρχείων γνωρίζει ότι η more το χρησιμοποιεί ακόμα. Μόλις σταματήσετε να χρησιμοποιείτε την more, η du και η df θα συμφωνήσουν.

Σημειώστε ότι τα Soft Updates μπορεί να καθυστερήσουν την απελευθέρωση χώρου του δίσκου. Ίσως χρειαστεί να περιμένετε μέχρι και 30 δευτερόλεπτα μέχρι η αλλαγή να γίνει ορατή!

Η κατάσταση αυτή συναντάται συχνά σε εξυπηρετητές ιστοσελίδων. Πολλοί άνθρωποι δημιουργούν ένα εξυπηρετητή ιστοσελίδων που βασίζεται σε FreeBSD και ξεχνούν να ρυθμίσουν την εναλλαγή των αρχείων καταγραφής (logs). Το αρχείο καταγραφής πρόσβασης γεμίζει τελικά τον κατάλογο /var. Ο νέος διαχειριστής σβήνει το αρχείο, αλλά το σύστημα συνεχίζει να παραπονιέται ότι η κατάτμηση δεν έχει χώρο. Η επανεκκίνηση του εξυπηρετητή ιστοσελίδων θα ελευθερώσει το αρχείο, επιτρέποντας έτσι στο σύστημα αρχείων να ελευθερώσει το χώρο δίσκου που καταλαμβάνει. Για να αποτρέψετε το παραπάνω συμβάν, ρυθμίστε σωστά το newsyslog(8).

9.25. Πως μπορώ να προσθέσω περισσότερο χώρο εικονικής μνήμης (swap);

Στην ενότητα Ρύθμιση και Βελτιστοποίηση του εγχειριδίου θα βρείτε μια ενότητα που περιγράφει τη σχετική διαδικασία.

9.26. Γιατί το FreeBSD βλέπει το δίσκο μου μικρότερο από αυτό που αναφέρει ο κατασκευαστής του;

Οι κατασκευαστές σκληρών δίσκων υπολογίζουν τα gigabytes ως ένα δισεκατομμύριο bytes, ενώ το FreeBSD το υπολογίζει ως 1.073.741.824 bytes. Αυτό εξηγεί γιατί για παράδειγμα στα μηνύματα εκκίνησης του FreeBSD ένας δίσκος που υποτίθεται ότι είναι 80 GB φαίνεται ως 76319 MB.

Σημειώστε επίσης ότι (από προεπιλογή) το FreeBSD θα δεσμεύσει 8% του διαθέσιμου χώρου του δίσκου.

9.27. Πως είναι δυνατόν μια κατάτμηση να είναι γεμάτη περισσότερο από 100%;

Σε κάθε UFS κατάτμηση, ένα τμήμα (από προεπιλογή το 8%) δεσμεύεται για χρήση από το λειτουργικό σύστημα και τον χρήστη root user. Η εντολή df(1) δεν λαμβάνει υπόψη της αυτό το χώρο όταν υπολογίζει την χωρητικότητα (στήλη Capacity), έτσι αυτή μπορεί να ξεπεράσει το 100%. Θα παρατηρήσετε επίσης ότι η στήλη Blocks είναι πάντοτε μεγαλύτερη από το άθροισμα των Used και Avail, συνήθως κατά 8%.

Για περισσότερες λεπτομέρειες, δείτε την επιλογή -m της εντολής tunefs(8).

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

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