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

rpil | Τετ, 06/16/2010 - 08:52 | 17' | 1

Παραθέτω έναν περιληπτικό και κατανοητό οδηγό για εγκατάσταση του 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*

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

Tags
Δώσε αστέρια!

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

Σχόλια