Παραθέτω έναν περιληπτικό και κατανοητό οδηγό για εγκατάσταση του 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"
Στη συνέχεια:
# 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*
ΤΕΛΟΣ ΕΓΚΑΤΑΣΤΑΣΗΣ.
- Συνδεθείτε ή εγγραφείτε για να σχολιάσετε
Σχόλια
Ευχαριστώ που με έβαλες στο κόσμο του gentoo :)