Οδηγός Γρήγορης Εγκατάστασης Gentoo Linux (Updated 2015)

rpil | Σάβ, 10/31/2009 - 12:11 | 17' | 2

Παραθέτω έναν περιληπτικό και κατανοητό οδηγό για εγκατάσταση του Gentoo.  Ο οδηγός αφορά την x86 αρχιτεκτονική.

Θ' ασχοληθούμε πρώτα με την προετοιμασία του σκληρού μας δίσκου και των filesystems.

Βασική προϋπόθεση για την εγκατάσταση, είναι να έχουμε σύνδεση στο Διαδίκτυο, αφού μέσω Internet γίνεται όλη η διαδικασία.

Κατ' αρχήν, φτιάχνουμε τρία partitions (κατατμήσεις) στον σκληρό μας δίσκο, ως εξής:

/dev/sda1 ext2 32M Boot partition
/dev/sda2 (swap) 512M Swap partition
/dev/sda3 ext3 Rest of the disk Root partition

Αυτό μπορεί να γίνει, είτε με κάποιο από τα προγράμματα κατάτμησης (GParted, Qtparted, κλπ), είτε μέσω κονσόλας, με την εντολή fdisk:

# fdisk /dev/sda

Δίνουμε στην κονσόλα "n" (που σημαίνει "new - νέα" κατάτμηση)

Βγάζει δύο επιλογές: Γράφουμε "p" (primary) και τον αριθμό "1" (πρώτο partition).

Command action
  e   extended
  p   primary partition (1-4)

Όταν μας ρωτάει για τον πρώτο κύλινδρο, πατάμε "Enter" και για τον δεύτερο γράφουμε "+32M", αφού το πρώτο partition μας επιθυμούμε να είναι χωρητικότητας 32ΜΒ.

Όταν ξαναδώσουμε "p", θα δούμε τον εξής πίνακα:

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1             1        14    105808+  83  Linux

Θέλουμε να ορίσουμε ως /boot την πρώτη μας κατάτμηση, οπότε θα δώσουμε "a" για να τοποθετηθεί το flag.  Μετά γράφουμε "1".

Δίνουμε "p" και βλέπουμε ότι ένας αστερίσκος (*) προστέθηκε στην στήλη "Boot".

Στη συνέχεια, φτιάχνουμε την Swap partition:

Δίνουμε "n"

Δίνουμε "p"

Δίνουμε "2" (δεύτερη κατάτμηση)

Δίνουμε "Enter" στον πρώτο κύλινδρο και "+512M" στον δεύτερο, αφού θέλουμε το swap partition μας να είναι χωρητικότητας 512ΜΒ.

Δίνουμε "t" για να καθορίσουμε το partition type, μετά "2" για να επιλέξουμε την συγκεκριμένη κατάτμηση και γράφουμε "82" για να την μετατρέψουμε σε "Linux swap" partition. Όταν δώσουμε ξανά "p", θα δούμε τον παρακάτω πίνακα:

 

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1        14    105808+  83  Linux
/dev/sda2            15        81    506520   82  Linux swap

Τώρα, είμαστε έτοιμοι να φτιάξουμε το root patrition.

Δίνουμε διαδοχικά "n", "p", "3", "Enter", "Enter" και ξανά "p", για να δούμε τον παρακάτω (και τελικό) πίνακα:

Disk /dev/sda: 30.0 GB, 30005821440 bytes
240 heads, 63 sectors/track, 3876 cylinders
Units = cylinders of 15120 * 512 = 7741440 bytes

   Device Boot    Start       End    Blocks   Id  System
/dev/sda1   *         1        14    105808+  83  Linux
/dev/sda2            15        81    506520   82  Linux swap
/dev/sda3            82      3876  28690200   83  Linux

Για να σώσουμε και να βγούμε από την εφαρμογή fdisk, δίνουμε "w".

 

Πάμε τώρα να καθορίσουμε τα filesystems στα partitions που μόλις φτιάξαμε!
 

Τα εργαλεία μας, για την δημιουργία αυτή, είναι, ανάλογα με το filesystem που επιθυμούμε, τα εξής:

Filesystem Creation Command
ext2 mke2fs
ext3 mke2fs -j
reiserfs mkreiserfs
xfs mkfs.xfs
jfs mkfs.jfs

 

Στην δική μας περίπτωση, θέλουμε ένα ext2 για το πρώτο (/boot) partition, ένα swap για το δεύτερο και ένα ext3 για το root partition μας.

Οπότε, δίνουμε:

# mke2fs /dev/sda1
# mke2fs -j /dev/sda3

Και για το swap:

# mkswap /dev/sda2

Για να ενεργοποιήσουμε το swap, δίνουμε:

# swapon /dev/sda2

Τέλος, θα πρέπει να κάνουμε mount, να ενσωματώσουμε δηλαδή αυτά τα partitions που δημιουργήσαμε:

# mkdir /mnt/gentoo
# mount /dev/sda3 /mnt/gentoo
# mkdir /mnt/gentoo/boot
# mount /dev/sda1 /mnt/gentoo/boot

Ελέγχουμε με την εντολή "date", την ημερομηνία.  Αν είναι λάθος, δίνουμε "date MMDDmmYYYY".  (μήνας, μέρα, ώρα, λεπτό, έτος).

Παράδειγμα:

Αν θέλουμε να βάλουμε την σημερινή ημερομηνία. δηλαδή Σάββατο 31 Οκτωβρίου 2009, θα δώσουμε:

# date 103119042009

Τώρα θα κατεβάσουμε το stage3 tarball από τον server του Gentoo.  Είναι το πρώτο σημαντικό βήμα για την εγκατάσταση.

Δίνουμε:

# cd /mnt/gentoo

για να μπούμε στην τοποθεσία όπου ενσωματώσαμε τα filesystems μας.

Με τον browser κονσόλας "links" (ή αν δεν υπάρχει αυτός, τον "lynx") ή με το wget, μπαίνουμε στην mirrorlist του Gentoo:

# links https://www.gentoo.org/downloads/mirrors/#GR

Βρίσκουμε τον Ελληνικό server και κατεβάζουμε το πιο πρόσφατο stage3-.....tar.bz2 αρχείο.  Επιλέγουμε το link του stage3 και πιέζουμε "D" για να το κατεβάσει.  Μόλις ολοκληρώσει, βγαίνουμε με "Q".

Τώρα, ήλθε η ώρα ν' αποσυμπιέσουμε το stage3.  Αυτό θα γίνει με την εντολή:

# tar xvjpf stage3-*.tar.bz2

(όπου, -x = extract, -v = verbose/ελέγχει τι συμβάινει κατά την διαδικασία της εγκατάστασης, j = decompress/αποσυμπίεση με το bzip2, -p = preserve permissions και -f = ότι θέλουμε να εξαγάγουμε ένα αρχείο).

Με την εντολή αυτή, γίνεται η αποσυμπίεση και τα περιεχόμενα του stage3 κατεβαίνουν στο /mnt/gentoo.  Ακολουθεί το κατέβασμα της τελευταίας έκδοσης του portage.

Με τον ίδιο τρόπο, δίνουμε την εντολή (είμαστε ήδη στο /mnt/gentoo):

# links https://www.gentoo.org/downloads/mirrors/#GR

Πάμε πάλι από τον αντίστοιχο server και βρίσκουμε την πιο πρόσφατη έκδοση του portage (θα έχει το όνομα portage-latest.tar.bz2).  Με "D" κατεβάζουμε και όταν ολοκληρωθεί, φεύγουμε με "Q".

Αποσυμπιέζουμε με την παρακάτω εντολή (προσοχή στο κεφαλαίο -C):

# tar xvjf /mnt/gentoo/portage-latest.tar.bz2 -C /mnt/gentoo/usr

Χρησιμοποιούμε τον editor της προτίμησής μας (εδώ θα παίξουμε με τον nano).  Θα ελέγξουμε το αρχείο /etc/make.conf, που είναι ιδιαίτερα σημαντικό για την διαμόρφωση του συστήματός μας.

# nano -w /etc/portage/make.conf

Θέλουμε:

CFLAGS="-O2 -march=i686 -pipe"

CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"

Στο nano σώζουμε με Ctrl+O (προσοχή: όχι "μηδέν"!) & Enter και βγαίνουμε μεCtrl+X.

Στη συνέχεια, επιλέγουμε κάποιον από τους mirrors του Gentoo, ώστε να παίρνουμε τα sync και να ενημερώνουμε το σύστημά μας.  Υπάρχουν και Ελληνικά mirrors (ftp://files.gentoo.gr και ftp://ftp.ntua.gr/pub/linux/gentoo/)

Ή τα περνάμε χειροκίνητα στο αρχείο /etc/make.conf ή δίνουμε την εντολή:

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

Κατόπιν δίνουμε:

# cp -L /etc/resolv.conf /mnt/gentoo/etc/

για να σιγουρευτούμε ότι θα έχουμε δίκτυο και όταν θα μπούμε στο νέο περιβάλλον.

Κάνουμε mount τα /proc /sys και /dev :

# mount -t proc none /mnt/gentoo/proc
# mount --rbind /sys /mnt/gentoo/sys

  # mount --rbind /dev /mnt/gentoo/dev

Και ήλθε η ώρα να μπούμε στο νέο μας περιβάλλον:

    # chroot /mnt/gentoo /bin/bash

Δίνουμε:

    # env-update

    # source /etc/profile

    # export PS1="(chroot) $PS1"

Τώρα βρισκόμαστε μέσα στο περιβάλλον του Gentoo!

Ακολουθεί το update του Portage:

# emerge --sync

Ρυθμίζουμε τα αρχεία για το sync. σύμφωνα με τις τελευταίες αλλαγές στο Gentoo.

Στο /etc/portage/repos.conf/gentoo.conf, βάζουμε για παράδειγμα:

[DEFAULT]

main-repo = gentoo

[gentoo]

location = /usr/portage

sync-type = rsync

auto-sync = yes

sync-uri = rsync://rsync.gentoo.gr/gentoo-portage

και στο /etc/portage/postsync.d/eix-update:

τοποθετούμε το script (και το κάνουμε εκτελέσιμο):

#!/bin/sh eix-update && eix-diff install -o portage -g portage -m 664 /var/cache/eix/portage.eix /var/cache/eix/previous.eix

Επιλέγουμε το προφίλ μας:

# eselect profile list

Ακολουθεί λίστα με τα profiles, όπου επιλέγουμε το desktop profile:

# eselect profile set * (τον αριθμό που αντιστοιχεί στο προφίλ που επιλέξαμε)
 

Ρυθμίζουμε τα USE flags. 

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

# less /usr/portage/profiles/use.desc

(βγαίνουμε με q)

Ανοίγουμε το αρχείο /etc/portage/make.conf:

# nano -w /etc/portage/make.conf

Μια τυπική ρύθμιση USE flags είναι η παρακάτω:

USE="-gtk -gnome qt4 kde dvd alsa cdr 
mmx mmxext sse sse2 sse3 ssse3 sse4_1"

Νέα προσθήκη στο αρχείο είναι αυτή των CPU_FLAGS. Επειδή μιλάμε για x86 αρχιτεκτονική, θα προσθέσουμε την παρακάτω γραμμή:

CPU_FLAGS_X86="mmx mmxext sse sse2 sse3 ssse3 sse4_1"

Σώζουμε και βγαίνουμε.

Καθορίζουμε την τοπική ώρα:

# cp /usr/share/zoneinfo/Europe/Athens /etc/localtime
# echo "Europe/Athens" > /etc/timezone 

 

Τώρα ήλθε η κρίσιμη ώρα να επιλέξουμε πυρήνα!

Δίνουμε:

# emerge gentoo-sources

# ls -l /usr/src/linux

Θα δούμε κάτι τέτοιο:

lrwxrwxrwx    1 root   root    18 Sep 3 11:04 /usr/src/linux -> linux-3.3.8-gentoo

Έχουμε να επιλέξουμε δύο τρόπους για να χτίσουμε τον πυρήνα.  Ο πρώτος είναι εξ' ολοκλήρου "με το χέρι", που δεν συστήνεται γα αρχάριους χρήστες.

Ο δεύτερος και προτεινόμενος είναι με τον Genkernel.  Δίνουμε με τη σειρά:

# emerge genkernel
για να κατεβάσουμε τον Genkernel.

# genkernel all
για να τον "τρέξουμε". 
# ls /boot/kernel* /boot/initramfs*

για να ελέγξουμε την ονομασία της εικόνας του πυρήνα που δημιουργήθηκε και το initrd.

Στη συνέχεια ρυθμίζουμε τις boot options:

# nano -w /etc/fstab

'Ενα παράδειγμα για το πώς πρέπει να είναι το αρχείο, ειναι το παρακάτω:

/dev/sda1   /boot        ext2    defaults,noatime     1 2
/dev/sda2   none         swap    sw                   0 0
/dev/sda3   /            ext3    noatime              0 1
/dev/cdrom  /mnt/cdrom   auto    noauto,user          0 0

Σώζουμε και βγαίνουμε.

Ακολουθεί ο καθορισμός του hostname:

# nano -w /etc/conf.d/hostname

Δίπλα στην ένδειξη "HOSTNAME", βάζουμε το ονομά χρήστη.  Παράδειγμα:

HOSTNAME="rpil"

Καθορίζουμε το domain name:

# nano -w /etc/conf.d/net

Το φτιάχνουμε ως εξής:

dns_domain_lo="rpil"
config_eth0="192.168.0.2 netmask 255.255.255.0 brd 192.168.0.255"

routes_eth0="default via 192.168.0.1"
config_eth0="dhcp"

Ρυθμίζουμε το δίκτυο, βάζοντας ως default την eth0.

# cd /etc/init.d
# ln -s net.lo net.eth0
# rc-update add net.eth0 default

 Για να μην μάς αλλάξει τα interface names που ορίσαμε, δίνουμε την εντολή:

# ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
 

Καθορίζουμε το root password που επιθυμούμε:

# passwd

Ανοίγουμε το αρχείο rc.conf:

# nano -w /etc/rc.conf

Βάζουμε:

UNICODE="no"

EDITOR="/bin/nano" (ή vi ή όποιον επιθυμούμε)

Στη συνέχεια:

# nano -w /etc/conf.d/keymaps

Θέλουμε:

keymap="US"
windowkeys="NO"

fix_euro="YES"

Ρυθμίζουμε την ώρα:

# nano -w /etc/conf.d/hwclock

Θέλουμε:

clock="UTC"

clock_systohc="YES"
clock_hctosys="YES" 

Καθορίζουμε τις γλώσσες του πληκτρολογίου:

# nano -w /etc/locale.gen

Θα βρούμε τα αγγλικα και θα προσθέσουμε τις δύο αντίστοιχες γραμμές για τα ΕΛΛΗΝΙΚΑ:

en_US ISO-8859-1
en_US.UTF-8 UTF-8
el_GR ISO-8859-7
el_GR.UTF-8 UTF-8

Σώζουμε και βγαίνουμε.

Τρέχουμε:

# locale-gen

για να περάσει τις ρυθμίσεις της γλώσσας.

 # env-update && source /etc/profile
 

Περνάμε τώρα τον System Logger:

Δίνουμε:

# emerge syslog-ng
# rc-update add syslog-ng default

Καλό θα είναι να περάσουμε και τον cron daemon:

 

# emerge vixie-cron
# rc-update add vixie-cron default

Μετά:

# emerge mlocate

Περνάμε το dhcpcd, για να παίρνει αυτόματα IP address:

# emerge dhcpcd

Τώρα εγκαθιστούμε τον bootloader.  Επιλέγουμε τον GRUB 2 πλέον, ως πρώτη επιλογή:

# emerge sys-boot/grub

Αφού εγκατασταθεί τον ρυθμίζουμε:

# grub2-install /dev/sda

Στο σημείο αυτό, αν μας δώσει μήνυμα λάθους όπως:

mkdir: cannot create directory '/boot/grub': Read-only file system

τότε δίνουμε την εντολή:

mount -o rw,remount /dev/sda1
(όπου sda1 βάζουμε το /boot partition που έχουμε ορίσει)
και ξανατρέχουμε την εντολή:

# grub2-install  /dev/sda

Δίνουμε
# grub2-mkconfig -o /boot/grub/grub.cfg

για να βρει τις διαθέσιμες options εκκίνησης. Θα πρέπει να μας βγάλει κάτι σαν:

Generating grub.cfg ... 
Found linux image: /boot/vmlinuz-3.12.20-gentoo 
Found initrd image: /boot/initramfs-genkernel-x86-3.12.20-gentoo 
done

Ήλθε η ώρα της κρίσεως!

 

Πρώτα κάνουμε unmount τα mounted partitions και επανεκκινούμε το σύστημα (και ο Θεός βοηθός!):

# exit
cdimage ~# cd
cdimage ~# umount -l /mnt/gentoo/dev{/shm,/pts,}
cdimage ~# umount -l /mnt/gentoo{/boot,/proc,}
cdimage ~# reboot

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

Login: root
Password: (Το root password)

# useradd -m -G users,wheel,audio -s /bin/bash rpil (όπου "rpil", το username σας)
# passwd rpil
Password: (Δίνουμε το password για τον χρήστη rpil)
Re-enter password: (Το ξαναδίνουμε για σιγουριά)

Τώρα, καθαρίζουμε τον σκληρό μας από τα συμπιεσμένα αρχεία του snapshot και του stage3:

# rm /stage3-*.tar.bz2*
# rm /portage-latest.tar.bz2*

ΤΕΛΟΣ ΕΓΚΑΤΑΣΤΑΣΗΣ.

Φόρουμ
Δώσε αστέρια!

MO: 5 (ψήφοι: 1)

Σχόλια

Ως εδώ (στην ανάγνωση) ολα-καλά-&-εύκολα ! Τρέχω linuxmint-9-x64 μόνον. Το σύστημα είναι atom 330 + GeForce 9400 (ION). Κάτι διάβασα στα forums gentoo για αρχιτεκτονική EM64T. Κάπου εδώ αρχίζω να μπερδεύομαι ιδίως όταν ξέρω πως χρειάζομαι τους "κλειστούς" drivers nVidia. Ποιά τμήματα του Kernel δεν χρειάζομαι; Τίνος Kernel; Του last stable όπως τον βλέπω στη σελίδα  "karnel.org" ή αυτού που μπορώ να βρώ σε οποιοδήποτε liveCD/DVD ;  Τι γίνεται αν εξ'αρχής θέλω να επιλέξω τον Seamonkey & κάποιες (όλες τις) εφαρμογές που σχεδιάστηκαν για xfce desktop ;  Αν τα κάνω μαντάρα (καθόλου απίθανο) θα έχω τουλάχιστον το σύστημα (mint-9 ! μου τη δίνει το "isadora" σαν όνομα ! ) ; Οι "μικροπυρήνες" για τους οποίους διάβασα κάπου στο περιοδικό που αρχίζουν να γίνονται χρήσιμοι;

Όπως γράφω και στην αρχή του οδηγού, φίλε Ηλία, "Ο οδηγός αφορά την x86 αρχιτεκτονική".  Πέραν τούτου, δεν γνωρίζω (όλα μου τα συστήματα είναι x86), αλλά η διαδικασία είναι πάνω-κάτω η ίδια. Μια ματιά στο handbook του Gentoo για την AMD 64 αρχιτεκτονική, ίσως μπορεί να σου φανεί χρήσιμη.

------------------------------------------------------------------------------------------------

"Όταν βλέπεις τον πιγκουίνο, ξέρεις τι πρέπει να κάνεις": ΒΑΖΕΙΣ LINUX!