Αφού εγκαταστήσετε και ρυθμίσετε ένα stage3, ενδεχομένως θα έχετε στη διάθεσή σας ένα Gentoo base σύστημα. Αυτό το κεφάλαιο περιγράφει πώς θα φτάσετε σ' αυτό το σημείο. 10.5 2010-11-14
Chrooting Προαιρετικά: Επιλογή Mirrors

Προκειμένου να κατεβάσετε σύντομα τον πηγαίο κώδικα, καλό θα είναι να επιλέξετε έναν γρήγορο καθρέπτη (mirror). Το Portage θα κοιτάξει στο make.conf φάκελό σας για τις GENTOO_MIRRORS μεταβλητές και θα χρησιμοποιήσει τους καθρέπτες που αναφέρονται εκεί μέσα. Μπορείτε να σερφάρετε στη λίστα αλληλογραφίας μας και ν' αναζητήσετε για έναν καθρέπτη (ή καθρέπτες) πλησιέστερα σε σας (καθώς αυτοί είναι συνήθως οι πιο γρήγοροι), αλλά παρέχουμε ένα ωραίο εργαλείο που ονομάζεται mirrorselect το οποίο σας προσφέρει μια ωραία διεπαφή για να επιλέξετε τους καθρέπτες που επιθυμείτε.

# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf

Μια δεύτερη σημαντικότερη ρύθμιση είναι η ρύθμιση του SYNC στο make.conf. Αυτή η μεταβλητή περιλαμβάνει τον rsync server που θέλετε να χρησιμοποιήσετε κάθε φορά που ενημερώνετε το Portage tree σας (τη συλλογή των ebuilds, scripts που περιέχουν όλες τις πληροφορίες που χρειάζεται το Portage για να κατεβάσει και να εγκαταστήσει λογισμικό). Αν και μπορείτε με το χέρι να εισαγάγετε έναν SYNC server για τον εαυτό σας, το mirrorselect μπορεί να κάνει εύκολα αυτή την ενέργεια για σας:

# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf

Αφού τρέξετε το mirrorselect σας συμβουλεύουμε να διπλοελέγξετε τις ρυθμίσεις στο /mnt/gentoo/etc/make.conf !

Αν θέλετε να ρυθμίσετε χειροκίνητα έναν διακομιστή SYNC στο make.conf, θα πρέπει να ελέγξετε τη λίστα των mirrors της κοινότητας για τα πιο κοντινά mirrors. Σας προτείνουμε να επιλέξετε ένα περιστρεφόμενο, όπως το rsync.us.gentoo.org, αντί για ένα μεμονωμένο mirror. Αυτό βοηθάει να εξαπλωθεί το φόρτο εργασίας και παρέχει και μια ασφάλεια κατά αποτυχία στην περίπτωση που κάποιο mirror είναι εκτός λειτουργίας.
Αντιγραφή DNS Info

Ένα πράγμα απομένει να γίνει πρωτού μπείτε στο νέο περιβάλλον και αυτό είναι ν' αντιγράψετε την DNS πληροφορία στο /etc/resolv.conf. Θα πρέπει να το κάνετε αυτό για να εξασφαλίσετε ότι το δίκτυο θα συνεχίσει να λειτουργεί και μετά την είσοδο στο νέο περιβάλλον. Το /etc/resolv.conf περιέχει τα nameservers για το δίκτυό σας.

(Η επιλογή "-L" χρειάζεται για να σιγουρευτούμε ότι δεν
αντιγράφουμε ένα symbolic link)
# cp -L /etc/resolv.conf /mnt/gentoo/etc/
Προσάρτηση των Αρχείων Συστήματος /proc και /dev

Προσαρτήστε το αρχείο συστήματος /proc στο /mnt/gentoo/proc για να επιτρέψετε στην εγκατάσταση να χρησιμοποιήσει την παρεχόμενη πληροφόρηση από τον πυρήνα μέσα στο chrooted περιβάλλον, και τότε ασφαλίστε την προσάρτηση του αρχείου συστήματος /dev.

# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
Προσάρτηση των Αρχείων Συστήματος /proc, /sys και /dev

Προσαρτήστε το αρχείο συστήματος /proc στο /mnt/gentoo/proc για να επιτρέψετε στην εγκατάσταση να χρησιμοποιήσει την παρεχόμενη από τον πυρήνα πληροφόρηση μέσα στο chrooted περιβάλλον, και τότε ασφαλίστε τις προσαρτήσεις των αρχείων συστήματος /dev και /sys.

# mount -t proc none /mnt/gentoo/proc
# mount -o bind /dev /mnt/gentoo/dev
# mount -o bind /sys /mnt/gentoo/sys
Είσοδος στο Νέο Περιβάλλον

Τώρα που όλες οι κατατμήσεις είναι χαρακτηρισμένες και το βασικό περιβάλλον εγκατεστημένο, είναι η ώρα να μπείτε στο νέο περιβάλλον εγκατάστασης κάνοντας chroot σε αυτό. Αυτό σημαίνει ότι αλλάζουμε από το τρέχον περιβάλλον εγκατάστασης (CD Εγκατάστασης ή άλλο μέσο εγκατάστασης) στο δικό σας σύστημα εγκατάστασης (δηλαδή οι χαρακτηρισμένες κατατμήσεις).

Αυτό το "chrooting" γίνεται σε τρία βήματα. Πρώτον, θ' αλλάξετε το root από / (στο μέσον εγκατάστασης) σε /mnt/gentoo (στις κατατμήσεις σας) χρησιμοποιώντας την εντολή chroot. Τότε θα δημιουργήσουμε ένα νέο περιβάλλον χρησιμοποιώντας το env-update, που δημιουργεί στην ουσία μεταβλητές περιβάλλοντος. Στο τέλος, φορτώνουμε αυτές τις μεταβλητές στη μνήμη χρησιμοποιώντας το source.

# chroot /mnt/gentoo /bin/bash
# env-update
>> Regenerating /etc/ld.so.cache...
# source /etc/profile
# export PS1="(chroot) $PS1"

Συγχαρητήρια! Βρίσκεστε τώρα μέσα στο δικό σας περιβάλλον Gentoo Linux. Ασφαλώς απέχετε πολύ από το τέλος, και αυτό γιατί η εγκατάσταση περιλαμβάνει μερικά πράγματα ακόμα :-)

Ρύθμιση του Portage Ενημέρωση του Portage tree

Θα πρέπει τώρα να ενημερώσετε το Portage tree στην τελευταία έκδοση. Το emerge --sync το κάνει αυτό για σας.

# emerge --sync
(Εάν χρησιμοποιείτε ένα αργό τερματικό όπως μερικά framebuffers
ή μια serial κονσόλα, μπορείτε να προσθέσετε τη μεταβλητή --quiet
για να επιταχύνετε τη διαδικασία:)
# emerge --sync --quiet

Εάν βρίσκεστε πίσω από ένα firewall που μπλοκάρει την κίνηση του rsync, μπορείτε να χρησιμοποιήσετε emerge-webrsync το οποίο θα κατεβάσει και θα εγκαταστήσει ένα στιγμιότυπο του portage για σας.

Εάν έχετε ειδοποιηθεί πως μια νέα έκδοση του Portage είναι διαθέσιμη και ότι χρειάζεται να ενημερώσετε το Portage, θα πρέπει να το κάνετε χρησιμοποιώντας emerge --oneshot portage.

Επιλέξτε το σωστό προφίλ

Κατ' αρχήν, ισχύει ένας μικρός ορισμός.

Το προφίλ (profile) είναι μια δομική μονάδα για κάθε σύστημα Gentoo. Όχι μόνο ορίζει προκαθορισμένες αξίες για τα USE, CFLAGS και άλλες σημαντικές μεταβλητές, αλλά κλειδώνει επίσης το σύστημα σε μια ορισμένη σειρά των εκδόσεων του πακέτου. Αυτό όλο διατηρείται από τους υπεύθυνους για την ανάπτυξη του Gentoo.

Προηγουμένως, ένα τέτοιο προφίλ ήταν ανέγγιχτο από τους χρήστες. Εντούτοις, μπορούν να υπάρξουν ορισμένες περιπτώσεις στις οποίες ίσως αποφασίσετε ότι μια αλλαγή προφίλ είναι απαραίτητη.

Μπορείτε να δείτε ποιο τρέχον προφίλ χρησιμοποιείτε, με την ακόλουθη εντολή:

# eselect profile list
Available profile symlink targets:
  [1]    *
  [2]   /desktop
  [3]   /server

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

Υπάρχουν επίσης διαθέσιμα για κάποιες αρχιτεκτονικές, τα desktop και server υποπροφίλ (subprofiles). Εκτελώντας eselect profile list θα εμφανιστούν όλα τα διαθέσιμα προφίλ.

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

# eselect profile set 2

Εάν θέλετε να έχετε ένα ατόφιο 64-bit περιβάλλον, χωρίς 32-μπιτες εφαρμογές ή βιβλιοθήκες, θα πρέπει να χρησιμοποιήσετε ένα μη multilib προφίλ:

# eselect profile list
Available profile symlink targets:
  [1]    *
  [2]   /desktop
  [3]   /no-multilib
  [4]   /server
(Επιλέξτε το μη multilib προφίλ)
# eselect profile set 3
(Επαλήθευση της αλλαγής)
# eselect profile list
Available profile symlink targets:
  [1]   
  [2]   /desktop
  [3]   /no-multilib *
  [4]   /server
Το υποπροφίλ developer είναι ειδικά για τους σκοπούς της ανάπτυξης του Gentoo Linux. Δεν προορίζεται να βοηθήσει την οργάνωση γενικά περιβαλλόντων ανάπτυξης.
Ρύθμιση της μεταβλητής USE

Η USE είναι μια από τις πιο ισχυρές μεταβλητές που παρέχει το Gentoo στους χρήστες του. Μερικά προγράμματα μπορούν να μεταγλωττιστούν με ή χωρίς προαιρετική υποστήριξη για ορισμένες εφαρμογές. Για παράδειγμα, κάποια προγράμματα μπορούν να μεταγλωττιστούν με το gtk-support ή με το qt-support. Άλλα μπορούν να μεταγλωττιστούν με ή χωρίς υποστήριξη SSL. Μερικά προγράμματα μπορούν ακόμα να μεταγλωττιστούν με υποστήριξη framebuffer (svgalib) αντί για υποστήριξη X11 (X-server).

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

Στη μεταβλητή USE καθορίζετε τις λέξεις-κλειδιά που εμφανίζονται στις επιλογές μεταγλώττισης. Για παράδειγμα, το ssl θα μεταγλωττίσει την SSL-υποστήριξη στα προγράμματα που την υποστηρίζουν. Το -X θα αφαιρέσει την υποστήριξη Χ-servers (σημειώστε το αρνητικό σημείο μπροστά). Το gnome gtk -kde -qt4 θα μεταγλωττίσει τα προγράμματά σας με την υποστήριξη gnome (και gtk) και όχι με την υποστήριξη kde (και qt), κάνοντας το σύστημά σας πλήρως διαμορφωμένο για GNOME.

Οι προκαθορισμένες ρυθμίσεις του USE έχουν τοποθετηθεί στα αρχεία make.defaults του προφίλ σας. Θ' ανακαλύψετε τα αρχεία make.defaults στο directory στο οποίο δείχνει το /etc/make.profile και όλα επίσης τα parent directories. Η προκαθορισμένη ρύθμιση του USE είναι το σύνολο όλων των ρυθμίσεων του USE σε όλα τα αρχεία του make.defaults. Ό,τι τοποθετείτε στο /etc/make.conf υπολογίζεται ενάντια στις προεπιλεγμένες ρυθμίσεις. Εάν προσθέτετε κάτι στη ρύθμιση του USE, αυτό προστίθεται στην προϋπάρχουσα λίστα. Εάν απομακρύνετε κάτι από τη ρύθμιση του USE (τοποθετώντας το σύμβολο του μείον μπροστά σ' αυτό) αυτό απομακρύνεται από την προϋπάρχουσα λίστα (εάν υπήρξε ποτέ μέσα στη λίστα αυτή). Ποτέ μη μεταβάλλετε οτιδήποτε μέσα στο αρχείο /etc/make.profile: θα σβηστεί όταν θα κάνετε ενημέρωση του Portage!

Μια πλήρη περιγραφή του USE μπορεί να βρεθεί στο δεύτερο μέρος του Εγχειριδίου του Gentoo, USE flags. Μια πλήρη περιγραφή των διαθέσιμων USE flags μπορεί να βρεθεί στο σύστημά σας, στο αρχείο /usr/portage/profiles/use.desc.

# less /usr/portage/profiles/use.desc
(Μπορείτε να μετακινηθείτε χρησιμοποιώντας τα βελάκια, εξέρχεστε
πατώντας το 'q')

Ως παράδειγμα, δείχνουμε μια ρύθμιση του USE για ένα σύστημα βασισμένο σε KDE με υποστήριξη DVD, ALSA και CD Recording:

# nano -w /etc/make.conf
USE="-gtk -gnome qt4 kde dvd alsa cdr"
Προαιρετικά: glibc Locales

Πιθανώς θα χρησιμοποιήσετε μόνο ένα ή ίσως δύο σύνολα εντοπιότητας (locales) στο σύστημά σας. Μπορείτε να καθορίσετε τα locales που θα χρειαστείτε μέσα στο αρχείο /etc/locale.gen.

# nano -w /etc/locale.gen

Τα παρακάτω locales είναι ένα παράδειγμα για να έχετε εξίσου Αγγλικά (ΗΠΑ) και Γερμανικά με τα αντίστοιχα χαρακτηριστικά formats (όπως το UTF-8).

en_US ISO-8859-1
en_US.UTF-8 UTF-8
de_DE ISO-8859-1
de_DE@euro ISO-8859-15

Το επόμενο βήμα είναι να τρέξετε το locale-gen. Θα παραγάγει όλα τα locales που έχετε καθορίσει στο αρχείο /etc/locale.gen.

Τώρα συνεχίστε με τη Ρύθμιση του πυρήνα.