Κεφάλαιο 3 Εγκατάσταση

Nik Clayton
3.1. Ποιο αρχείο πρέπει να κατεβάσω για να πάρω το FreeBSD;
3.2. Τι μπορώ να κάνω αν το image της δισκέτας δεν χωράει σε μια μόνο δισκέτα;
3.3. Που βρίσκονται οι οδηγίες για την εγκατάσταση του FreeBSD;
3.4. Τι χρειάζομαι για να εκτελέσω το FreeBSD;
3.5. Πως μπορώ να δημιουργήσω τη δική μου, προσαρμοσμένη δισκέτα εγκατάστασης;
3.6. Μπορούν να συνυπάρξουν τα Windows® με το FreeBSD;
3.7. Τα Windows κατέστρεψαν το διαχειριστή εκκίνησης μου! Πως θα τον επαναφέρω;
3.8. Ο φορητός μου υπολογιστής σειράς IBM Thinkpad, σειράς Α, Τ ή Χ, σταματάει να αποκρίνεται όταν προσπαθώ να εκκινήσω το FreeBSD μετά την εγκατάσταση. Πως μπορώ να επιλύσω αυτό το πρόβλημα;
3.9. Μπορώ να κάνω εγκατάσταση σε ένα δίσκο με χαλασμένους τομείς;
3.10. Διάφορα περίεργα πράγματα συμβαίνουν όταν εκκινώ με τη δισκέτα εκκίνησης! Τι συμβαίνει;
3.11. Ξεκίνησα από το ATAPI CDROM μου, αλλά το πρόγραμμα εγκατάστασης λέει ότι δεν βρίσκει CDROM. Που πήγε;
3.12. Μπορώ να εγκαταστήσω το FreeBSD στο φορητό μου χρησιμοποιώντας PLIP (Parallel Line IP, IP μέσω Παράλληλης Θύρας);
3.13. Τι γεωμετρία να χρησιμοποιήσω για το σκληρό μου δίσκο;
3.14. Υπάρχουν κάποιοι περιορισμοί στο πως πρέπει να χωρίσω το δίσκο;
3.15. Είναι συμβατό το FreeBSD με προγράμματα διαχείρισης δίσκων (disk managers);
3.16. Όταν εκκινώ το FreeBSD για πρώτη φορά, παίρνω το μήνυμα “Missing Operating System”. Τι συμβαίνει;
3.17. Γιατί δεν μπορώ να συνεχίσω πέρα από την προτροπή F? του διαχειριστή εκκίνησης;
3.18. Πρέπει να εγκαταστήσω όλο τον πηγαίο κώδικα;
3.19. Χρειάζεται να φτιάξω προσαρμοσμένο πυρήνα;
3.20. Για τους κωδικούς πρόσβασης των χρηστών, να χρησιμοποιήσω DES, Blowfish, ή MD5 κωδικοποίηση, και πως θα καθορίσω τι θα χρησιμοποιούν οι χρήστες μου;
3.21. Γιατί ενώ η δισκέτα εκκίνησης ξεκινάει κανονικά, κρεμάει στην οθόνη Probing Devices...;
3.22. Γιατί παίρνω το μήνυμα λάθους “panic: can't mount root” όταν εκκινώ το σύστημα για πρώτη φορά μετά την εγκατάσταση;
3.23. Ποια είναι τα όρια της μνήμης;
3.24. Ποια είναι τα όρια του συστήματος αρχείων ffs;
3.25. Γιατί παίρνω το μήνυμα λάθος, “archsw.readin.failed” μετά την μεταγλώττιση και εκκίνηση νέου πυρήνα;
3.26. Η εγκατάσταση καταρρέει κατά την εκκίνηση. Τι μπορώ να κάνω;

3.1. Ποιο αρχείο πρέπει να κατεβάσω για να πάρω το FreeBSD;

Χρειάζεστε τρία images δισκετών: floppies/boot.flp, floppies/kern1.flp, και floppies/kern2.flp. Τα images αυτά πρέπει να να τα γράψετε σε δισκέτες χρησιμοποιώντας κάποιο εργαλείο όπως το fdimage ή το dd(1).

Αν πρέπει να κατεβάσετε μόνοι σας τα σετ διανομών (distributions — για παράδειγμα για μια εγκατάσταση μέσω συστήματος αρχείων DOS), θα βρείτε παρακάτω μερικές συστάσεις σχετικά με το ποιες διανομές να κατεβάσετε:

  • base/

  • manpages/

  • compat*/

  • doc/

  • src/ssys.*

Πλήρεις οδηγίες σχετικά με τη διαδικασία καθώς και περισσότερες πληροφορίες σχετικά με γενικά προβλήματα κατά την εγκατάσταση μπορείτε να βρείτε στο Κεφάλαιο του Εγχειριδίου σχετικά με την εγκατάσταση του FreeBSD.

3.2. Τι μπορώ να κάνω αν το image της δισκέτας δεν χωράει σε μια μόνο δισκέτα;

Μια δισκέτα των 3.5 ιντσών (1.44MB) μπορεί να χωρέσει ως 1474560 bytes δεδομένων. Το αρχείο image της δισκέτας εκκίνησης είναι ακριβώς αυτό το μέγεθος.

Συνηθισμένα λάθη κατά την προετοιμασία της δισκέτας εκκίνησης:

  • Κατέβασμα της δισκέτας χωρίς τη χρήση του δυαδικού (binary) τρόπου όταν χρησιμοποιείται εξυπηρετητής FTP.

    Κάποια προγράμματα-πελάτες για FTP, χρησιμοποιούν από προεπιλογή τον ascii (κειμένου) τρόπο μεταφοράς δεδομένων και προσπαθούν να αλλάξουν τους χαρακτήρες τέλους γραμμής ώστε να ταιριάζουν με τις συμβάσεις που χρησιμοποιούνται από το σύστημα στο οποίο γίνεται η λήψη. Αυτό σχεδόν σίγουρα θα καταστρέψει το image εκκίνησης. Ελέγξτε το μέγεθος του image εκκίνησης που κατεβάσατε: Αν δεν είναι ακριβώς αυτό που φαίνεται στον εξυπηρετητή, η διαδικασία του κατεβάσματος θα πρέπει να θεωρηθεί ύποπτη.

    Για να παρακάμψετε το πρόβλημα: γράψτε binary στην γραμμή εντολών του FTP, μετά που θα συνδεθείτε στον εξυπηρετητή, και πριν ξεκινήσετε να κατεβάζετε το image.

  • Χρήση της εντολής copy του DOS (η αντίστοιχου γραφικού εργαλείου) για τη μεταφορά του αρχείου image στη δισκέτα.

    Προγράμματα όπως το copy, δεν θα λειτουργήσουν σωστά καθώς το image εκκίνησης έχει φτιαχτεί ώστε να εκκινεί άμεσα. Το image έχει τα πλήρη περιεχόμενα της δισκέτας, τροχιά προς τροχιά, και δεν πρέπει να γραφεί στη δισκέτα ως κανονικό αρχείο. Θα πρέπει να το μεταφέρετε στη δισκέτα με «ωμό» τρόπο, χρησιμοποιώντας εργαλεία χαμηλού επιπέδου (low-level) (όπως π.χ. το fdimage ή το rawrite) που περιγράφονται στον οδηγό εγκατάστασης του FreeBSD.

3.3. Που βρίσκονται οι οδηγίες για την εγκατάσταση του FreeBSD;

3.4. Τι χρειάζομαι για να εκτελέσω το FreeBSD;

Για εκδόσεις του FreeBSD από το 5.X και μετά χρειάζεστε ένα PC με επεξεργαστή 486 ή καλύτερο, με 24 MB ή περισσότερη RAM, και τουλάχιστον 150 MB χώρου στο σκληρό σας δίσκο.

Μπορείτε να εκτελέσετε όλες τις εκδόσεις του FreeBSD με μια χαμηλών προδιαγραφών, μονόχρωμη (MDA) κάρτα γραφικών, αλλά για να χρησιμοποιήσετε το Xorg, θα χρειαστείτε κάρτα VGA ή καλύτερη.

Δείτε επίσης και το Κεφάλαιο 4.

3.5. Πως μπορώ να δημιουργήσω τη δική μου, προσαρμοσμένη δισκέτα εγκατάστασης;

Τη δεδομένη στιγμή, δεν υπάρχει τρόπος να φτιάξετε απλώς μια προσαρμοσμένη δισκέτα εγκατάστασης. Θα πρέπει να δημιουργήσετε ολόκληρη νέα έκδοση, η οποία θα περιλαμβάνει και την προσαρμοσμένη δισκέτα εγκατάστασης σας.

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

3.6. Μπορούν να συνυπάρξουν τα Windows® με το FreeBSD;

Εγκαταστήστε πρώτα τα Windows, και μετά το FreeBSD. Ο διαχειριστής εκκίνησης του FreeBSD θα σας επιτρέπει έπειτα να επιλέξετε την εκκίνηση είτε των Windows είτε του FreeBSD. Αν εγκαταστήσετε τα Windows μετά το FreeBSD, θα σας σβήσουν τον διαχειριστή εκκίνησης, χωρίς καν να σας ρωτήσουν. Αν σας συμβεί, αυτό δείτε το επόμενο τμήμα.

3.7. Τα Windows κατέστρεψαν το διαχειριστή εκκίνησης μου! Πως θα τον επαναφέρω;

Μπορείτε να επανεγκαταστήσετε το διαχειριστή εκκίνησης του FreeBSD χρησιμοποιώντας έναν από τους τρεις παρακάτω τρόπους:

  • Εκτελώντας το DOS, μετακινηθείτε στον κατάλογο tools/ της FreeBSD διανομής σας, και ψάξτε για το αρχείο bootinst.exe. Εκτελέστε το όπως φαίνεται παρακάτω:

    ...\TOOLS> bootinst.exe boot.bin
    

    και ο διαχειριστής εκκίνησης θα επανεγκατασταθεί.

  • Ξεκινήστε ξανά χρησιμοποιώντας τη δισκέτα εκκίνησης του FreeBSD και πηγαίνετε στην επιλογή Custom Installation του μενού. Επιλέξτε Partition. Επιλέξτε τον οδηγό που κανονικά θα περιείχε τον διαχειριστή εκκίνησης σας (φυσιολογικά τον πρώτο) και όταν φτάσετε στον επεξεργαστή κατατμήσεων (partition editor) για τον οδηγό αυτό, το πρώτο πράγμα που θα κάνετε (χωρίς άλλες αλλαγές), είναι να επιλέξετε (W)rite. Επιλέξτε yes στην επιβεβαίωση που θα εμφανιστεί και όταν φτάσετε στην προτροπή επιλογής Διαχειριστή Εκκίνησης, επιλέξτε «Boot Manager». Με τον τρόπο αυτό ο διαχειριστής εκκίνησης θα γραφεί ξανά στο δίσκο. Μπορείτε τώρα να βγείτε από το μενού της εγκατάστασης και να επανεκκινήσετε από το σκληρό δίσκο, όπως συνήθως.

  • Ξεκινήστε με τη βοήθεια της δισκέτας εκκίνησης (ή του CD) του FreeBSD και επιλέξτε «Fixit» από το μενού. Επιλέξτε είτε τη δισκέτα Fixit είτε το CD #2 (το «live» σύστημα αρχείων) και θα εισέλθετε στο κέλυφος fixit. Εκτελέστε έπειτα την ακόλουθη εντολή:

    Fixit# fdisk -B -b /boot/boot0 bootdevice
    

    αντικαθιστώντας το bootdevice με τον πραγματικό σας δίσκο εκκίνησης, όπως π.χ. ad0 (πρώτος δίσκος IDE), ad4 (πρώτος δίσκος IDE στον βοηθητικό ελεγκτή), da0 (πρώτος δίσκος SCSI), κ.λ.π.

3.8. Ο φορητός μου υπολογιστής σειράς IBM Thinkpad, σειράς Α, Τ ή Χ, σταματάει να αποκρίνεται όταν προσπαθώ να εκκινήσω το FreeBSD μετά την εγκατάσταση. Πως μπορώ να επιλύσω αυτό το πρόβλημα;

Πρόκειται για ένα πρόβλημα στις αρχικές εκδόσεις του BIOS της ΙΒΜ στα συγκεκριμένα μηχανήματα, το οποίο αναγνωρίζει την κατάτμηση του FreeBSD ως πιθανό διαμέρισμα FAT για τη λειτουργία αδρανοποίησης στο δίσκο (suspend-to-disk). Το BIOS σταματάει να αποκρίνεται καθώς προσπαθεί να αναλύσει το διαμέρισμα του FreeBSD.

Σύμφωνα με την IBM[1], τα ακόλουθα μοντέλα και εκδόσεις BIOS περιλαμβάνουν τις απαραίτητες διορθώσεις.

Μοντέλο Έκδοση BIOS
T20 IYET49WW ή μεταγενέστερο
T21 KZET22WW ή μεταγενέστερο
A20p IVET62WW ή μεταγενέστερο
A20m IWET54WW ή μεταγενέστερο
A21p KYET27WW ή μεταγενέστερο
A21m KXET24WW ή μεταγενέστερο
A21e KUET30WW

Έχει αναφερθεί ότι μεταγενέστερες εκδόσεις του BIOS της ΙΒΜ, ίσως παρουσιάζουν ξανά το πρόβλημα. To μήνυμα αυτό από τον Jacques Vidrine στην ηλεκτρονική λίστα του FreeBSD για φορητούς υπολογιστές περιγράφει μια διαδικασία η οποία ίσως δουλέψει σε νεότερα μοντέλα φορητών της IBM τα οποία δεν εκκινούν κανονικά το FreeBSD, και στα οποία μπορείτε να αναβαθμίσετε το BIOS ή και να επιστρέψετε σε προηγούμενη έκδοση του.

Αν έχετε παλιότερο BIOS, αλλά δεν έχετε την επιλογή να το αναβαθμίσετε, ένας τρόπος να ξεπεράσετε το πρόβλημα είναι να εγκαταστήσετε το FreeBSD, να αλλάξετε τον αναγνωριστικό αριθμό (partition id) της κατάτμησης, και να εγκαταστήσετε νέα boot blocks τα οποία να μπορούν να χειριστούν το διαφορετικό αναγνωριστικό της κατάτμησης.

Αρχικά, θα πρέπει να επαναφέρετε το μηχάνημα σε μια κατάσταση ώστε να περνάει από την αρχική διαγνωστική οθόνη. Αυτό απαιτεί να ενεργοποιήσετε το μηχάνημα χωρίς να το αφήσετε να βρει την κατάτμηση του FreeBSD στον κύριο δίσκο του. Ένας τρόπος είναι να απομακρύνετε τον σκληρό δίσκο και να τον μετακινήσετε προσωρινά σε ένα παλιότερο ThinkPad (όπως το ThinkPad 600) ή κάποιο επιτραπέζιο μηχάνημα, χρησιμοποιώντας το κατάλληλο καλώδιο μετατροπής. Στο μηχάνημα αυτό μπορείτε πλέον να διαγράψετε την κατάτμηση του FreeBSD και έπειτα να μετακινήσετε τον δίσκο στο αρχικό μηχάνημα. Το ThinkPad θα πρέπει τώρα να εκκινεί κανονικά.

Με το μηχάνημα σε λειτουργική κατάσταση, μπορείτε τώρα να χρησιμοποιήσετε την διαδικασία που περιγράφεται εδώ ώστε να έχετε τελικά μια εγκατάσταση του FreeBSD που να λειτουργεί.

  1. Κατεβάστε τις δισκέτες boot1 και boot2 από http://people.FreeBSD.org/~bmah/ThinkPad/. Αποθηκεύστε τα αρχεία αυτά κάπου που θα μπορείτε να τα ξαναβρείτε αργότερα.

  2. Εγκαταστήστε κανονικά το FreeBSD στο ThinkPad. Μην χρησιμοποιήσετε την κατάσταση Dangerously Dedicated. Μην κάνετε επανεκκίνηση όταν τελειώσει η εγκατάσταση.

  3. Χρησιμοποιήστε είτε το «Emergency Holographic Shell» (ALT+F4) είτε το κέλυφος «fixit».

  4. Χρησιμοποιήστε την fdisk(8) για να αλλάξετε τον αναγνωριστικό αριθμό της κατάτμησης του FreeBSD από 165 σε 166 (αυτός είναι ο τύπος που χρησιμοποιείται από το OpenBSD).

  5. Γράψτε τα αρχεία boot1 και boot2 στο τοπικό σύστημα αρχείων.

  6. Χρησιμοποιήστε το disklabel(8) για να γράψετε τα boot1 και boot2 στο slice του FreeBSD.

    # disklabel -B -b boot1 -s boot2 ad0sn
    

    Το n είναι ο αριθμός του slice που έχετε εγκαταστήσει το FreeBSD.

  7. Κάντε επανεκκίνηση. Στην προτροπή εκκίνησης θα δείτε την επιλογή να ξεκινήσετε το OpenBSD. Στην πραγματικότητα, με αυτό τον τρόπο θα ξεκινήσετε το FreeBSD.

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

3.9. Μπορώ να κάνω εγκατάσταση σε ένα δίσκο με χαλασμένους τομείς;

Μπορείτε, αλλά είναι κακή ιδέα.

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

Αν έχετε οδηγό SCSI με χαλασμένους τομείς δείτε αυτή την απάντηση.

3.10. Διάφορα περίεργα πράγματα συμβαίνουν όταν εκκινώ με τη δισκέτα εκκίνησης! Τι συμβαίνει;

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

  1. Χρησιμοποιήσατε καινούριες, φρεσκο-διαμορφωμένες, και χωρίς λάθη δισκέτες (κατά προτίμηση καλής εταιρίας τις οποίες μόλις βγάλατε καινούριες από το κουτί τους, σε αντίθεση με τη δισκέτα που πήρατε μαζί με κάποιο περιοδικό και η οποία βρίσκονταν κάτω από το κρεβάτι τα τρία τελευταία χρόνια);

  2. Κατεβάσατε το image της δισκέτας με δυαδικό (binary ή image) τρόπο μεταφοράς; (μη ντρέπεστε, ακόμα και οι καλύτεροι από μας έχουν κατά λάθος κατεβάσει κάποιο δυαδικό αρχείο σε κατάσταση ASCII (κειμένου), τουλάχιστον μια φορά!)

  3. Αν χρησιμοποιείτε Windows 95 ή 98, εκτελέστε το fdimage ή το rawrite σε καθαρή κατάσταση DOS; Τα λειτουργικά αυτά μπορεί να παρεμβληθούν σε προγράμματα τα οποία γράφουν απευθείας στο υλικό, κάτι το οποίο συμβαίνει και με τα προγράμματα δημιουργίας των δισκετών. Μπορεί να δημιουργηθεί πρόβλημα, ακόμα και αν τα εκτελείτε σε παράθυρο DOS μέσα από το γραφικό περιβάλλον.

Έχουν επίσης αναφερθεί περιπτώσεις όπου το Netscape® δημιουργεί προβλήματα στο κατέβασμα της δισκέτας εκκίνησης, έτσι είναι καλύτερα να χρησιμοποιήσετε κάποιο άλλο πρόγραμμα FTP, αν αυτό είναι δυνατόν.

3.11. Ξεκίνησα από το ATAPI CDROM μου, αλλά το πρόγραμμα εγκατάστασης λέει ότι δεν βρίσκει CDROM. Που πήγε;

Η συνήθης αιτία αυτού του προβλήματος είναι ένας κακορυθμισμένος οδηγός CDROM. Πολλά PC έρχονται πλέον με το CDROM ως slave συσκευή στο δευτερεύοντα ελεγκτή, χωρίς να υπάρχει στο ίδιο κανάλι συσκευή master. Αυτό, σύμφωνα με τις προδιαγραφές του ATAPI, δεν είναι έγκυρο, αλλά τα Windows τηρούν τις προδιαγραφές χαλαρά, ενώ το BIOS το αγνοεί κατά την εκκίνηση. Αυτός είναι και ο λόγος που το BIOS κατάφερε να δει το CDROM και να το χρησιμοποιήσει, αλλά και ο λόγος που το FreeBSD δεν μπόρεσε να το δει για να συνεχίσει την εγκατάσταση.

Ρυθμίστε ξανά το σύστημα σας, ώστε το CDROM είτε να είναι η master συσκευή στον ελεγκτή που είναι συνδεμένη, ή βεβαιωθείτε ότι είναι slave σε ένα ελεγκτή IDE ο οποίος όμως έχει άλλη συσκευή συνδεμένη ως master.

3.12. Μπορώ να εγκαταστήσω το FreeBSD στο φορητό μου χρησιμοποιώντας PLIP (Parallel Line IP, IP μέσω Παράλληλης Θύρας);

Ναι. Χρησιμοποιήστε τυποποιημένο καλώδιο τύπου Laplink. Αν χρειάζεται, διαβάστε το τμήμα PLIP του Εγχειριδίου για λεπτομέρειες σχετικές με δικτύωση μέσω παράλληλης θύρας.

3.13. Τι γεωμετρία να χρησιμοποιήσω για το σκληρό μου δίσκο;

Σημείωση: Με τον όρο «γεωμετρία», εννοούμε τον αριθμό των κυλίνδρων, κεφαλών και τομέων ανά τροχιά ενός δίσκου. Για ευκολία, θα αναφερόμαστε στον όρο αυτό ως C/H/S (Cylinders / Heads / Sectors). Αυτός είναι και ο τρόπος με τον οποίο το BIOS βρίσκει σε ποια περιοχή του δίσκου να γράψει.



Το παραπάνω προκαλεί σύγχυση στου νέους διαχειριστές συστημάτων. Καταρχήν, η φυσική γεωμετρία ενός οδηγού SCSI είναι συνολικά άσχετη, αφού το FreeBSD λειτουργεί με βάση τα μπλοκ δίσκου. Στην πραγματικότητα, δεν υπάρχει καν «αληθινή» φυσική γεωμετρία, καθώς η πυκνότητα των τομέων μεταβάλλεται από περιοχή σε περιοχή του δίσκου. Αυτό που οι κατασκευαστές αναφέρουν συχνά ως «φυσική γεωμετρία» είναι συνήθως η γεωμετρία με την όποια έχουν ανακαλύψει ότι γίνεται η μικρότερη σπατάλη ελεύθερου χώρου. Για δίσκους IDE, το FreeBSD χρησιμοποιεί πράγματι το C/H/S, αλλά όλοι οι μοντέρνοι οδηγοί μετατρέπουν εσωτερικά αυτές τις αναφορές σε αντίστοιχα μπλοκ.

Το μόνο που έχει πραγματική σημασία είναι η λογική γεωμετρία. Αυτή είναι και η απάντηση που δέχεται το BIOS όταν ρωτάει το δίσκο «ποια είναι η γεωμετρία σου;» Έπειτα, χρησιμοποιεί αυτή τη γεωμετρία για να αποκτήσει πρόσβαση στο δίσκο. Καθώς το FreeBSD χρησιμοποιεί το BIOS κατά την εκκίνηση, είναι πολύ σημαντικό η γεωμετρία αυτή να είναι σωστή. Ειδικότερα, αν έχετε περισσότερα από ένα λειτουργικά συστήματα στο δίσκο, πρέπει όλα να συμφωνούν όσο αφορά τη γεωμετρία. Διαφορετικά θα έχετε σοβαρά προβλήματα κατά την εκκίνηση!

Για δίσκους SCSI, η γεωμετρία που πρέπει να χρησιμοποιηθεί, εξαρτάται από το αν είναι ενεργοποιημένη η υποστήριξη εκτεταμένης μετάφρασης (αυτό συχνά αναφέρεται ως «υποστήριξη για δίσκους DOS >1GB» ή κάτι αντίστοιχο). Αν είναι απενεργοποιημένη, χρησιμοποιήστε N κυλίνδρους, 64 κεφαλές και 32 τομείς/τροχιά, όπου το N είναι η χωρητικότητα του δίσκου σε ΜΒ. Για παράδειγμα, για ένα δίσκο 2GB, θα πρέπει να έχετε 2048 κυλίνδρους, 64 κεφαλές, και 32 τομείς/τροχιά.

Αν είναι ενεργοποιημένη (και συχνά παρέχεται έτσι ώστε να ξεπερνιούνται κάποιοι περιορισμοί στο MS-DOS®) και η χωρητικότητα του δίσκου είναι μεγαλύτερη από 1GB, χρησιμοποιήστε M κυλίνδρους, 63 τομείς ανά τροχιά (όχι 64) και 255 κεφαλές, όπου M είναι η χωρητικότητα του δίσκου σε MB, διαιρεμένη με το 7.844238 (!). Έτσι, στο παράδειγμα μας, ο δίσκος των 2GB θα είχε 261 κυλίνδρους, 63 τομείς ανά τροχιά και 255 κεφαλές.

Αν δεν είστε σίγουρος για το παραπάνω, ή αν το FreeBSD αποτύχει στην ανίχνευση της σωστής γεωμετρίας κατά την εγκατάσταση, ο απλούστερος τρόπος για να το παρακάμψετε, είναι συνήθως να δημιουργήσετε ένα μικρό διαμέρισμα DOS στο δίσκο. Το BIOS έπειτα θα ανιχνεύσει τη σωστή γεωμετρία, και μπορείτε πάντα να διαγράψετε το διαμέρισμα DOS μέσα από τον επεξεργαστή κατατμήσεων, αν δε θέλετε να το κρατήσετε. Μπορεί ωστόσο να θελήσετε να το αφήσετε, για να προγραμματίζετε κάρτες δικτύου και για άλλες, αντίστοιχες, εργασίες.

Εναλλακτικά, υπάρχει ένα ελεύθερα διαθέσιμο βοηθητικό πρόγραμμα το οποίο διανέμεται με το FreeBSD και λέγεται pfdisk.exe. Μπορείτε να το βρείτε στον υποκατάλογο tools στο CDROM του FreeBSD ή στις δικτυακές τοποθεσίες FTP του FreeBSD. Το πρόγραμμα αυτό μπορεί να χρησιμοποιηθεί για να ανακαλύψει τι γεωμετρία χρησιμοποιείται από τα άλλα λειτουργικά συστήματα στο δίσκο που χρησιμοποιείται. Μπορείτε να εισάγετε απευθείας αυτή τη γεωμετρία στον επεξεργαστή κατατμήσεων.

3.14. Υπάρχουν κάποιοι περιορισμοί στο πως πρέπει να χωρίσω το δίσκο;

Ναι. Πρέπει να βεβαιωθείτε ότι η ριζική (root) κατάτμηση βρίσκεται κάτω από τους 1024 κυλίνδρους, ώστε το BIOS να μπορεί να εκκινήσει τον πυρήνα από αυτή. (Σημειώστε ότι αυτός είναι ένας περιορισμός στο BIOS του PC, και όχι στο FreeBSD).

Για ένα δίσκο SCSI, συνήθως αυτό σημαίνει ότι η ριζική κατάτμηση θα βρίσκεται στα πρώτα 1024MB (ή στα πρώτα 4096ΜΒ αν χρησιμοποιείται η εκτεταμένη μετάφραση - δείτε την προηγούμενη ερώτηση). Για δίσκους IDE, το αντίστοιχο όριο είναι τα 504MB.

3.15. Είναι συμβατό το FreeBSD με προγράμματα διαχείρισης δίσκων (disk managers);

To FreeBSD αναγνωρίζει και επιτρέπει τη χρήση του Ontrack Disk Manager. Δεν υποστηρίζονται άλλοι διαχειριστές δίσκων.

Αν θέλετε απλώς να χρησιμοποιήσετε το δίσκο με το FreeBSD, δεν χρειάζεστε διαχειριστή δίσκου. Απλώς ρυθμίστε το δίσκο για όσο περισσότερο χώρο μπορεί να δει το BIOS (συνήθως 504ΜΒ), και το FreeBSD θα ανακαλύψει πόσο ελεύθερο χώρο έχετε στην πραγματικότητα. Αν χρησιμοποιείτε κάποιο παλιό δίσκο σε ελεγκτή MFM, ίσως να πρέπει να πείτε στο FreeBSD πόσους κυλίνδρους να χρησιμοποιήσει.

Αν θέλετε να χρησιμοποιήσετε το δίσκο τόσο με το FreeBSD όσο και με κάποιο άλλο λειτουργικό σύστημα, θα πρέπει να μπορείτε να το κάνετε χωρίς διαχειριστή δίσκου: απλώς βεβαιωθείτε ότι το διαμέρισμα εκκίνησης του FreeBSD καθώς και η κατάτμηση του άλλου λειτουργικού συστήματος βρίσκονται μέσα στους πρώτους 1024 κυλίνδρους. Αν είστε αρκετά προσεκτικός, ένα διαμέρισμα εκκίνησης (boot) μεγέθους 20MB θα είναι αρκετό.

3.16. Όταν εκκινώ το FreeBSD για πρώτη φορά, παίρνω το μήνυμα “Missing Operating System”. Τι συμβαίνει;

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

3.17. Γιατί δεν μπορώ να συνεχίσω πέρα από την προτροπή F? του διαχειριστή εκκίνησης;

Αυτό είναι άλλο ένα σύμπτωμα του προβλήματος που περιγράφεται στην προηγούμενη ερώτηση. Δεν συμπίπτει η γεωμετρία του BIOS με αυτή του FreeBSD! Αν ο ελεγκτής ή το BIOS σας υποστηρίζει μετάφραση κυλίνδρων (συχνά αναφέρεται ως «>1GB drive support»), δοκιμάστε να αλλάξετε αυτή τη τιμή και να επανεγκαταστήσετε το FreeBSD.

3.18. Πρέπει να εγκαταστήσω όλο τον πηγαίο κώδικα;

Γενικά, όχι. Ωστόσο σας συνιστούμε να εγκαταστήσετε, ως ελάχιστο, τον πηγαίο κώδικα της διανομής base, ο οποίος περιλαμβάνει αρκετά από τα αρχεία που αναφέρονται εδώ, καθώς και τον πηγαίο κώδικα της διανομής sys, η οποία περιλαμβάνει τον πηγαίο κώδικα του πυρήνα. Δεν υπάρχει ωστόσο κάτι στο σύστημα το οποίο να απαιτεί την ύπαρξη του πηγαίου κώδικα για να λειτουργήσει, εκτός από το πρόγραμμα ρύθμισης πυρήνα config(8). Με εξαίρεση τον πηγαίο κώδικα του πυρήνα, η δομή του συστήματος μεταγλώττισης μας είναι τέτοια, ώστε μπορείτε πάντα να προσαρτήσετε το δέντρο πηγαίου κώδικα μέσω NFS (και με δικαιώματα μόνο ανάγνωσης) και πάλι να μπορείτε να δημιουργήσετε νέα εκτελέσιμα (λόγω του περιορισμού που υπάρχει στον πηγαίο κώδικα του πυρήνα, σας συνιστούμε να μην κάνετε την προσάρτηση απευθείας στον κατάλογο /usr/src, αλλά να χρησιμοποιήσετε κάποια άλλη τοποθεσία και να δημιουργήσετε τους κατάλληλους συμβολικούς δεσμούς που να αντιγράφουν τη δομή της κεντρικής ιεραρχίας του δέντρου πηγαίου κώδικα).

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

Για να επιλέξετε ένα υποσύνολο του πηγαίου κώδικα, από την επιλογή Distributions του εργαλείου εγκατάστασης συστήματος, επιλέξτε το μενού Custom.

3.19. Χρειάζεται να φτιάξω προσαρμοσμένο πυρήνα;

Η δημιουργία ενός νέου πυρήνα ήταν αρχικά σχεδόν υποχρεωτικό βήμα σε μια εγκατάσταση FreeBSD, αλλά οι πιο πρόσφατες εκδόσεις έχουν ωφεληθεί από την εισαγωγή αισθητά φιλικότερων προγραμμάτων ρύθμισης του πυρήνα. Από το FreeBSD 5.X και μετά, είναι αρκετά εύκολο να ρυθμίσετε τον πυρήνα χρησιμοποιώντας το πολύ πιο ευέλικτο σύστημα των "hints" τα οποία μπορείτε να ρυθμίσετε στην προτροπή του loader.

Ενδεχομένως να αξίζει ακόμα να δημιουργήσετε ένα νέο πυρήνα ο οποίος να περιέχει μόνο τα προγράμματα οδήγησης που χρειάζεστε, για να γλυτώσετε κάποια μικρή ποσότητα μνήμης RAM, αλλά αυτό δεν είναι πλέον απαραίτητο για τα περισσότερα συστήματα.

3.20. Για τους κωδικούς πρόσβασης των χρηστών, να χρησιμοποιήσω DES, Blowfish, ή MD5 κωδικοποίηση, και πως θα καθορίσω τι θα χρησιμοποιούν οι χρήστες μου;

Η προεπιλεγμένη μορφή κρυπτογράφησης για κωδικούς στο FreeBSD είναι το MD5. Η γενική αντίληψη είναι ότι παρέχουν καλύτερη ασφάλεια σε σχέση με την παραδοσιακή μορφή του UNIX® που βασίζεται στον αλγόριθμο DES. Οι κωδικοί DES είναι ακόμα διαθέσιμοι, αν χρειάζεται να διαμοιράσετε το αρχείο των κωδικών σας με παλιότερα λειτουργικά συστήματα, τα οποία χρησιμοποιούν ακόμα το παλιότερο και λιγότερο ασφαλές σύστημα (είναι διαθέσιμα αν εγκαταστήσετε τη διανομή «crypto» μέσω του sysinstall ή εγκαθιστώντας τον αντίστοιχο πηγαίο κώδικα αν κάνετε εγκατάσταση μέσω πηγαίου κώδικα). Αν εγκαταστήσετε τις βιβλιοθήκες crypto θα μπορέσετε επίσης να χρησιμοποιήσετε κρυπτογράφηση Blowfish η οποία είναι ακόμα πιο ασφαλής. Το ποια μορφή κωδικών χρησιμοποιείται για τους νέους κωδικούς, ελέγχεται από την δυνατότητα εισόδου «passwd_format» στο /etc/login.conf, το οποίο παίρνει τις τιμές «des», «blf» (αν είναι διαθέσιμη) ή «md5». Δείτε τη σελίδα manual του login.conf(5) για περισσότερες πληροφορίες σχετικά με τις δυνατότητες εισόδου.

3.21. Γιατί ενώ η δισκέτα εκκίνησης ξεκινάει κανονικά, κρεμάει στην οθόνη Probing Devices...;

Αν έχετε εγκατεστημένο οδηγό IDE Zip® ή Jaz®, αφαιρέστε τον και ξαναπροσπαθήστε. Η δισκέτα εκκίνησης μπορεί να μπερδευτεί από αυτούς τους οδηγούς. Μετά την εγκατάσταση του συστήματος, μπορείτε να ξανασυνδέσετε τον οδηγό. Ευελπιστούμε ότι το πρόβλημα αυτό θα διορθωθεί σε επόμενη έκδοση.

3.22. Γιατί παίρνω το μήνυμα λάθους “panic: can't mount root” όταν εκκινώ το σύστημα για πρώτη φορά μετά την εγκατάσταση;

Το σφάλμα αυτό προέρχεται από την σύγχυση που προκαλείται εξαιτίας του διαφορετικού τρόπου με τον οποίο το BIOS και το boot block αντιλαμβάνονται τους σκληρούς δίσκους. Το πρόβλημα συνήθως εμφανίζεται σε συστήματα με δύο δίσκους IDE, ειδικά όταν οι δίσκοι είναι master (ή μόνοι τους) ο καθένας στο δικό του ελεγκτή IDE και με το FreeBSD να είναι εγκαταστημένος στο δίσκο που βρίσκεται στο δευτερεύοντα ελεγκτή. Το boot block νομίζει ότι το σύστημα είναι εγκατεστημένο στον ad0 (το δεύτερο δίσκο του BIOS) ενώ ο πυρήνας αναθέτει τον πρώτο δίσκο στο δευτερεύοντα ελεγκτή, ad2. Μετά την ανίχνευση των συσκευών, ο πυρήνας προσπαθεί να προσαρτήσει αυτό που το boot block πιστεύει ότι είναι ο δίσκος εκκίνησης, ad0 ενώ στην πραγματικότητα είναι ο ad2 και φυσικά αποτυγχάνει.

Για να διορθώσετε το πρόβλημα, κάντε ένα από τα παρακάτω:

  1. Επανεκκινήστε το σύστημα και πιέστε Enter στην προτροπή Booting kernel in 10 seconds; hit [Enter] to interrupt. Με τον τρόπο αυτό θα βγείτε στο πρόγραμμα του φορτωτή εκκίνησης.

    Κατόπιν γράψτε set root_disk_unit="disk_number" . Το disk_number θα είναι 0 αν το FreeBSD είναι εγκατεστημένο στο master δίσκο του πρώτου ελεγκτή IDE, 1 αν είναι εγκατεστημένο στο slave δίσκο του πρώτου ελεγκτή, 2 αν είναι εγκατεστημένος στον master δίσκο του δευτερεύοντος IDE καναλιού και τέλος, 3 αν είναι εγκατεστημένο στο slave δίσκο του δευτερεύοντος IDE καναλιού.

    Έπειτα γράψτε boot, και το σύστημα σας θα πρέπει να εκκινήσει κανονικά.

    Για να κάνετε μόνιμη αυτή την αλλαγή (ώστε να μην χρειάζεται να κάνετε το παραπάνω κάθε φορά που επανεκκινείτε ή ενεργοποιείτε το FreeBSD μηχάνημα σας), βάλτε τη γραμμή root_disk_unit="disk_number " στο αρχείο /boot/loader.conf.local.

  2. Μετακινήστε το δίσκο του FreeBSD στον πρωτεύοντα ελεγκτή IDE, ώστε οι σκληροί δίσκοι να είναι συνεχόμενοι.

3.23. Ποια είναι τα όρια της μνήμης;

Το όριο είναι τα 4 gigabytes σε μια συνηθισμένη εγκατάσταση σε αρχιτεκτονική i386™. Ξεκινώντας από τις εκδόσεις FreeBSD 4.9 και 5.1, υποστηρίζεται και περισσότερη μνήμη μέσω του pae(4). Χρειάζεται ωστόσο να μεταγλωττιστεί ξανά ο πυρήνας περιλαμβάνοντας και μια έξτρα επιλογή για την ενεργοποίηση του PAE:

options       PAE

Το FreeBSD/pc98 έχει όριο τα 4 GB μνήμης, και δεν μπορεί να χρησιμοποιηθεί PAE σε αυτή την αρχιτεκτονική. Στο FreeBSD/alpha, το όριο της μνήμης εξαρτάται από τον τύπο του υλικού που χρησιμοποιείται - για λεπτομέρειες δείτε τις Σημειώσεις Έκδοσης Υλικού για Alpha. Άλλες αρχιτεκτονικές που υποστηρίζονται από το FreeBSD, έχουν αρκετά μεγαλύτερα θεωρητικά όρια σχετικά με τη μέγιστη ποσότητα μνήμης (πολλά terabytes).

3.24. Ποια είναι τα όρια του συστήματος αρχείων ffs;

Για συστήματα αρχείων ffs, το μέγιστο θεωρητικό όριο είναι τα 8 terabytes (2G blocks), ή 16ΤΒ για προεπιλεγμένο μέγεθος block των 8Κ. Στην πραγματικότητα, υπάρχει ένα αρχικό όριο 1 terabyte, αλλά με κάποιες μετατροπές, είναι δυνατόν να δημιουργηθούν (και υπάρχουν) συστήματα αρχείων μεγέθους 4 terabytes.

Το μέγιστο μέγεθος ενός αρχείου σε ένα σύστημα ffs είναι περίπου 1G blocks, ή 4TB με μέγεθος block των 4K.

Πίνακας 3-1. Μέγιστα μεγέθη αρχείων

Μέγεθος block fs λειτουργεί πρέπει να λειτουργεί
4K 4T-1 >4T
8K >32G 32T-1
16K >128G 32T-1
32K >512G 64T-1
64K >2048G 128T-1

Όταν το μέγεθος block του fs είναι 4K, λειτουργούν τα τριπλά έμμεσα blocks (triple indirect blocks) και τα πάντα θα έπρεπε να περιορίζονται μόνο από το μέγιστο αριθμό block που μπορεί να αναπαρασταθεί με τη χρήση τριπλών έμμεσων blocks (περίπου 1K^3 + 1K^2 + 1K), αλλά τελικά ο περιορισμός οφείλεται σε ένα (λάθος) όριο 1G-1 στους αριθμούς των blocks. Το όριο στους αριθμούς των block θα έπρεπε να είναι 2G-1. Υπάρχουν κάποια προβλήματα όταν οι αριθμοί των block του fs πλησιάζουν το 2G-1, αλλά τέτοιοι αριθμοί block δεν μπορούν να προσεγγιστούν όταν το μέγεθος block fs είναι 4Κ.

Για μεγέθη block 8Κ και μεγαλύτερα, τα πάντα θα έπρεπε να περιορίζονται από το όριο 2G-1 στους αριθμούς των block του fs, αλλά στην πραγματικότητα ο περιορισμός οφείλεται στο λάθος όριο 1G-1 στους αριθμούς των block του fs. H χρήση του σωστού ορίου των 2G-1 blocks, δημιουργεί πράγματι προβλήματα.

3.25. Γιατί παίρνω το μήνυμα λάθος, “archsw.readin.failed” μετά την μεταγλώττιση και εκκίνηση νέου πυρήνα;

Γιατί ο πυρήνας σας και το υπόλοιπο του βασικού συστήματος (world) είναι εκτός συγχρονισμού. Η λειτουργία σε αυτή την κατάσταση δεν υποστηρίζεται. Βεβαιωθείτε ότι χρησιμοποιείτε τις εντολές make buildworld και make buildkernel για να αναβαθμίσετε τον πυρήνα σας.

Μπορείτε να εκκινήσετε ορίζοντας τον πυρήνα απευθείας από το δεύτερο στάδιο, πιέζοντας οποιοδήποτε πλήκτρο μόλις δείτε το | και πριν ξεκινήσει ο loader.

3.26. Η εγκατάσταση καταρρέει κατά την εκκίνηση. Τι μπορώ να κάνω;

Δοκιμάστε να απενεργοποιήσετε την υποστήριξη ACPI. Μόλις ξεκινήσει ο φορτωτής εκκίνησης, πιέστε το πλήκτρο space. To σύστημα σας θα εμφανίσει

OK
. Γράψτε
unset acpi_load
και κατόπιν
boot
.

Σημειώσεις

[1]

Σε ένα e-mail από τον Keith Frechette .

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

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