diff options
Diffstat (limited to 'el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml')
-rw-r--r-- | el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml | 1638 |
1 files changed, 0 insertions, 1638 deletions
diff --git a/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml b/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml deleted file mode 100644 index 6bb92a77b9..0000000000 --- a/el_GR.ISO8859-7/books/handbook/kernelconfig/chapter.sgml +++ /dev/null @@ -1,1638 +0,0 @@ -<?xml version="1.0" encoding="iso-8859-7" standalone="no"?> -<!-- - - Το Εγχειρίδιο του FreeBSD: Ρυθμίζοντας τον Πυρήνα του FreeBSD - - The FreeBSD Greek Documentation Project - - $FreeBSD$ - - %SOURCE% en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml - %SRCID% 39097 - ---> - -<chapter id="kernelconfig"> - <chapterinfo> - <authorgroup> - <author> - <firstname>Jim</firstname> - <surname>Mock</surname> - <contrib>Ανανεώθηκε και αναδομήθηκε από τον </contrib> - <!-- Mar 2000 --> - </author> - </authorgroup> - <authorgroup> - <author> - <firstname>Jake</firstname> - <surname>Hamby</surname> - <contrib>Αρχική συνεισφορά από τον </contrib> - <!-- 6 Oct 1995 --> - </author> - </authorgroup> - </chapterinfo> - - <title>Ρυθμίζοντας τον Πυρήνα του &os;</title> - - <sect1 id="kernelconfig-synopsis"> - <title>Σύνοψη</title> - - <indexterm> - <primary>πυρήνας</primary> - <secondary>δημιουργία προσαρμοσμένου πυρήνα</secondary> - </indexterm> - - <para>Ο πυρήνας είναι η καρδιά του λειτουργικού συστήματος &os;. Είναι - υπεύθυνος για τη διαχείριση της μνήμης, την επιβολή των ρυθμίσεων - ασφαλείας, τη δικτύωση, την πρόσβαση στο δίσκο, και πολλά άλλα. Ένα - συνεχώς αυξανόμενο μέρος του &os; μπορεί να ρυθμιστεί δυναμικά, αλλά - υπάρχουν ακόμα περιπτώσεις οι οποίες απαιτούν ρυθμίσεις και μεταγλώττιση - του πυρήνα του &os; με προσαρμοσμένες παραμέτρους.</para> - - <para>Αφού διαβάσετε αυτό το κεφάλαιο, θα ξέρετε:</para> - - <itemizedlist> - <listitem> - <para>Για ποιους λόγους μπορεί να χρειαστεί να φτιάξετε ένα - προσαρμοσμένο πυρήνα.</para> - </listitem> - - <listitem> - <para>Πως να γράψετε ένα αρχείο ρυθμίσεων πυρήνα, ή να αλλάξετε ένα - υπάρχον αρχείο ρυθμίσεων.</para> - </listitem> - - <listitem> - <para>Πως να χρησιμοποιήσετε το αρχείο ρυθμίσεων του πυρήνα για να - φτιάξετε και να μεταγλωττίσετε ένα νέο πυρήνα.</para> - </listitem> - - <listitem> - <para>Πως να εγκαταστήσετε το νέο πυρήνα.</para> - </listitem> - - <listitem> - <para>Πως να επιλύσετε τυχόν προβλήματα με το νέο πυρήνα.</para> - </listitem> - </itemizedlist> - - <para>Όλες οι εντολές που εμφανίζονται σε αυτό το κεφάλαιο ως παραδείγματα - πρέπει να εκτελεστούν ως <username>root</username> για να είναι - επιτυχείς.</para> - </sect1> - - <sect1 id="kernelconfig-custom-kernel"> - <title>Γιατί να Φτιάξετε Προσαρμοσμένο Πυρήνα;</title> - - <para>Κατά παράδοση, το &os; είχε αυτό που αποκαλούμε - <quote>μονολιθικό</quote> πυρήνα. Αυτό σημαίνει ότι ο πυρήνας ήταν ένα - μεγάλο πρόγραμμα, υποστήριζε ένα σταθερό αριθμό συσκευών, και αν θέλατε - να αλλάξετε τη συμπεριφορά του, θα έπρεπε να μεταγλωττίσετε καινούριο - και να επανεκκινήσετε τον υπολογιστή σας με αυτόν.</para> - - <para>Σήμερα, το &os; κινείται ταχύτατα προς ένα μοντέλο όπου οι - περισσότερες λειτουργίες του πυρήνα περιέχονται σε modules (αρθρώματα) - τα οποία μπορούν να φορτωθούν και να αποφορτωθούν κατά απαίτηση, - δυναμικά στον πυρήνα. Αυτό επιτρέπει στον πυρήνα να προσαρμόζεται - σε υλικό το οποίο ενεργοποιείται τη δεδομένη στιγμή (όπως για - παράδειγμα όταν εισέρχεται μια κάρτα PCMCIA σε ένα φορητό υπολογιστή). - Επίσης επιτρέπει στον πυρήνα να επεκτείνει δυναμικά τη λειτουργικότητά - του, προσθέτοντας χαρακτηριστικά τα οποία δεν ήταν απαραίτητα όταν - είχε μεταγλωττιστεί αρχικά. Αυτού του είδους ο πυρήνας είναι γνωστός ως - modular (αρθρωτός).</para> - - <para>Παρ' όλα αυτά, είναι ακόμα απαραίτητο να γίνουν κάποιες στατικές - ρυθμίσεις στον πυρήνα. Σε ορισμένες περιπτώσεις, αυτό συμβαίνει επειδή - η συγκεκριμένη λειτουργία είναι τόσο στενά συνδεμένη με τον πυρήνα - ώστε δεν μπορεί να φορτωθεί δυναμικά. Σε άλλες, συμβαίνει επειδή απλά - κανείς δεν έχει ακόμα ασχοληθεί να γράψει ένα δυναμικό module που να - παρέχει αυτή τη λειτουργικότητα.</para> - - <para>Η δημιουργία προσαρμοσμένου πυρήνα είναι από τις πλέον σημαντικές - τελετουργίες κάθε προχωρημένου χρήστη του BSD. Η διαδικασία - αυτή, αν και χρονοβόρα, θα αποβεί ιδιαίτερα ωφέλιμη για το &os; σύστημα - σας. Σε αντίθεση με τον πυρήνα <filename>GENERIC</filename>, ο οποίος - πρέπει να υποστηρίξει μεγάλο εύρος συσκευών, ένας προσαρμοσμένος πυρήνας - περιέχει υποστήριξη μόνο για το υλικό του <emphasis>δικού σας</emphasis> - υπολογιστή. Έτσι έχετε κάποια οφέλη, όπως:</para> - - <itemizedlist> - <listitem> - <para>Ταχύτερη εκκίνηση. Καθώς ο πυρήνας θα ανιχνεύει μόνο το υλικό - που έχετε στο σύστημα σας, ο χρόνος που χρειάζεται για την εκκίνηση - του συστήματος σας θα μειωθεί δραματικά.</para> - </listitem> - - <listitem> - <para>Χαμηλότερη κατανάλωση μνήμης. Ένας προσαρμοσμένος πυρήνας, - συχνά χρησιμοποιεί λιγότερη μνήμη από τον - πυρήνα <filename>GENERIC</filename>, αφού απουσιάζουν από αυτόν - συσκευές και χαρακτηριστικά που δεν χρησιμοποιούνται. Αυτό είναι - σημαντικό, καθώς ο πυρήνας βρίσκεται πάντα φορτωμένος στη φυσική - μνήμη, μειώνοντας έτσι τη μνήμη που είναι διαθέσιμη για εφαρμογές. - Για το λόγο αυτό, ο προσαρμοσμένος πυρήνας είναι ιδιαίτερα χρήσιμος - σε συστήματα με μικρό μέγεθος φυσικής μνήμης (RAM).</para> - </listitem> - - <listitem> - <para>Επιπρόσθετη υποστήριξη συσκευών. Ο προσαρμοσμένος πυρήνας σας - επιτρέπει να προσθέσετε υποστήριξη για συσκευές οι οποίες δεν - υπάρχουν στον <filename>GENERIC</filename> πυρήνα, όπως για - παράδειγμα για κάρτες ήχου.</para> - </listitem> - </itemizedlist> - </sect1> - - <sect1 id="kernelconfig-devices"> - <sect1info> - <authorgroup> - <author> - <firstname>Tom</firstname> - <surname>Rhodes</surname> - <contrib>Γράφηκε από τον </contrib> - </author> - </authorgroup> - </sect1info> - <title>Ανακαλύπτοντας τις Συσκευές του Συστήματος σας</title> - - <para>Πριν ξεκινήσετε με τη ρύθμιση του πυρήνα σας, θα ήταν σκόπιμο να - κάνετε μια απογραφή υλικού του υπολογιστή σας. Σε περιπτώσεις που το - &os; δεν είναι το βασικό σας λειτουργικό σύστημα, μπορείτε εύκολα να - δημιουργήσετε αυτή τη λίστα, εξετάζοντας τις ρυθμίσεις του τρέχοντος - λειτουργικού συστήματος. Για παράδειγμα, η - <application>Διαχείριση Συσκευών (Device Manager)</application> της - µsoft; δείχνει συνήθως σημαντικές πληροφορίες σχετικά με τις - εγκατεστημένες συσκευές. Μπορείτε να βρείτε την - <application>Διαχείριση Συσκευών</application> - στον πίνακα ελέγχου.</para> - - <note> - <para>Μερικές εκδόσεις των µsoft.windows; διαθέτουν ένα εικονίδιο - με τίτλο <application>Σύστημα (System)</application>. Από την οθόνη - που εμφανίζεται μπορείτε να επιλέξετε την - <application>Διαχείριση Συσκευών</application>.</para> - </note> - - <para>Αν δεν υπάρχει άλλο λειτουργικό σύστημα στον υπολογιστή, - ο διαχειριστής θα πρέπει να βρει αυτές τις πληροφορίες χειροκίνητα. Μια - μέθοδος είναι με τη χρήση του βοηθητικού προγράμματος &man.dmesg.8; και - της εντολής &man.man.1;. Τα περισσότερα προγράμματα οδήγησης του &os; - διαθέτουν σελίδα manual, η οποία δείχνει το υποστηριζόμενο υλικό. Κατά - τη διάρκεια της εκκίνησης, εμφανίζεται μια λίστα με τις συσκευές που - ανιχνεύθηκαν. Για παράδειγμα, οι παρακάτω γραμμές δείχνουν ότι το - πρόγραμμα οδήγησης <devicename>psm</devicename> εντόπισε ένα - ποντίκι:</para> - - <programlisting>psm0: <PS/2 Mouse> irq 12 on atkbdc0 -psm0: [GIANT-LOCKED] -psm0: [ITHREAD] -psm0: model Generic PS/2 mouse, device ID 0</programlisting> - - <para>Αυτό το πρόγραμμα οδήγησης θα πρέπει να περιληφθεί στο αρχείο - ρυθμίσεων του προσαρμοσμένου πυρήνα σας, ή να φορτωθεί δυναμικά μέσω - του &man.loader.conf.5;.</para> - - <para>Σε ορισμένες περιπτώσεις, η έξοδος της <command>dmesg</command> - μπορεί να δείχνει μόνο τα μηνύματα του συστήματος και όχι τα - αποτελέσματα της ανίχνευσης συσκευών. Στις περιπτώσεις αυτές, μπορείτε - να δείτε την επιθυμητή έξοδο στα περιεχόμενα του αρχείου - <filename>/var/run/dmesg.boot</filename>.</para> - - <para>Μια άλλη μέθοδος για την ανίχνευση του υλικού, είναι μέσω του - βοηθητικού προγράμματος &man.pciconf.8;, το οποίο παρέχει πιο αναλυτική - περιγραφή. Για παράδειγμα:</para> - - <programlisting>ath0@pci0:3:0:0: class=0x020000 card=0x058a1014 chip=0x1014168c rev=0x01 hdr=0x00 -vendor = 'Atheros Communications Inc.' -device = 'AR5212 Atheros AR5212 802.11abg wireless' -class = network -subclass = ethernet</programlisting> - - <para>Η παραπάνω έξοδος, που λήφθηκε μέσω της εντολής - <command>pciconf <option>-lv</option></command>, δείχνει ότι το - πρόγραμμα οδήγησης <devicename>ath</devicename> εντόπισε μια συσκευή - ασύρματου Ethernet. Μπορείτε να δείτε την αντίστοιχη σελίδα manual - του προγράμματος &man.ath.4;, χρησιμοποιώντας την εντολή - <command>man <replaceable>ath</replaceable></command>.</para> - - <para>Μπορείτε επίσης να πάρετε χρήσιμες πληροφορίες από την εντολή - &man.man.1;, αν δώσετε την επιλογή <option>-k</option>. Στο παραπάνω - παράδειγμα, δίνοντας:</para> - - <screen>&prompt.root; man -k <replaceable>Atheros</replaceable></screen> - - <para>Θα δείτε μια λίστα από σελίδες manual που περιέχουν τη - συγκεκριμένη λέξη:</para> - - <programlisting>ath(4) - Atheros IEEE 802.11 wireless network driver -ath_hal(4) - Atheros Hardware Access Layer (HAL)</programlisting> - - <para>Έχοντας διαθέσιμη την απογραφή υλικού του υπολογιστή σας, - η διαδικασία δημιουργίας προσαρμοσμένου πυρήνα σίγουρα φαίνεται - λιγότερο αποθαρρυντική.</para> - </sect1> - - <sect1 id="kernelconfig-modules"> - <title>Προγράμματα Οδήγησης, Υποσυστήματα και Αρθρώματα (modules)</title> - <indexterm> - <primary>kernel</primary> - <secondary>drivers / modules / subsystems</secondary> - </indexterm> - - <para>Πριν δημιουργήσετε ένα προσαρμοσμένο πυρήνα, θα πρέπει πρώτα να - σκεφτείτε για ποιους λόγους τον χρειάζεστε. Σε πολλές περιπτώσεις, - η υποστήριξη κάποιας συγκεκριμένης συσκευής μπορεί να επιτευχθεί με την - χρήση κάποιου αρθρώματος (module).</para> - - <para>Τα αρθρώματα του πυρήνα βρίσκονται στον κατάλογο - <filename class="directory">/boot/kernel/</filename> και μπορούν να - φορτωθούν δυναμικά στον πυρήνα που εκτελείται τη δεδομένη στιγμή, με - τη χρήση της εντολής &man.kldload.8;. Τα περισσότερα, αν και όχι όλα, - τα προγράμματα οδήγησης στον πυρήνα, διατίθενται και σε μορφή - αρθρώματος· έχουν επίσης τη δική του σελίδα βοήθειας το καθένα. Για - παράδειγμα, στην προηγούμενη ενότητα, είδαμε το πρόγραμμα οδήγησης - ασύρματου Ethernet <devicename>ath</devicename>. Η σελίδα βοήθειας - για αυτή τη συσκευή αναφέρει:</para> - - <programlisting>Alternatively, to load the driver as a module at boot time, place the -following line in &man.loader.conf.5;: - - if_ath_load="YES"</programlisting> - - <para>Όπως αναφέρεται στις οδηγίες, αν βάλετε την γραμμή - <literal>if_ath_load="YES"</literal> στο αρχείο - <filename>/boot/loader.conf</filename>, το άρθρωμα θα φορτωθεί δυναμικά - κατά την εκκίνηση του συστήματος σας.</para> - - <para>Σε μερικές περιπτώσεις ωστόσο, δεν υπάρχει άρθρωμα που να σχετίζεται - με κάποιο πρόγραμμα οδήγησης. Αυτό ισχύει περισσότερο για κάποια - ιδιαίτερα υποσυστήματα και πολύ σημαντικά προγράμματα οδήγησης. Για - παράδειγμα, το πρόγραμμα οδήγησης του συστήματος αρχείων fast file - system (<acronym>FFS</acronym>) απαιτείται να είναι ενσωματωμένο στον - πυρήνα. Το ίδιο συμβαίνει και με την υποστήριξη δικτύου (INET). - Δυστυχώς, ο μόνος τρόπος για να δείτε αν ένα πρόγραμμα οδήγησης πρέπει - να είναι υποχρεωτικά ενσωματωμένο στον πυρήνα, είναι να ελέγξετε αν - υπάρχει το αντίστοιχο άρθρωμα.</para> - - <warning> - <para>Είναι αρκετά εύκολο να αφαιρέσετε την υποστήριξη για κάποια - συσκευή ή άλλη επιλογή, και να καταλήξετε με ένα πυρήνα που δεν μπορεί - να ξεκινήσει. Για παράδειγμα, αν βγάλετε το πρόγραμμα οδήγησης - &man.ata.4; από το αρχείο ρυθμίσεων του πυρήνα σας, αν το σύστημα σας - χρησιμοποιεί δίσκους <acronym>ATA</acronym> δεν θα μπορεί να - ξεκινήσει. Στην περίπτωση αυτή θα πρέπει να βάλετε την αντίστοιχη - γραμμή στο αρχείο <filename>loader.conf</filename> για να φορτώσετε - το σχετικό άρθρωμα. Αν δεν είστε σίγουροι, ελέγξτε για την ύπαρξη - του αρθρώματος και απλώς αφήστε την υποστήριξη ενσωματωμένη στον - πυρήνα.</para> - </warning> - </sect1> - - <sect1 id="kernelconfig-building"> - <title>Δημιουργία και Εγκατάσταση Προσαρμοσμένου Πυρήνα</title> - <indexterm> - <primary>kernel</primary> - <secondary>building / installing</secondary> - </indexterm> - - <note> - <para>Χρειάζεται να έχετε εγκαταστήσει όλο τον πηγαίο κώδικα του - &os; για να μεταγλωττίσετε τον πυρήνα.</para> - </note> - - <para>Αρχικά, θα κάνουμε μια γρήγορη παρουσίαση του καταλόγου στον οποίο - γίνεται η μεταγλώττιση του πυρήνα. Όλοι οι κατάλογοι που θα αναφέρουμε - βρίσκονται κάτω από τον κατάλογο <filename>/usr/src/sys</filename> ο - οποίος είναι επίσης προσβάσιμος μέσω της διαδρομής - <filename>/sys</filename>. Υπάρχει εδώ ένας αριθμός υποκαταλόγων ο - οποίος αντιπροσωπεύει διαφορετικά τμήματα του πυρήνα, αλλά οι πλέον - σημαντικοί για το σκοπό μας είναι οι - <filename><replaceable>arch</replaceable>/conf</filename>, όπου θα - επεξεργαστείτε τις ρυθμίσεις για τον προσαρμοσμένο πυρήνα σας, και ο - <filename>compile</filename>, που είναι ο χώρος εργασίας στον οποίο θα - γίνει η μεταγλώττιση του. Ο <replaceable>arch</replaceable> - αντιπροσωπεύει ένα από τα <filename>i386</filename>, - <filename>amd64</filename>, - <filename>ia64</filename>, <filename>powerpc</filename>, - <filename>sparc64</filename>, ή <filename>pc98</filename> - (ένας εναλλακτικός τύπος PC, διαδεδομένος στην Ιαπωνία). Οτιδήποτε - βρίσκεται μέσα στον συγκεκριμένο κατάλογο μιας αρχιτεκτονικής, - σχετίζεται μόνο με την αρχιτεκτονική αυτή. Το υπόλοιπο του κώδικα, - είναι ανεξάρτητο από την αρχιτεκτονική και κοινό σε κάθε πλατφόρμα όπου - θα μπορούσε να μεταγλωττιστεί το &os;. Παρατηρήστε τη λογική οργάνωση - της δομής των καταλόγων, όπου κάθε υποστηριζόμενη συσκευή, σύστημα - αρχείων και επιλογή βρίσκεται στο δικό της κατάλογο.</para> - - <para>Στα παραδείγματα αυτού του κεφαλαίου υποθέτουμε ότι χρησιμοποιείτε - την αρχιτεκτονική i386. Αν χρησιμοποιείτε διαφορετική αρχιτεκτονική, - θα χρειαστεί να αλλάξετε τα ονόματα των καταλόγων και διαδρομών ώστε - να συμβαδίζουν με αυτή.</para> - - <note> - <para>Αν δεν υπάρχει ο κατάλογος - <filename class="directory">/usr/src/</filename> στο σύστημα σας - (ή αν είναι άδειος), τότε δεν έχετε - εγκαταστήσει τον πηγαίο κώδικα. Ο ευκολότερος τρόπος για - να εγκαταστήσετε τον πλήρη πηγαίο κώδικα, είναι να μέσω του - &man.csup.1; όπως περιγράφεται στο <xref linkend="synching"/>. - Θα πρέπει επίσης να δημιουργήσετε ένα συμβολικό δεσμό προς - τον κατάλογο <filename - class="directory">/usr/src/sys/</filename>:</para> - - <screen>&prompt.root; <userinput>ln -s /usr/src/sys /sys</userinput></screen> - </note> - - <para>Έπειτα, μετακινηθείτε στον κατάλογο - <filename><replaceable>arch</replaceable>/conf</filename> - και αντιγράψτε το αρχείο ρυθμίσεων <filename>GENERIC</filename> στο - όνομα το οποίο θέλετε να δώσετε στο νέο σας πυρήνα. Για παράδειγμα: - </para> - - <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf</userinput> -&prompt.root; <userinput>cp GENERIC <replaceable>MYKERNEL</replaceable></userinput></screen> - - <para>Κατά παράδοση, το όνομα αυτό γράφεται εξ' ολοκλήρου με κεφαλαία - γράμματα και αν έχετε πολλά μηχανήματα &os; με διαφορετικό υλικό, - είναι καλή ιδέα να του δώσετε το όνομα του μηχανήματος. Για το - παράδειγμα μας, θα το αποκαλούμε - <filename><replaceable>MYKERNEL</replaceable></filename>.</para> - - <tip> - <para>Δεν είναι γενικά καλή ιδέα να αποθηκεύσετε το αρχείο ρυθμίσεων σας - απευθείας στον κατάλογο <filename>/usr/src</filename>. Αν - αντιμετωπίσετε προβλήματα, ίσως μπείτε στον πειρασμό να διαγράψετε - απλώς τον κατάλογο <filename>/usr/src</filename> και να ξεκινήσετε - από την αρχή. Συνήθως λίγα δευτερόλεπτα μετά από αυτό θα - συνειδητοποιήσετε ότι έχετε επίσης διαγράψει το αρχείο ρυθμίσεων - του πυρήνα σας. Επίσης, μην επεξεργάζεστε απευθείας το αρχείο - <filename>GENERIC</filename>, καθώς μπορεί οι αλλαγές σας να χαθούν - την επόμενη φορά που θα - <link linkend="updating-upgrading">ανανεώσετε τον πηγαίο σας κώδικα</link>. - </para> - - <para>Καλό θα είναι να αποθηκεύσετε το αρχείο ρυθμίσεων σε άλλο κατάλογο - και να δημιουργήσετε ένα συμβολικό δεσμό προς το αρχείο, στον κατάλογο - <filename><replaceable>i386</replaceable></filename>.</para> - - <para>Για παράδειγμα:</para> - - <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf</userinput> -&prompt.root; <userinput>mkdir /root/kernels</userinput> -&prompt.root; <userinput>cp GENERIC /root/kernels/<replaceable>MYKERNEL</replaceable></userinput> -&prompt.root; <userinput>ln -s /root/kernels/<replaceable>MYKERNEL</replaceable></userinput></screen> - </tip> - - <para>Τώρα, τροποποιήστε το αρχείο - <filename><replaceable>MYKERNEL</replaceable></filename> με τον - επεξεργαστή κειμένου που προτιμάτε. Αν ξεκινάτε μόλις τώρα, πιθανόν ο - μόνος διαθέσιμος επεξεργαστής κειμένου να είναι το - <application>vi</application>, ο οποίος είναι αρκετά πολύπλοκος για να - τον εξηγήσουμε εδώ, αλλά καλύπτεται αρκετά καλά από πλήθος βιβλίων στην - <link linkend="bibliography">βιβλιογραφία</link>. Ωστόσο, το &os; - διαθέτει επίσης ένα ευκολότερο επεξεργαστή κειμένου, τον - <application>ee</application> ο οποίος είναι η κατάλληλη επιλογή αν - είστε αρχάριος. Αλλάξτε κατά βούληση τα σχόλια στην αρχή του αρχείου - ρυθμίσεων ώστε να αντανακλούν τις αλλαγές που έχετε κάνει και οι οποίες - το διαχωρίζουν από το <filename>GENERIC</filename>.</para> - <indexterm><primary>SunOS</primary></indexterm> - - <para>Αν έχετε δημιουργήσει πυρήνα στο &sunos; ή σε κάποιο άλλο - λειτουργικό σύστημα τύπου BSD, το μεγαλύτερο μέρος αυτού του αρχείου - θα σας φανεί γνωστό. Από την άλλη, αν έρχεστε από κάποιο άλλο - λειτουργικό, όπως το DOS το αρχείο ρυθμίσεων - <filename>GENERIC</filename> ίσως να σας είναι δύσκολο στην κατανόηση, - για το λόγο αυτό ακολουθήστε αργά και προσεκτικά τις περιγραφές του - τμήματος - <link linkend="kernelconfig-config">Αρχείο Ρυθμίσεων</link>.</para> - - <note> - <para>Αν <link - linkend="updating-upgrading">συγχρονίσετε τον πηγαίο κώδικα</link> - με τις τελευταίες αλλαγές του &os; project, να διαβάσετε το αρχείο - <filename>/usr/src/UPDATING</filename> πριν προχωρήσετε σε οποιοδήποτε - βήμα αναβάθμισης. Το αρχείο αυτό περιγράφει πιθανά σημαντικά - προβλήματα ή περιοχές που χρειάζονται ιδιαίτερη προσοχή όσο αφορά τον - ανανεωμένο πηγαίο κώδικα. Το αρχείο - <filename>/usr/src/UPDATING</filename> ταιριάζει πάντα με την έκδοση - του πηγαίου κώδικα του &os; που έχετε, και είναι για αυτό το λόγο - πιο ενημερωμένο σε σχέση με ότι διαβάσετε στο παρόν βιβλίο.</para> - </note> - - <para>Θα πρέπει τώρα να μεταγλωττίσετε τον πηγαίο κώδικα του πυρήνα. - </para> - - <procedure> - <title>Μεταγλώττιση του Πυρήνα</title> - - <note> - <para>Χρειάζεται να έχετε εγκαταστήσει όλο τον πηγαίο κώδικα του - &os; για να μεταγλωττίσετε τον πυρήνα.</para> - </note> - - <step> - <para>Μετακινηθείτε στον κατάλογο <filename - class="directory">/usr/src</filename>:</para> - - <screen>&prompt.root; <userinput>cd /usr/src</userinput></screen> - </step> - - <step> - <para>Μεταγλωττίστε τον πυρήνα:</para> - - <screen>&prompt.root; <userinput>make buildkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput></screen> - </step> - - <step> - <para>Εγκαταστήστε το νέο πυρήνα:</para> - - <screen>&prompt.root; <userinput>make installkernel KERNCONF=<replaceable>MYKERNEL</replaceable></userinput></screen> - </step> - </procedure> - - <tip> - <para>Από προεπιλογή, όταν δημιουργείτε ένα προσαρμοσμένο πυρήνα, - δημιουργούνται επίσης και <emphasis>όλα</emphasis> τα modules - (αρθρώματα) πυρήνα. Αν θέλετε να κάνετε πιο γρήγορη ανανέωση του - πυρήνα ή να δημιουργήσετε μόνο συγκεκριμένα modules, θα πρέπει να - τροποποιήσετε το αρχείο <filename>/etc/make.conf</filename> πριν - ξεκινήσετε τη δημιουργία του πυρήνα:</para> - - <programlisting>MODULES_OVERRIDE = linux acpi sound/sound sound/driver/ds1 ntfs</programlisting> - - <para>Στη μεταβλητή αυτή δίνετε μια λίστα των modules που θέλετε να - δημιουργηθούν, αντί να δημιουργηθούν όλα.</para> - - <programlisting>WITHOUT_MODULES = linux acpi sound ntfs</programlisting> - - <para>Στη μεταβλητή αυτή δίνετε μια λίστα βασικών (top level) modules - που θέλετε να παραλείψετε κατά τη διαδικασία δημιουργίας. Για άλλες - μεταβλητές που ίσως είναι χρήσιμες στη διαδικασία δημιουργίας πυρήνα, - δείτε τη σελίδα manual του &man.make.conf.5;.</para> - </tip> - - <indexterm> - <primary><filename class="directory">/boot/kernel.old</filename></primary> - </indexterm> - - <para>Ο νέος πυρήνας θα αντιγραφεί στον κατάλογο - <filename class="directory">/boot/kernel</filename> με το όνομα - <filename>/boot/kernel/kernel</filename> ενώ ο παλιός πυρήνας θα - μετακινηθεί στο <filename>/boot/kernel.old/kernel</filename>. Τερματίστε - τώρα το σύστημα σας και επανεκκινήστε για να χρησιμοποιήσετε το νέο - πυρήνα. Αν κάτι πάει στραβά, υπάρχουν κάποιες πληροφορίες για - <link linkend="kernelconfig-trouble">Αντιμετώπιση Προβλημάτων</link> που - ίσως σας φανούν χρήσιμες, στο τέλος αυτού του κεφαλαίου. Βεβαιωθείτε ότι - διαβάσατε το τμήμα που εξηγεί πως να επαναφέρετε το σύστημα σας σε - περίπτωση που ο νέος πυρήνας - <link linkend="kernelconfig-noboot">δεν εκκινεί</link>.</para> - - <note> - <para>Άλλα αρχεία που σχετίζονται με τη διαδικασία εκκίνησης, όπως ο - &man.loader.8; και οι ρυθμίσεις του, βρίσκονται στον κατάλογο - <filename>/boot</filename>. Εξειδικευμένα modules ή modules τρίτων - κατασκευαστών μπορούν να τοποθετηθούν στον κατάλογο - <filename class="directory">/boot/kernel</filename>, αν και οι χρήστες - θα πρέπει να γνωρίζουν ότι είναι σημαντικό τα modules να είναι σε - συγχρονισμό με τον πυρήνα. Modules τα οποία δεν προορίζονται για - εκτέλεση με τον τρέχοντα πυρήνα, μπορούν να προκαλέσουν αστάθεια - ή εσφαλμένη λειτουργία του συστήματος σας.</para> - </note> - </sect1> - - <sect1 id="kernelconfig-config"> - <sect1info> - <authorgroup> - <author> - <firstname>Joel</firstname> - <surname>Dahl</surname> - <contrib>Ανανεώθηκε για το &os; </contrib> - </author> - </authorgroup> - </sect1info> - <title>Το Αρχείο Ρυθμίσεων</title> - <indexterm> - <primary>kernel</primary> - <secondary>NOTES</secondary> - </indexterm> - <indexterm><primary>NOTES</primary></indexterm> - <indexterm> - <primary>kernel</primary> - <secondary>configuration file</secondary> - </indexterm> - - <para>Η γενική μορφή ενός αρχείου ρυθμίσεων πυρήνα, είναι αρκετά απλή. - Κάθε γραμμή περιέχει μια λέξη-κλειδί και ένα ή περισσότερα ορίσματα. Για - λόγους απλότητας, οι περισσότερες γραμμές περιέχουν μόνο ένα όρισμα. - Οτιδήποτε βρίσκεται μετά το σύμβολο <literal>#</literal> θεωρείται - σχόλιο και αγνοείται. Στα επόμενα τμήματα θα βρείτε περιγραφή για τις - λέξεις-κλειδιά, με τη σειρά που εμφανίζονται στο αρχείο ρυθμίσεων - <filename>GENERIC</filename>. - <anchor - id="kernelconfig-options"/> Για εξαντλητική λίστα των παραμέτρων και - συσκευών που εξαρτώνται από την αρχιτεκτονική, δείτε το αρχείο - <filename>NOTES</filename> το οποίο βρίσκεται στον ίδιο κατάλογο με το - αρχείο <filename>GENERIC</filename>. Για επιλογές και ρυθμίσεις που - είναι ανεξάρτητες από την αρχιτεκτονική, δείτε το αρχείο - <filename>/usr/src/sys/conf/NOTES</filename>.</para> - - <para>Μπορείτε να χρησιμοποιήσετε την οδηγία - <literal>include</literal> στα αρχεία ρυθμίσεων. Η οδηγία αυτή - επιτρέπει την λογική συμπερίληψη ενός άλλου αρχείου ρυθμίσεων μέσα στο - τρέχον, κάνοντας πιο εύκολη τη συντήρηση του όταν οι αλλαγές που - χρειάζονται είναι λίγες σε σχέση με το αρχικό αρχείο. Για παράδειγμα, - αν χρειάζεστε ένα πυρήνα <filename>GENERIC</filename> με λίγες μόνο - παραπάνω επιλογές ή προγράμματα οδήγησης, μπορείτε να δημιουργήσετε ένα - μικρό αρχείο διαφορών σε σχέση με τον - <filename>GENERIC</filename>:</para> - - <programlisting>include GENERIC -ident MYKERNEL - -options IPFIREWALL -options DUMMYNET -options IPFIREWALL_DEFAULT_TO_ACCEPT -options IPDIVERT</programlisting> - - <para>Πολλοί διαχειριστές βρίσκουν ότι αυτό το μοντέλο προσφέρει σημαντικά - πλεονεκτήματα σε σχέση με τον παραδοσιακό τρόπο συγγραφής αρχείων - ρυθμίσεων από το μηδέν: το τοπικό αρχείο ρυθμίσεων περιέχει μόνο τις - διαφορές από ένα πυρήνα <filename>GENERIC</filename>. Καθώς γίνονται - αναβαθμίσεις στο σύστημα, τα νέα χαρακτηριστικά και δυνατότητες που - προστίθενται στον <filename>GENERIC</filename> θα προστεθούν και - στον προσαρμοσμένο πυρήνα, εκτός αν το αποτρέψετε χρησιμοποιώντας το - <literal>nooptions</literal> ή το <literal>nodevice</literal>. - Το υπόλοιπο αυτού του κεφαλαίου, εξηγεί το περιεχόμενο ενός τυπικού - αρχείου ρυθμίσεων και το ρόλο που έχουν οι διάφορες επιλογές και τα - προγράμματα οδήγησης που εμφανίζονται σε αυτό.</para> - - <note> - <para>Για να δημιουργήσετε ένα αρχείο το οποίο να περιέχει όλες τις - διαθέσιμες επιλογές, όπως γίνεται συνήθως για δοκιμές, εκτελέστε την - ακόλουθη εντολή ως <username>root</username>:</para> - - <screen>&prompt.root; <userinput>cd /usr/src/sys/<replaceable>i386</replaceable>/conf && make LINT</userinput></screen> - </note> - - <indexterm> - <primary>kernel</primary> - <secondary>configuration file</secondary> - </indexterm> - - <para>Το παρακάτω είναι ένα παράδειγμα του αρχείου ρυθμίσεων - <filename>GENERIC</filename> με επιπρόσθετα διευκρινιστικά σχόλια όπου - είναι απαραίτητο. Το παράδειγμα θα πρέπει να ταιριάζει αρκετά καλά - με το αντίγραφο του αρχείου πού έχετε στο - <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/GENERIC</filename>.</para> - - <indexterm> - <primary>kernel options</primary> - <secondary>machine</secondary> - </indexterm> - - <programlisting>machine i386</programlisting> - - <para>Πρόκειται για την αρχιτεκτονική του μηχανήματος. Πρέπει να είναι - <literal>amd64</literal>, - <literal>i386</literal>, <literal>ia64</literal>, - <literal>pc98</literal>, <literal>powerpc</literal>, ή - <literal>sparc64</literal>.</para> - - <indexterm> - <primary>kernel options</primary> - <secondary>cpu</secondary> - </indexterm> - <programlisting>cpu I486_CPU -cpu I586_CPU -cpu I686_CPU</programlisting> - - <para>Η παραπάνω επιλογή καθορίζει τον τύπο της CPU που έχετε στο σύστημα - σας. Μπορεί να έχετε παραπάνω από μια τέτοιες γραμμές (αν για παράδειγμα - δεν είστε σίγουρος αν θα πρέπει να χρησιμοποιήσετε - <literal>I586_CPU</literal> ή <literal>I686_CPU</literal>), - αλλά για ένα προσαρμοσμένο πυρήνα είναι καλύτερα να καθορίσετε μόνο τη - CPU που έχετε. Αν δεν είστε σίγουρος για τον τύπο της CPU μπορείτε να - ελέγξετε το αρχείο <filename>/var/run/dmesg.boot</filename> για να δείτε - τα μηνύματα εκκίνησης του συστήματος σας.</para> - - <indexterm> - <primary>kernel options</primary> - <secondary>ident</secondary> - </indexterm> - - <programlisting>ident GENERIC</programlisting> - - <para>Αυτό είναι το αναγνωριστικό όνομα του πυρήνα. Θα πρέπει να το - αλλάξετε στο όνομα που δώσατε στον πυρήνα σας, π.χ. - <literal>MYKERNEL</literal> αν έχετε ακολουθήσει τις οδηγίες από το - προηγούμενο μας παράδειγμα. Η τιμή που θα βάλετε στο αλφαριθμητικό - <literal>ident</literal> θα εκτυπώνεται όταν εκκινείτε με τον - συγκεκριμένο πυρήνα, και έτσι είναι χρήσιμο να δώσετε στο νέο πυρήνα ένα - διαφορετικό όνομα αν θέλετε να το ξεχωρίζετε από το συνηθισμένο πυρήνα - σας (αν π.χ. θέλετε να φτιάξετε ένα πειραματικό πυρήνα).</para> - - <programlisting>#To statically compile in device wiring instead of /boot/device.hints -#hints "GENERIC.hints" # Default places to look for devices.</programlisting> - - <para>Το αρχείο &man.device.hints.5; χρησιμοποιείται για τον καθορισμό - επιλογών που σχετίζονται με τους οδηγούς συσκευών. Η προεπιλεγμένη θέση - την οποία ελέγχει ο &man.loader.8; κατά την εκκίνηση είναι το - <filename>/boot/device.hints</filename>. Χρησιμοποιώντας την επιλογή - <literal>hints</literal> μπορείτε να ενσωματώσετε στατικά τις οδηγίες - αυτές μέσα στον πυρήνα. Στην περίπτωση αυτή δεν υπάρχει λόγος να - δημιουργήσετε το αρχείο <filename>device.hints</filename> στον κατάλογο - <filename>/boot</filename>.</para> - - <!-- XXX: Add a comment here that explains when compiling hints into - the kernel is a good idea and why. --> - - <programlisting>makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols</programlisting> - - <para>Η φυσιολογική διαδικασία δημιουργίας του &os; περιλαμβάνει - πληροφορίες εκσφαλμάτωσης (debugging) όταν ο πυρήνας δημιουργείται με - την επιλογή <option>-g</option>, επιτρέποντας έτσι την χρήση τους όταν - δοθούν στο &man.gcc.1;.</para> - - <programlisting>options SCHED_ULE # ULE scheduler</programlisting> - - <para>Ο προεπιλεγμένος scheduler του &os;. Κρατήστε την επιλογή - αυτή.</para> - - <programlisting>options PREEMPTION # Enable kernel thread preemption</programlisting> - - <para>Επιτρέπει σε νήματα του πυρήνα να προσπεραστούν από άλλα, - υψηλότερης προτεραιότητας. Βοηθάει στην αύξηση απόκρισης του - συστήματος και επιτρέπει σε νήματα διακοπών (interrupts) να εκτελεστούν - πιο γρήγορα, αντί να μένουν σε αναμονή.</para> - - <programlisting>options INET # InterNETworking</programlisting> - - <para>Υποστήριξη δικτύου. Αφήστε την επιλογή αυτή ενεργοποιημένη, ακόμα - και αν δεν σκοπεύετε να συνδεθείτε σε κάποιο δίκτυο. Τα περισσότερα - προγράμματα χρειάζονται έστω και την εσωτερική (loopback) δικτύωση - (τη δυνατότητα δηλ. να κάνουν συνδέσεις δικτύου μέσα στο ίδιο σας το - μηχάνημα), καθιστώντας την επιλογή αυτή ουσιαστικά υποχρεωτική.</para> - - <programlisting>options INET6 # IPv6 communications protocols</programlisting> - - <para>Η επιλογή αυτή ενεργοποιεί τα πρωτόκολλα επικοινωνίας IPv6.</para> - - <programlisting>options FFS # Berkeley Fast Filesystem</programlisting> - - <para>Πρόκειται για το βασικό σύστημα αρχείων του σκληρού δίσκου. Αφήστε - την επιλογή αυτή ενεργοποιημένη, αν ξεκινάτε από το σκληρό δίσκο. - </para> - - <programlisting>options SOFTUPDATES # Enable FFS Soft Updates support</programlisting> - - <para>Η επιλογή αυτή ενεργοποιεί τα Soft Updates στον πυρήνα, το οποίο - βοηθάει την επιτάχυνση της εγγραφής στους δίσκους. Ακόμα και αν η - λειτουργία αυτή παρέχεται από τον πυρήνα, θα πρέπει επίσης να - ενεργοποιηθεί για συγκεκριμένους δίσκους. Δείτε την έξοδο της εντολής - &man.mount.8; για να δείτε αν είναι ενεργοποιημένα τα Soft Updates - στους δίσκους του συστήματος σας. Αν δεν δείτε την επιλογή - <literal>soft-updates</literal> θα χρειαστεί να την ενεργοποιήσετε με - την εντολή &man.tunefs.8; (για υπάρχοντα συστήματα αρχείων) ή - &man.newfs.8; (για νέα συστήματα αρχείων).</para> - - <programlisting>options UFS_ACL # Support for access control lists</programlisting> - - <para>Με την επιλογή αυτή, ενεργοποιείται η υποστήριξη του πυρήνα για - λίστες ελέγχου πρόσβασης (access control lists). Τα - <acronym>ACL</acronym>s εξαρτιούνται από τη χρήση εκτεταμένων ιδιοτήτων - και από το σύστημα αρχείων <acronym>UFS2</acronym>, και περιγράφονται - με λεπτομέρεια στο <xref linkend="fs-acl"/>. Τα <acronym>ACL</acronym>s - είναι ενεργοποιημένα από προεπιλογή, και δεν θα πρέπει να τα - απενεργοποιήσετε από τον πυρήνα αν έχουν χρησιμοποιηθεί στο παρελθόν σε - κάποιο σύστημα αρχείων, καθώς αυτό θα τα αφαιρέσει από τα αρχεία, - αλλάζοντας έτσι τον τρόπο προστασίας τους με απρόβλεπτους τρόπους. - </para> - - <programlisting>options UFS_DIRHASH # Improve performance on big directories</programlisting> - - <para>Με την επιλογή αυτή, περιλαμβάνονται λειτουργίες που αυξάνουν την - ταχύτητα πρόσβασης του δίσκου σε μεγάλους καταλόγους, με κόστος τη χρήση - επιπρόσθετης μνήμης. Φυσιολογικά, θα θέλετε να κρατήσετε την επιλογή - αυτή σε ένα μεγάλο εξυπηρετητή ή σταθμό εργασίας, και να την αφαιρέσετε - όταν χρησιμοποιείτε το &os; σε ένα μικρό σύστημα όπου η μνήμη είναι - περιορισμένη και η ταχύτητα πρόσβασης στο δίσκο είναι λιγότερο - σημαντική, όπως για παράδειγμα σε ένα firewall.</para> - - <programlisting>options MD_ROOT # MD is a potential root device</programlisting> - - <para>Με την επιλογή αυτή ενεργοποιείται η υποστήριξη χρήσης ενός - εικονικού δίσκου στη μνήμη RAM (ramdrive) για χρήση ως συσκευή root. - </para> - - <indexterm> - <primary>kernel options</primary> - <secondary>NFS</secondary> - </indexterm> - <indexterm> - <primary>kernel options</primary> - <secondary>NFS_ROOT</secondary> - </indexterm> - <programlisting>options NFSCLIENT # Network Filesystem Client -options NFSSERVER # Network Filesystem Server -options NFS_ROOT # NFS usable as /, requires NFSCLIENT</programlisting> - - <para>Το δικτυακό σύστημα αρχείων. Αν δεν έχετε σκοπό να προσαρτήσετε - συστήματα αρχείων από άλλο εξυπηρετητή αρχείων &unix; μέσω TCP/IP, - μπορείτε να μετατρέψετε αυτές τις γραμμές σε σχόλια.</para> - - <indexterm> - <primary>kernel options</primary> - <secondary>MSDOSFS</secondary> - </indexterm> - <programlisting>options MSDOSFS # MSDOS Filesystem</programlisting> - - <para>Το σύστημα αρχείων του &ms-dos;. Αν δεν σκοπεύετε να προσαρτήσετε - δίσκο DOS κατά την εκκίνηση, μπορείτε με ασφάλεια να μετατρέψετε την - επιλογή αυτή σε σχόλιο. Η υποστήριξη θα φορτωθεί αυτόματα την πρώτη - φορά που θα προσαρτήσετε κατάτμηση DOS όπως περιγράψαμε παραπάνω. - Επίσης, το εξαιρετικό πρόγραμμα - <filename role="package">emulators/mtools</filename> σας επιτρέπει να - έχετε πρόσβαση σε δισκέτες DOS χωρίς να χρειάζεται να τις προσαρτήσετε - και να αποπροσαρτήσετε (και επίσης δεν απαιτεί τη χρήση του - <literal>MSDOSFS</literal>).</para> - - <programlisting>options CD9660 # ISO 9660 Filesystem</programlisting> - - <para>Το σύστημα αρχείων ISO 9660 για CDROM. Μετατρέψτε το σε σχόλιο αν - δεν έχετε οδηγό CDROM ή αν σπάνια προσαρτάτε CD δεδομένων (καθώς θα - φορτωθεί δυναμικά την πρώτη φορά που θα προσαρτήσετε τέτοιο CD ). Τα - μουσικά CD δεν χρειάζονται αυτό το σύστημα αρχείων.</para> - - <programlisting>options PROCFS # Process filesystem (requires PSEUDOFS)</programlisting> - - <para>Αυτό το σύστημα αρχείων περιέχει τις διεργασίες του συστήματος. - Πρόκειται για ένα <quote>εικονικό</quote> σύστημα αρχείων το οποίο - προσαρτάται στον κατάλογο <filename>/proc</filename> και επιτρέπει σε - προγράμματα όπως το &man.ps.1; να δίνουν περισσότερες πληροφορίες για - τις διεργασίες που εκτελούνται. Η χρήση του <literal>PROCFS</literal> - δεν απαιτείται στις περισσότερες περιπτώσεις, καθώς τα περισσότερα - εργαλεία παρακολούθησης και εκσφαλμάτωσης έχουν προσαρμοστεί να - εκτελούνται χωρίς το <literal>PROCFS</literal>. Στις νέες εγκαταστάσεις, - αυτό το σύστημα αρχείων δεν προσαρτάται από προεπιλογή.</para> - - <programlisting>options PSEUDOFS # Pseudo-filesystem framework</programlisting> - - <para>Πυρήνες που χρησιμοποιούν το - <literal>PROCFS</literal> πρέπει επίσης να παρέχουν υποστήριξη για το - <literal>PSEUDOFS</literal>.</para> - - <programlisting>options GEOM_PART_GPT # GUID Partition Tables.</programlisting> - - <para>Προσθέτει υποστήριξη για <ulink - url="http://en.wikipedia.org/wiki/GUID_Partition_Table">Πίνακα - Κατατμήσεων GUID</ulink>. Το GPT δίνει δυνατότητα ύπαρξης μεγάλου - αριθμού κατατμήσεων στο δίσκο, μέχρι 128 με τις τυπικές - ρυθμίσεις.</para> - - <programlisting>options COMPAT_43 # Compatible with BSD 4.3 [KEEP THIS!]</programlisting> - - <para>Συμβατότητα με το 4.3BSD. Αφήστε την επιλογή αυτή ενεργή: κάποια - προγράμματα θα συμπεριφέρονται παράξενα αν την απενεργοποιήσετε.</para> - - <programlisting>options COMPAT_FREEBSD4 # Compatible with &os;4</programlisting> - - <para>Η επιλογή αυτή απαιτείται - για την υποστήριξη εφαρμογών που έχουν μεταγλωττιστεί σε - παλιότερες εκδόσεις του &os; και οι οποίες χρησιμοποιούν παλιές - διεπαφές και κλήσεις συστήματος. Συνίσταται να υπάρχει αυτή η επιλογή - σε όλα τα συστήματα &i386; τα οποία εκτελούν παλιότερες - εφαρμογές. Αρχιτεκτονικές όπως η ia64 και η &sparc64; που άρχισαν να - υποστηρίζονται από την έκδοση 5.Χ και μετά δεν χρειάζονται αυτή την - επιλογή.</para> - - <programlisting>options COMPAT_FREEBSD5 # Compatible with &os;5</programlisting> - - <para>Η επιλογή αυτή απαιτείται στο για την - υποστήριξη εφαρμογών που έχουν μεταγλωττιστεί στο &os; 5.X και - χρησιμοποιούν τις αντίστοιχες κλήσεις αυτού του συστήματος.</para> - - <programlisting>options COMPAT_FREEBSD6 # Compatible with &os;6</programlisting> - - <para>Η επιλογή αυτή απαιτείται στο για την - υποστήριξη εφαρμογών που έχουν μεταγλωττιστεί στο &os; 6.X και - χρησιμοποιούν τις αντίστοιχες κλήσεις αυτού του συστήματος.</para> - - <programlisting>options COMPAT_FREEBSD7 # Compatible with &os;75</programlisting> - - <para>Η επιλογή αυτή απαιτείται στο για την - υποστήριξη εφαρμογών που έχουν μεταγλωττιστεί στο &os; 7.X και - χρησιμοποιούν τις αντίστοιχες κλήσεις αυτού του συστήματος.</para> - - <programlisting>options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI</programlisting> - - <para>Με την επιλογή αυτή ο πυρήνας περιμένει 5 δευτερόλεπτα πριν - ανιχνεύσει κάθε συσκευή SCSI στο σύστημα σας. Αν έχετε μόνο IDE δίσκους - μπορείτε να την αγνοήσετε, διαφορετικά μπορείτε να δοκιμάσετε να - μειώσετε τον αριθμό αυτό, για να επιταχύνετε την εκκίνηση. Φυσικά, αν το - κάνετε αυτό και ανακαλύψετε ότι το &os; έχει πρόβλημα στην αναγνώριση - των συσκευών σας, θα πρέπει να την ανεβάσετε ξανά.</para> - - <programlisting>options KTRACE # ktrace(1) support</programlisting> - - <para>Η επιλογή αυτή ενεργοποιεί το tracing των διεργασιών του πυρήνα, το - οποίο είναι χρήσιμο στην εκσφαλμάτωση.</para> - - <programlisting>options SYSVSHM # SYSV-style shared memory</programlisting> - - <para>Η επιλογή αυτή ενεργοποιεί την κοινόχρηστη μνήμη σύμφωνα με το - πρότυπο του System V. Η πλέον κοινή χρήση της, είναι η - επέκταση XSHM στα Χ η οποία χρησιμοποιείται αυτόματα από πολλές βαριές - εφαρμογές γραφικών για καλύτερη ταχύτητα. Αν χρησιμοποιείτε Χ, - σίγουρα θέλετε να περιλάβετε αυτή την επιλογή.</para> - - <programlisting>options SYSVMSG # SYSV-style message queues</programlisting> - - <para>Υποστήριξη για μηνύματα του System V. Η επιλογή αυτή προσθέτει - μόνο μερικές εκατοντάδες bytes στον πυρήνα.</para> - - <programlisting>options SYSVSEM # SYSV-style semaphores</programlisting> - - <para>Υποστήριξη σηματοφορέων του System V. Χρησιμοποιείται λιγότερο - συχνά, αλλά προσθέτει μόνο μερικές εκατοντάδες bytes στον πυρήνα. - </para> - - <note> - <para>Η επιλογή <option>-p</option> της εντολής &man.ipcs.1; θα σας - δείξει ποιες διεργασίες χρησιμοποιούν κάθε μια από αυτές τις - λειτουργίες του System V.</para> - </note> - - <programlisting>options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions</programlisting> - - <para>Επεκτάσεις πραγματικού χρόνου (Real-time) που προστέθηκαν στο - &posix; το 1993. Χρησιμοποιείται από κάποιες εφαρμογές στη συλλογή των - ports (όπως το <application>&staroffice;</application>).</para> - - <programlisting>options KBD_INSTALL_CDEV # install a CDEV entry in /dev</programlisting> - - <para>Η επιλογή αυτή είναι απαραίτητη για τη δημιουργία του αρχείου - συσκευής πληκτρολογίου στον κατάλογο <filename>/dev</filename>.</para> - - <programlisting>options ADAPTIVE_GIANT # Giant mutex is adaptive.</programlisting> - - <para>Το Giant είναι το όνομα ενός συστήματος αμοιβαίου αποκλεισμού - (sleep mutex) το οποίο προστατεύει ένα μεγάλο αριθμό πόρων του πυρήνα. - Στις μέρες μας, αυτό θεωρείται ανεπίτρεπτο από πλευράς απόδοσης και - αντικαθίσταται με κλειδώματα τα οποία προστατεύουν συγκεκριμένους - πόρους. Η επιλογή <literal>ADAPTIVE_GIANT</literal> επιτρέπει στο Giant - να συμπεριληφθεί στο σετ των mutexes που μπορούν να εκτελεστούν - επιλεκτικά. Έτσι, αν ένα νήμα θέλει να κλειδώσει το Giant mutex, αλλά - αυτό είναι ήδη κλειδωμένο από ένα νήμα σε μια άλλη CPU, το πρώτο νήμα - θα συνεχίσει να εκτελείται, και θα περιμένει για την απελευθέρωση του - κλειδώματος. Φυσιολογικά, το νήμα θα επέστρεφε στην κατάσταση ύπνου - (sleep) και θα περίμενε για την επόμενη ευκαιρία εκτέλεσης του. Αν δεν - είστε σίγουρος, αφήστε αυτή την επιλογή ενεργή.</para> - - <note> - <para>Σημειώστε ότι από το &os; 8.0-RELEASE και τις επόμενες εκδόσεις, - όλα τα mutexes έχουν από προεπιλογή τη δυνατότητα προσαρμογής, εκτός - αν έχει επίτηδες γίνει διαφορετική ρύθμιση, χρησιμοποιώντας την - επιλογή <literal>NO_ADAPTIVE_MUTEXES</literal> κατά τη μεταγλώττιση. - Το Giant έχει επίσης δυνατότητα προσαρμογής πλέον, και έτσι η - επιλογή <literal>ADAPTIVE_GIANT</literal> έχει αφαιρεθεί από το - αρχείο ρυθμίσεων πυρήνα.</para> - </note> - - <indexterm> - <primary>kernel options</primary> - <secondary>SMP</secondary> - </indexterm> - <programlisting>device apic # I/O APIC</programlisting> - - <para>Η συσκευή apic επιτρέπει τη χρήση του I/O APIC για την παράδοση των - interrupts (διακοπών). Η συσκευή apic μπορεί να χρησιμοποιηθεί τόσο σε - πυρήνες για ένα επεξεργαστή (UP) όσο και για πολλαπλούς (SMP), αλλά στη - δεύτερη περίπτωση είναι απαραίτητη. Προσθέστε την επιλογή - <literal>options SMP</literal> για να έχετε υποστήριξη πολλαπλών - επεξεργαστών.</para> - - <note> - <para>Η συσκευή apic υπάρχει μόνο στην αρχιτεκτονική i386, η γραμμή αυτή - δεν θα πρέπει να χρησιμοποιηθεί σε άλλες αρχιτεκτονικές.</para> - </note> - - <programlisting>device eisa</programlisting> - - <para>Θα πρέπει να συμπεριλάβετε την επιλογή αυτή αν έχετε μητρική με - δίαυλο τύπου EISA. Ενεργοποιείται έτσι η αυτόματη ανίχνευση και ρύθμιση - όλων των συσκευών στο δίαυλο EISA.</para> - - <programlisting>device pci</programlisting> - - <para>Θα πρέπει να συμπεριλάβετε αυτή την επιλογή αν έχετε μητρική με - δίαυλο PCI. Ενεργοποιείται έτσι η αυτόματη ανίχνευση των καρτών PCI και - η επικοινωνία μεταξύ των διαύλων PCI και ISA.</para> - - <programlisting># Floppy drives -device fdc</programlisting> - - <para>Πρόκειται για τον ελεγκτή μονάδας δισκέτας.</para> - - <programlisting># ATA and ATAPI devices -device ata</programlisting> - - <para>Αυτός ο οδηγός υποστηρίζει όλες τις συσκευές τύπου ATA και ATAPI. - Χρειάζεστε μόνο μια καταχώρηση <literal>device ata</literal> για να - ανιχνεύσει ο πυρήνας όλες τις συσκευές ATA/ATAPI τύπου PCI στα σύγχρονα - μηχανήματα.</para> - - <programlisting>device atadisk # ATA disk drives</programlisting> - - <para>Η επιλογή αυτή απαιτείται μαζί με το <literal>device ata</literal> - για την υποστήριξη δίσκων ATA.</para> - - <programlisting>device ataraid # ATA RAID drives</programlisting> - - <para>Η επιλογή αυτή απαιτείται μαζί με το<literal>device ata</literal> - για την υποστήριξη δίσκων ATA RAID.</para> - - <programlisting><anchor id="kernelconfig-atapi"/> -device atapicd # ATAPI CDROM drives</programlisting> - - <para>Η επιλογή αυτή απαιτείται μαζί με το <literal>device ata</literal> - για την υποστήριξη οδηγών ATAPI CDROM.</para> - - <programlisting>device atapifd # ATAPI floppy drives</programlisting> - - <para>Η επιλογή αυτή απαιτείται μαζί με το <literal>device ata</literal> - για την υποστήριξη οδηγών δισκέτας ATAPI.</para> - - <programlisting>device atapist # ATAPI tape drives</programlisting> - - <para>Η επιλογή αυτή απαιτείται μαζί με το <literal>device ata</literal> - για την υποστήριξη μονάδων ταινίας ATAPI.</para> - - <programlisting>options ATA_STATIC_ID # Static device numbering</programlisting> - - <para>Με την επιλογή αυτή, ο αριθμός του ελεγκτή γίνεται στατικός. Χωρίς - αυτή, οι αριθμοί συσκευών αποδίδονται δυναμικά.</para> - - <programlisting># SCSI Controllers -device ahb # EISA AHA1742 family -device ahc # AHA2940 and onboard AIC7xxx devices -options AHC_REG_PRETTY_PRINT # Print register bitfields in debug - # output. Adds ~128k to driver. -device ahd # AHA39320/29320 and onboard AIC79xx devices -options AHD_REG_PRETTY_PRINT # Print register bitfields in debug - # output. Adds ~215k to driver. -device amd # AMD 53C974 (Teckram DC-390(T)) -device isp # Qlogic family -#device ispfw # Firmware for QLogic HBAs- normally a module -device mpt # LSI-Logic MPT-Fusion -#device ncr # NCR/Symbios Logic -device sym # NCR/Symbios Logic (newer chipsets + those of `ncr') -device trm # Tekram DC395U/UW/F DC315U adapters - -device adv # Advansys SCSI adapters -device adw # Advansys wide SCSI adapters -device aha # Adaptec 154x SCSI adapters -device aic # Adaptec 15[012]x SCSI adapters, AIC-6[23]60. -device bt # Buslogic/Mylex MultiMaster SCSI adapters - -device ncv # NCR 53C500 -device nsp # Workbit Ninja SCSI-3 -device stg # TMC 18C30/18C50</programlisting> - - <para>Ελεγκτές SCSI. Μπορείτε να μετατρέψετε σε σχόλιο οποιονδήποτε δεν - έχετε στο σύστημα σας. Αν το σύστημα σας έχει μόνο συσκευές IDE, - μπορείτε να αφαιρέσετε όλες τις γραμμές. Οι γραμμές τύπου - <literal>*_REG_PRETTY_PRINT</literal> χρησιμοποιούνται για να δίνουν - περισσότερες διαγνωστικές πληροφορίες για τους αντίστοιχους οδηγούς. - </para> - - <programlisting># SCSI peripherals -device scbus # SCSI bus (required for SCSI) -device ch # SCSI media changers -device da # Direct Access (disks) -device sa # Sequential Access (tape etc) -device cd # CD -device pass # Passthrough device (direct SCSI access) -device ses # SCSI Environmental Services (and SAF-TE)</programlisting> - - <para>Περιφερειακά SCSI. Μπορείτε και πάλι να μετατρέψετε σε σχόλιο όσες - συσκευές δεν έχετε, ή αν έχετε μόνο συσκευές IDE, μπορείτε να - αφαιρέσετε εντελώς αυτές τις γραμμές.</para> - - <note> - <para>Ο οδηγός USB &man.umass.4; και κάποιοι άλλοι οδηγοί χρησιμοποιούν - το υποσύστημα SCSI αν και δεν είναι πραγματικές SCSI συσκευές. Για το - λόγο αυτό, σιγουρευτείτε ότι δεν αφαιρέσατε την υποστήριξη SCSI αν - περιλαμβάνονται τέτοιοι οδηγοί στο αρχείο ρύθμισης του πυρήνα σας. - </para> - </note> - - <programlisting># RAID controllers interfaced to the SCSI subsystem -device amr # AMI MegaRAID -device arcmsr # Areca SATA II RAID -device asr # DPT SmartRAID V, VI and Adaptec SCSI RAID -device ciss # Compaq Smart RAID 5* -device dpt # DPT Smartcache III, IV - See NOTES for options -device hptmv # Highpoint RocketRAID 182x -device hptrr # Highpoint RocketRAID 17xx, 22xx, 23xx, 25xx -device iir # Intel Integrated RAID -device ips # IBM (Adaptec) ServeRAID -device mly # Mylex AcceleRAID/eXtremeRAID -device twa # 3ware 9000 series PATA/SATA RAID - -# RAID controllers -device aac # Adaptec FSA RAID -device aacp # SCSI passthrough for aac (requires CAM) -device ida # Compaq Smart RAID -device mfi # LSI MegaRAID SAS -device mlx # Mylex DAC960 family -device pst # Promise Supertrak SX6000 -device twe # 3ware ATA RAID</programlisting> - - <para>Υποστηριζόμενοι ελεγκτές RAID. Αν δεν έχετε κανένα από αυτούς, - μπορείτε να τους μετατρέψετε σε σχόλια ή να τους αφαιρέσετε εντελώς. - </para> - - <programlisting># atkbdc0 controls both the keyboard and the PS/2 mouse -device atkbdc # AT keyboard controller</programlisting> - - <para>Ο ελεγκτής πληκτρολογίου (<literal>atkbdc</literal>) παρέχει - υπηρεσίες I/O για πληκτρολόγια τύπου AT και συσκευές κατάδειξης - (ποντίκια) τύπου PS/2. Ο ελεγκτής απαιτείται για τη λειτουργία του - οδηγού πληκτρολογίου (<literal>atkbd</literal>) και του οδηγού - συσκευής κατάδειξης PS/2 (<literal>psm</literal>).</para> - - <programlisting>device atkbd # AT keyboard</programlisting> - - <para>Ο οδηγός <literal>atkbd</literal>, μαζί με τον ελεγκτή - <literal>atkbdc</literal>, παρέχει πρόσβαση σε πληκτρολόγιο τύπου AT 84 - ή εκτεταμένου AT το οποίο συνδέεται στον ελεγκτή πληκτρολογίου.</para> - - <programlisting>device psm # PS/2 mouse</programlisting> - - <para>Χρησιμοποιήστε αυτή τη συσκευή αν το ποντίκι σας συνδέεται στην - θύρα PS/2.</para> - - <programlisting>device kbdmux # keyboard multiplexer</programlisting> - - <para>Βασική υποστήριξη πολυπλεξίας πληκτρολογίων. Αν δε σκοπεύετε να - χρησιμοποιήσετε περισσότερα από ένα πληκτρολόγια στο σύστημα σας, - μπορείτε με ασφάλεια να αφαιρέσετε αυτή τη γραμμή.</para> - - <programlisting>device vga # VGA video card driver</programlisting> - - <para>Το πρόγραμμα οδήγησης της κάρτας γραφικών.</para> - - <programlisting> -device splash # Splash screen and screen saver support</programlisting> - - <para>Γραφική οθόνη (splash) κατά την εκκίνηση! Η συσκευή αυτή - χρησιμοποιείται επίσης από τα προγράμματα προφύλαξης οθόνης (κονσόλας). - </para> - - <programlisting># syscons is the default console driver, resembling an SCO console -device sc</programlisting> - - <para>Ο οδηγός <literal>sc</literal> είναι ο προεπιλεγμένος οδηγός - κονσόλας και προσομοιώνει κονσόλα τύπου SCO. Καθώς τα περισσότερα - προγράμματα πλήρους οθόνης αποκτούν πρόσβαση στην κονσόλα μέσω κάποιας - βιβλιοθήκης βάσης δεδομένων τερματικών όπως το - <filename>termcap</filename>, δεν θα πρέπει να έχει σημασία αν - χρησιμοποιήσετε αυτόν τον οδηγό ή τον <literal>vt</literal> ο οποίος - είναι συμβατός με κονσόλα <literal>VT220</literal>. Μετά την είσοδο σας - στο σύστημα, θέστε την μεταβλητή <envar>TERM</envar> στην τιμή - <literal>scoansi</literal> αν κάποια προγράμματα πλήρους οθόνης έχουν - πρόβλημα όταν χρησιμοποιείται αυτή η κονσόλα.</para> - - <programlisting># Enable this for the pcvt (VT220 compatible) console driver -#device vt -#options XSERVER # support for X server on a vt console -#options FAT_CURSOR # start with block cursor</programlisting> - - <para>Πρόκειται για ένα οδηγό κονσόλας συμβατό με VT220, και με προς τα - πίσω συμβατότητα με VT100/102. Λειτουργεί καλά σε κάποιους φορητούς - υπολογιστές που έχουν ασυμβατότητα υλικού με τον <literal>sc</literal>. - Μετά την είσοδο σας στο σύστημα, θέστε την μεταβλητή <envar>TERM</envar> - σε <literal>vt100</literal> ή <literal>vt220</literal>. Ο οδηγός μπορεί - επίσης να αποδειχθεί χρήσιμος όταν συνδέεστε σε μεγάλο αριθμό από - διαφορετικά μηχανήματα μέσω δικτύου, όπου δεν υπάρχουν καταχωρήσεις για - τη συσκευή <literal>sc</literal> στο <filename>termcap</filename> ή - <filename>terminfo</filename> — το <literal>vt100</literal> - θα πρέπει να είναι διαθέσιμο πρακτικά σε κάθε πλατφόρμα.</para> - - <programlisting>device agp</programlisting> - - <para>Συμπεριλάβετε τη συσκευή αυτή αν έχετε AGP κάρτα στο σύστημα σας. - Θα ενεργοποιήσετε με αυτό τον τρόπο την υποστήριξη για AGP και AGP GART - για μητρικές που υποστηρίζουν αυτές τις λειτουργίες.</para> - - <indexterm> - <primary>APM</primary> - </indexterm> - - <programlisting># Power management support (see NOTES for more options) -#device apm</programlisting> - - <para>Υποστήριξη Advanced Power Management (προχωρημένης διαχείρισης - ισχύος). Χρήσιμο για φορητά, αν και η επιλογή αυτή, από προεπιλογή, - είναι ανενεργή στον πυρήνα <filename>GENERIC</filename>.</para> - - <programlisting># Add suspend/resume support for the i8254. -device pmtimer</programlisting> - - <para>Πρόγραμμα οδήγησης μετρητή χρόνου (Timer) για συμβάντα που - σχετίζονται με διαχείριση ενέργειας όπως το APM και το ACPI.</para> - - <programlisting># PCCARD (PCMCIA) support -# PCMCIA and cardbus bridge support -device cbb # cardbus (yenta) bridge -device pccard # PC Card (16-bit) bus -device cardbus # CardBus (32-bit) bus</programlisting> - - <para>Υποστήριξη PCMCIA. Την χρειάζεστε αν χρησιμοποιείτε φορητό - υπολογιστή.</para> - - <programlisting># Serial (COM) ports -device sio # 8250, 16[45]50 based serial ports</programlisting> - - <para>Πρόκειται για τις σειριακές θύρες οι οποίες είναι γνωστές στον κόσμο - του &ms-dos;/&windows; ως θύρες <devicename>COM</devicename>.</para> - - <note> - <para>Αν έχετε εσωτερικό μόντεμ στη θύρα <devicename>COM4</devicename> - και έχετε και σειριακή θύρα <devicename>COM2</devicename>, θα πρέπει - να αλλάξετε το IRQ του μόντεμ στο 2 (για περίεργους τεχνικούς λόγους, - IRQ2 = IRQ 9) για να μπορέσετε να το χρησιμοποιήσετε από το &os;. Αν - έχετε κάρτα πολλαπλών σειριακών εξόδων, ελέγξτε τη σελίδα manual του - &man.sio.4; για περισσότερες πληροφορίες σχετικά με τις σωστές τιμές - που πρέπει να προσθέσετε στο <filename>/boot/device.hints</filename>. - Κάποιες κάρτες γραφικών (ειδικά αυτές που βασίζονται σε ολοκληρωμένα - S3) χρησιμοποιούν διευθύνσεις IO μορφής <literal>0x*2e8</literal>, - και καθώς πολλές φτηνές σειριακές κάρτες δεν αποκωδικοποιούν πλήρως - τη 16 bit περιοχή διευθύνσεων, συγκρούονται με τις κάρτες αυτές, - καθιστώντας έτσι πρακτικά άχρηστη τη θύρα - <devicename>COM4</devicename>.</para> - - <para>Κάθε σειριακή πόρτα χρειάζεται να έχει μια μοναδική IRQ (εκτός - αν χρησιμοποιείτε κάρτα πολλαπλών σειριακών που υποστηρίζει - κοινή χρήση interrupts), και έτσι δεν μπορούν να χρησιμοποιηθούν τα - προεπιλεγμένα interrupts για την <devicename>COM3</devicename> και την - <devicename>COM4</devicename>.</para> - </note> - - <programlisting># Parallel port -device ppc</programlisting> - - <para>Πρόκειται για την παράλληλη θύρα στο δίαυλο ISA.</para> - - <programlisting>device ppbus # Parallel port bus (required)</programlisting> - - <para>Παρέχει υποστήριξη για το δίαυλο της παράλληλης θύρας.</para> - - <programlisting>device lpt # Printer</programlisting> - - <para>Παρέχει υποστήριξη για εκτυπωτές παράλληλης θύρας.</para> - - <note> - <para>Χρειάζεστε και τα τρία παραπάνω για να ενεργοποιήσετε την - υποστήριξη εκτυπωτή παράλληλης θύρας.</para> - </note> - - <programlisting>device plip # TCP/IP over parallel</programlisting> - - <para>Πρόκειται για το πρόγραμμα οδήγησης δικτύου μέσω παράλληλης θύρας. - </para> - - <programlisting>device ppi # Parallel port interface device</programlisting> - - <para>Πρόγραμμα I/O γενικής χρήσης (<quote>geek port</quote>) + IEEE1284 - I/O.</para> - - <programlisting>#device vpo # Requires scbus and da</programlisting> - - <indexterm><primary>zip drive</primary></indexterm> - <para>Χρησιμοποιείται για μονάδα δισκέτας Iomega Zip. Απαιτεί υποστήριξη - από τους οδηγούς <literal>scbus</literal> και <literal>da</literal>. - Η καλύτερη απόδοση επιτυγχάνεται με θύρα σε κατάσταση λειτουργίας - EPP 1.9.</para> - - <programlisting>#device puc</programlisting> - - <para>Ενεργοποιήστε αυτή τη συσκευή αν έχετε μια <quote>χαζή</quote> - σειριακή ή παράλληλη PCI κάρτα η οποία υποστηρίζεται από το πρόγραμμα - οδήγησης &man.puc.4; (glue driver).</para> - - <programlisting># PCI Ethernet NICs. -device de # DEC/Intel DC21x4x (<quote>Tulip</quote>) -device em # Intel PRO/1000 adapter Gigabit Ethernet Card -device ixgb # Intel PRO/10GbE Ethernet Card -device txp # 3Com 3cR990 (<quote>Typhoon</quote>) -device vx # 3Com 3c590, 3c595 (<quote>Vortex</quote>)</programlisting> - - <para>Διάφορα προγράμματα οδήγησης για PCI κάρτες δικτύου. Μετατρέψτε σε - σχόλιο ή αφαιρέστε τελείως όσες δεν υπάρχουν στο σύστημα σας.</para> - - <programlisting># PCI Ethernet NICs that use the common MII bus controller code. -# NOTE: Be sure to keep the 'device miibus' line in order to use these NICs! -device miibus # MII bus support</programlisting> - - <para>Η υποστήριξη διαύλου MII απαιτείται για κάποιες κάρτες δικτύου - Ethernet PCI 10/100, ειδικά για αυτές που χρησιμοποιούν πομποδέκτη - συμβατό με MII ή έχουν διεπαφή ελέγχου που λειτουργεί παρόμοια με τον - MII. Προσθέτοντας <literal>device miibus</literal> στο αρχείο ρύθμισης - του πυρήνα, θα έχετε υποστήριξη για το γενικό API του miibus και για - όλους τους οδηγούς PHY, συμπεριλαμβανομένου και ενός γενικού για PHYs - που δεν υποστηρίζονται από κάποιο συγκεκριμένο οδηγό.</para> - - <programlisting>device bce # Broadcom BCM5706/BCM5708 Gigabit Ethernet -device bfe # Broadcom BCM440x 10/100 Ethernet -device bge # Broadcom BCM570xx Gigabit Ethernet -device dc # DEC/Intel 21143 and various workalikes -device fxp # Intel EtherExpress PRO/100B (82557, 82558) -device lge # Level 1 LXT1001 gigabit ethernet -device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet -device nge # NatSemi DP83820 gigabit ethernet -device nve # nVidia nForce MCP on-board Ethernet Networking -device pcn # AMD Am79C97x PCI 10/100 (precedence over 'lnc') -device re # RealTek 8139C+/8169/8169S/8110S -device rl # RealTek 8129/8139 -device sf # Adaptec AIC-6915 (<quote>Starfire</quote>) -device sis # Silicon Integrated Systems SiS 900/SiS 7016 -device sk # SysKonnect SK-984x & SK-982x gigabit Ethernet -device ste # Sundance ST201 (D-Link DFE-550TX) -device stge # Sundance/Tamarack TC9021 gigabit Ethernet -device ti # Alteon Networks Tigon I/II gigabit Ethernet -device tl # Texas Instruments ThunderLAN -device tx # SMC EtherPower II (83c170 <quote>EPIC</quote>) -device vge # VIA VT612x gigabit ethernet -device vr # VIA Rhine, Rhine II -device wb # Winbond W89C840F -device xl # 3Com 3c90x (<quote>Boomerang</quote>, <quote>Cyclone</quote>)</programlisting> - - <para>Προγράμματα οδήγησης που χρησιμοποιούν τον κώδικα του διαύλου - ελέγχου MII.</para> - - <programlisting># ISA Ethernet NICs. pccard NICs included. -device cs # Crystal Semiconductor CS89x0 NIC -# 'device ed' requires 'device miibus' -device ed # NE[12]000, SMC Ultra, 3c503, DS8390 cards -device ex # Intel EtherExpress Pro/10 and Pro/10+ -device ep # Etherlink III based cards -device fe # Fujitsu MB8696x based cards -device ie # EtherExpress 8/16, 3C507, StarLAN 10 etc. -device lnc # NE2100, NE32-VL Lance Ethernet cards -device sn # SMC's 9000 series of Ethernet chips -device xe # Xircom pccard Ethernet - -# ISA devices that use the old ISA shims -#device le</programlisting> - - <para>Προγράμματα οδήγησης καρτών Ethernet τύπου ISA. Δείτε το αρχείο - <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/NOTES</filename> - για λεπτομέρειες σχετικά με το ποιες κάρτες υποστηρίζονται από ποιον - οδηγό.</para> - - <programlisting># Wireless NIC cards -device wlan # 802.11 support</programlisting> - - <para>Γενική υποστήριξη του 802.11. Η γραμμή αυτή απαιτείται για ασύρματη - δικτύωση.</para> - - <programlisting>device wlan_wep # 802.11 WEP support -device wlan_ccmp # 802.11 CCMP support -device wlan_tkip # 802.11 TKIP support</programlisting> - - <para>Υποστήριξη κρυπτογράφησης για συσκευές 802.11. Οι γραμμές αυτές - χρειάζονται αν σκοπεύετε να χρησιμοποιήσετε κρυπτογράφηση και πρωτόκολλα - ασφαλείας 802.11i.</para> - - <programlisting>device an # Aironet 4500/4800 802.11 wireless NICs. -device ath # Atheros pci/cardbus NIC's -device ath_hal # Atheros HAL (Hardware Access Layer) -device ath_rate_sample # SampleRate tx rate control for ath -device awi # BayStack 660 and others -device ral # Ralink Technology RT2500 wireless NICs. -device wi # WaveLAN/Intersil/Symbol 802.11 wireless NICs. -#device wl # Older non 802.11 Wavelan wireless NIC.</programlisting> - - <para>Υποστήριξη για διάφορες ασύρματες κάρτες.</para> - - <programlisting># Pseudo devices -device loop # Network loopback</programlisting> - - <para>Πρόκειται για τη γενική συσκευή εσωτερικού δικτύου (loopback) του - TCP/IP. Η σύνδεση μέσω telnet ή FTP στο <hostid>localhost</hostid> - (γνωστό επίσης και ως <hostid role="ipaddr">127.0.0.1</hostid>) - πραγματοποιείται μέσω αυτής της συσκευής. Η ύπαρξη αυτής της συσκευής - είναι <emphasis>υποχρεωτική</emphasis>.</para> - - <programlisting>device random # Entropy device</programlisting> - - <para>Κρυπτογραφικά ασφαλής γεννήτρια τυχαίων αριθμών.</para> - - <programlisting>device ether # Ethernet support</programlisting> - - <para>Η γραμμή <literal>ether</literal> απαιτείται μόνο αν έχετε κάρτα - δικτύου Ethernet. Περιέχει γενικό κώδικα για το πρωτόκολλο Ethernet. - </para> - - <programlisting>device sl # Kernel SLIP</programlisting> - - <para>Η γραμμή <literal>sl</literal> παρέχει υποστήριξη SLIP. Η υποστήριξη - αυτή έχει σχεδόν ολοκληρωτικά ξεπεραστεί από το PPP, το οποίο είναι - ευκολότερο στη ρύθμιση, υποστηρίζει καλύτερα τις συνδέσεις μέσω μόντεμ, - και παρέχει καλύτερες δυνατότητες.</para> - - <programlisting>device ppp # Kernel PPP</programlisting> - - <para>Η γραμμή αυτή είναι για υποστήριξη PPP μέσω του πυρήνα για - επιλογικές (dial-up) συνδέσεις. Υπάρχει επίσης μια έκδοση PPP η οποία - υλοποιείται ως εφαρμογή χρήστη (userland), χρησιμοποιεί το - <literal>tun</literal> και προσφέρει περισσότερη ευελιξία και - λειτουργίες όπως κλήση κατά απαίτηση (demand dialing).</para> - - <programlisting>device tun # Packet tunnel.</programlisting> - - <para>Η συσκευή αυτή χρησιμοποιείται από το πρόγραμμα PPP χρήστη - (userland). Δείτε το τμήμα <link linkend="userppp">PPP</link> - αυτού του βιβλίου για περισσότερες πληροφορίες.</para> - - <programlisting><anchor id="kernelconfig-ptys"/> -device pty # Pseudo-ttys (telnet etc)</programlisting> - - <para>Πρόκειται για συσκευή <quote>ψευδό-τερματικού</quote> ή προσομοίωσης - θύρας login. Χρησιμοποιείται για εισερχόμενες συνδέσεις - <command>telnet</command> και <command>rlogin</command>, από το - <application>xterm</application>, και από κάποιες άλλες εφαρμογές όπως - το <application>Emacs</application>.</para> - - <programlisting>device md # Memory <quote>disks</quote></programlisting> - - <para>Ψευτό-συσκευές δίσκου με χρήση μνήμης (ramdrives).</para> - - <programlisting>device gif # IPv6 and IPv4 tunneling</programlisting> - - <para>Η συσκευή αυτή υλοποιεί IPv6 σε IPv4 tunneling, IPv4 σε IPv6 - tunneling, IPv4 σε IPv4 tunneling, και IPv6 σε IPv6 tunneling. Η συσκευή - <literal>gif</literal> <quote>αυτό-κλωνοποιείται</quote>, και δημιουργεί - τα αντίστοιχα αρχεία συσκευών όπως απαιτούνται.</para> - - <programlisting>device faith # IPv6-to-IPv4 relaying (translation)</programlisting> - - <para>Αυτή η ψεύδο-συσκευή συλλαμβάνει πακέτα που στέλνονται προς αυτήν - και τα ανακατευθύνει προς το δαίμονα μετάφρασης του IPv4/IPv6.</para> - - <programlisting># The `bpf' device enables the Berkeley Packet Filter. -# Be aware of the administrative consequences of enabling this! -# Note that 'bpf' is required for DHCP. -device bpf # Berkeley packet filter</programlisting> - - <para>Πρόκειται για το φίλτρο πακέτων Berkeley. Αυτή η ψεύδο-συσκευή - επιτρέπει σε κάρτες δικτύου να λειτουργούν σε κατάσταση promiscuous - (πλήρους ακρόασης), συλλαμβάνοντας με αυτό τον τρόπο κάθε πακέτο ενός - δικτύου (π.χ. Ethernet). Τα πακέτα αυτά μπορεί να αποθηκεύονται στο - δίσκο ή να εξετάζονται με τη βοήθεια του προγράμματος &man.tcpdump.1;. - </para> - - <note> - <para>Η συσκευή &man.bpf.4; χρησιμοποιείται επίσης από το - &man.dhclient.8; για την ανάκτηση της διεύθυνσης IP της προεπιλεγμένης - πύλης κ.ο.κ. Αν χρησιμοποιείτε DHCP, αφήστε αυτή την επιλογή - ενεργοποιημένη.</para> - </note> - - <programlisting># USB support -device uhci # UHCI PCI->USB interface -device ohci # OHCI PCI->USB interface -device ehci # EHCI PCI->USB interface (USB 2.0) -device usb # USB Bus (required) -#device udbp # USB Double Bulk Pipe devices -device ugen # Generic -device uhid # <quote>Human Interface Devices</quote> -device ukbd # Keyboard -device ulpt # Printer -device umass # Disks/Mass storage - Requires scbus and da -device ums # Mouse -device ural # Ralink Technology RT2500USB wireless NICs -device urio # Diamond Rio 500 MP3 player -device uscanner # Scanners -# USB Ethernet, requires mii -device aue # ADMtek USB Ethernet -device axe # ASIX Electronics USB Ethernet -device cdce # Generic USB over Ethernet -device cue # CATC USB Ethernet -device kue # Kawasaki LSI USB Ethernet -device rue # RealTek RTL8150 USB Ethernet</programlisting> - - <para>Υποστήριξη για διάφορες συσκευές USB.</para> - - <programlisting># FireWire support -device firewire # FireWire bus code -device sbp # SCSI over FireWire (Requires scbus and da) -device fwe # Ethernet over FireWire (non-standard!)</programlisting> - - <para>Υποστήριξη για διάφορες συσκευές Firewire.</para> - - <para>Για περισσότερες πληροφορίες και επιπλέον συσκευές που - υποστηρίζονται από το &os;, δείτε το αρχείο - <filename>/usr/src/sys/<replaceable>i386</replaceable>/conf/NOTES - </filename>.</para> - - <sect2> - <title>Λειτουργία με Μεγάλη Ποσότητα Μνήμης (<acronym>PAE</acronym>)</title> - <indexterm> - <primary>Physical Address Extensions - (<acronym>PAE</acronym>)</primary> - <secondary>large memory</secondary> - </indexterm> - - <para>Μηχανήματα με μεγάλη ποσότητα μνήμης, χρειάζονται πρόσβαση σε - μνήμη που υπερβαίνει το όριο των 4 gigabytes των Εικονικών - Διευθύνσεων Χρήστη+Πυρήνα (User+Kernel Virtual Address, - <acronym>KVA</acronym>). Εξαιτίας αυτού του περιορισμού, η Intel - πρόσθεσε υποστήριξη για 36bit φυσικών διευθύνσεων, από τον - επεξεργαστή &pentium; Pro και μετά.</para> - - <para>Η δυνατότητα Επέκτασης Φυσικών Διευθύνσεων, (Physical Address - Extension, <acronym>PAE</acronym>) των &intel; &pentium; Pro και - μεταγενέστερων CPU, επιτρέπει χρήση μνήμης ως 64 gigabytes. To &os; - παρέχει υποστήριξη για τη δυνατότητα αυτή μέσω της ρύθμισης πυρήνα - <option>PAE</option>, η οποία διατίθεται για όλες τις τρέχουσες - σταθερές εκδόσεις του &os;. Λόγω περιορισμών στην αρχιτεκτονική του - συστήματος μνήμης της Intel, δεν γίνεται διάκριση για τη μνήμη που - βρίσκεται πάνω ή κάτω από τα 4 gigabytes. Η μνήμη που εκχωρείται - πάνω από τα 4 gigabytes, απλώς προστίθεται στο μέγεθος της - διαθέσιμης μνήμης.</para> - - <para>Για να ενεργοποιήσετε την υποστήριξη <acronym>PAE</acronym> - στον πυρήνα, απλώς προσθέστε την ακόλουθη γραμμή στο αρχείο - των ρυθμίσεων σας:</para> - - <programlisting>options PAE</programlisting> - - <note> - <para>Η υποστήριξη <acronym>PAE</acronym> στο &os; είναι διαθέσιμη - μόνο για επεξεργαστές αρχιτεκτονικής &intel; IA-32. Θα πρέπει - επίσης να σημειώσουμε ότι η υποστήριξη <acronym>PAE</acronym> στο - &os; δεν έχει δοκιμαστεί εκτεταμένα, και θα πρέπει να θεωρείται - ποιότητας beta σε σχέση με τα άλλα σταθερά χαρακτηριστικά του - &os;.</para> - </note> - - <para>Η υποστήριξη <acronym>PAE</acronym> στο &os; υπόκειται σε - κάποιους περιορισμούς:</para> - - <itemizedlist> - <listitem> - <para>Μια διαδικασία δεν έχει πρόσβαση σε περισσότερα από 4 - gigabytes χώρου VM.</para> - </listitem> - - <listitem> - <para>Οδηγοί συσκευών που δεν χρησιμοποιούν τη διεπαφή - &man.bus.dma.9; ίσως προκαλέσουν καταστροφή δεδομένων σε ένα - <acronym>PAE</acronym> πυρήνα και για το λόγο αυτό δεν - συνίσταται η χρήση τους. Στο &os; παρέχεται ένα αρχείο - ρυθμίσεων <filename>PAE</filename> στο οποίο έχουν εξαιρεθεί - όλα τα προγράμματα οδήγησης που είναι γνωστό ότι δεν δουλεύουν - σε πυρήνα τύπου <acronym>PAE</acronym>.</para> - </listitem> - - <listitem> - <para>Κάποιες μεταβλητές συστήματος (system tunables) εξακριβώνουν - τη χρήση της μνήμης, βλέποντας το ποσό της διαθέσιμης φυσικής - μνήμης. Αυτές οι μεταβλητές μπορεί να χρησιμοποιήσουν - αδικαιολόγητα μεγάλη ποσότητα μνήμης, λόγω της φύσης του - συστήματος <acronym>PAE</acronym>. Ένα τέτοιο παράδειγμα είναι η - ρύθμιση sysctl <option>kern.maxvnodes</option> η οποία ελέγχει - το μέγιστο αριθμό vnodes που επιτρέπονται στον πυρήνα. Είναι - σκόπιμο να ρυθμίσετε αυτή και άλλες παρόμοιες παραμέτρους σε - λογικές τιμές.</para> - </listitem> - - <listitem> - <para>Ίσως χρειαστεί να ρυθμίσετε τις εικονικές διευθύνσεις του - πυρήνα (<acronym>KVA</acronym>) ή να μειώσετε την ποσότητα - κάποιου συγκεκριμένου πόρου που έχει μεγάλη χρήση (δείτε - παραπάνω) για να αποφύγετε την εξάντληση του - <acronym>KVA</acronym>. Μπορείτε να αυξήσετε το μέγεθος του - <acronym>KVA</acronym> μέσω της επιλογής - <option>KVA_PAGES</option>.</para> - </listitem> - </itemizedlist> - - <para>Για λόγους σταθερότητας και απόδοσης, σας συμβουλεύουμε να - διαβάσετε τη σελίδα manual &man.tuning.7;. Επίσης η σελίδα - &man.pae.4; περιέχει ενημερωμένες πληροφορίες σχετικά με την - υποστήριξη <acronym>PAE</acronym> στο &os;.</para> - </sect2> - </sect1> - - <sect1 id="kernelconfig-trouble"> - <title>Αν Κάτι Πάει Λάθος</title> - - <para>Υπάρχουν τέσσερις κατηγορίες προβλημάτων που μπορούν να - παρουσιαστούν όταν δημιουργείτε ένα προσαρμοσμένο πυρήνα:</para> - - <variablelist> - <varlistentry> - <term>Αποτυχία της εντολής <command>config</command>:</term> - - <listitem> - <para>Αν η εντολή &man.config.8; αποτυγχάνει όταν της δίνετε την - περιγραφή του πυρήνα σας, έχετε κατά πάσα πιθανότητα, κάνει - κάποιο απλό λάθος. Ευτυχώς, η &man.config.8; θα σας δείξει τον - αριθμό γραμμής στον οποίο συνάντησε το πρόβλημα, και έτσι θα - μπορέσετε εύκολα να το εντοπίσετε. Για παράδειγμα, αν δείτε: - </para> - - <screen>config: line 17: syntax error</screen> - - <para>Βεβαιωθείτε ότι η λέξη-κλειδί στη γραμμή αυτή είναι σωστή, - συγκρίνοντας τη με την αντίστοιχη στο αρχείο - <filename>GENERIC</filename> ή σε άλλο αρχείο αναφοράς.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>Αποτυχία της εντολής <command>make</command>:</term> - - <listitem> - <para>Αν αποτυγχάνει η εντολή <command>make</command>, συνήθως αυτό - σημαίνει κάποιο λάθος στο αρχείο ρυθμίσεων το οποίο δεν είναι - αρκετά σοβαρό για να το καταλάβει η &man.config.8;. Κοιτάξτε ξανά - το αρχείο ρυθμίσεων σας και αν ακόμα δεν μπορείτε να εντοπίσετε το - πρόβλημα, στείλτε το μαζί με το αρχείο με mail στην - &a.questions; και θα εντοπιστεί πολύ γρήγορα.</para> - </listitem> - </varlistentry> - - <varlistentry> - <term>Ο πυρήνας δεν εκκινεί:<anchor - id="kernelconfig-noboot"/></term> - - <listitem> - <para>Αν ο νέος σας πυρήνας δεν εκκινεί ή αποτυγχάνει να αναγνωρίσει - τις συσκευές σας, μην πανικοβάλλεστε! Ευτυχώς, το &os; έχει ένα - εξαιρετικό μηχανισμό για να επανέλθετε από μη-συμβατούς πυρήνες. - Απλώς επιλέξτε τον πυρήνα από τον οποίο θέλετε να ξεκινήσετε μέσω - του συστήματος εκκίνησης (boot loader) του &os;. Έχετε πρόσβαση - σε αυτό, την ώρα που εμφανίζεται το μενού επιλογών εκκίνησης. - Επιλέξτε <quote>Escape to a loader prompt</quote>, αριθμός έξι. - Στην προτροπή που εμφανίζεται, γράψτε την εντολή - <command>boot <replaceable>kernel.old</replaceable></command> - ή το όνομα αρχείου ενός άλλου πυρήνα που ξεκινάει - κανονικά. Όταν φτιάχνετε ένα νέο πυρήνα, είναι πάντα καλή ιδέα - να έχετε πρόχειρο ένα πυρήνα που ξέρετε ότι δουλεύει.</para> - - <para>Αφού εκκινήσετε με ένα καλό πυρήνα, μπορείτε να ελέγξετε το - αρχείο ρυθμίσεων σας από την αρχή, και να προσπαθήσετε ξανά. - Μια χρήσιμη πηγή πληροφοριών είναι το αρχείο - <filename>/var/log/messages</filename> το οποίο μεταξύ άλλων - καταγράφει όλα τα μηνύματα του πυρήνα από κάθε επιτυχημένη - εκκίνηση. Επίσης η εντολή &man.dmesg.8; θα σας δείξει όλα τα - μηνύματα του πυρήνα της τρέχουσας εκκίνησης.</para> - - <note> - <para>Αν έχετε πρόβλημα στη δημιουργία πυρήνα, βεβαιωθείτε ότι - έχετε κρατήσει ένα πυρήνα <filename>GENERIC</filename>, ή - κάποιο άλλο που γνωρίζετε ότι λειτουργεί, χρησιμοποιώντας ένα - διαφορετικό όνομα ώστε να μη διαγραφεί στην επόμενη - μεταγλώττιση. Δεν μπορείτε να βασιστείτε στον πυρήνα - <filename>kernel.old</filename>, γιατί κάθε φορά που - εγκαθιστάτε νέο πυρήνα, το <filename>kernel.old</filename> - αντικαθίσταται με τον τελευταίο εγκατεστημένο πυρήνα, ο οποίος - μπορεί να μην λειτουργεί. Επίσης, όσο το δυνατόν πιο σύντομα, - μετακινήστε τον πυρήνα που λειτουργεί στην σωστή θέση, - <filename class="directory">/boot/kernel</filename>, διαφορετικά - εντολές όπως η &man.ps.1; ίσως να μη λειτουργούν σωστά. Για να - το κάνετε αυτό, απλώς μετονομάστε τον κατάλογο που περιέχει τον - καλό πυρήνα, π.χ:</para> - - <screen>&prompt.root; <userinput>mv /boot/kernel <replaceable>/boot/kernel.bad</replaceable></userinput> -&prompt.root; <userinput>mv /boot/<replaceable>kernel.good</replaceable> /boot/kernel</userinput></screen> - - </note> - </listitem> - </varlistentry> - - <varlistentry> - <term>Ο νέος πυρήνας λειτουργεί, αλλά η &man.ps.1; δεν λειτουργεί - πλέον:</term> - - <listitem> - <para>Αν εγκαταστήσετε πυρήνα διαφορετικής έκδοσης από αυτόν με τον - οποίο έχουν φτιαχτεί τα εργαλεία συστήματος, για παράδειγμα εάν - βάλετε ένα πυρήνα της σειράς -CURRENT σε ένα σύστημα -RELEASE, - πολλές από τις εντολές που σχετίζονται με την κατάσταση του - συστήματος όπως ή &man.ps.1; και η &man.vmstat.8; δεν θα - λειτουργούν πλέον. Θα πρέπει να - <link linkend="makeworld">μεταγλωττίσετε και να εγκαταστήσετε όλο - το βασικό σύστημα (world)</link> χρησιμοποιώντας ίδια έκδοση του - πηγαίου κώδικα με αυτή του πυρήνα σας. Αυτός είναι και ένας λόγος - για τον οποίο δεν είναι συνήθως καλή ιδέα να χρησιμοποιείτε - διαφορετική έκδοση πυρήνα από το υπόλοιπο του λειτουργικού - συστήματος.</para> - </listitem> - </varlistentry> - </variablelist> - </sect1> -</chapter> |