Gentoo Linux 1.4 rc1

Instalace - popis + vlastní zkušenosti

Předně bych rád upozornil, že si tímto článkem nekladu za cíl kopírovat instalační příručku Gentoo Linuxu, nebo jí překládat. Pokud to bylo možné striktně jsem se jí držel. Rád bych všem, kteří plánují nainstalovat Gentoo dal příklad možné instalace i s vlastními postřehy a časovými nároky na průměrném domácím hardware.

Informace

Po zjištění, že mi můj RedHat Linux 7.3 zabírá na harddisku téměř 6 GB, jsem se rozhodl, že než pracně očesávat stávající systém, vyzkouším konečně čistou instalaci Linuxu. Jako "tu správnou" distribuci jsem si vybral Gentoo, kterou jsem již nějaký čas sledoval a plánoval vyzkoušet, jen ještě nebyl čas.
Jelikož nejsem ochotný přijít o své data a zálohovat desktop jsem líný :o), rozhodl jsem se nainstalovat nový systém na druhý, dosud přenosný disk (viz. konfigurace na konci článku).

Jako první jsem si stáhl distribuční CD (http://www.ibiblio.org/pub/Linux/distributions/gentoo/releases/1.2/gentoo-i686-1.2.iso), které má 135 MB. A otevřel instalační dokumentaci na adrese: http://www.gentoo.org/doc/build.html.

Rád bych upozornil, že instalací z již běžícího Linuxu začínáte v oficiální dokumentaci víceméně u bodu 6. (Set up partitions).

Dál jsem tedy otevřel shell konzoli a začal s přípravou, jako první jsem se pro zjednodušení přepnul na roota:

$su root
Password:
#

Potom bylo potřeba nastavit partitiony na harddisku. Připomínám, že jsem instaloval na druhý harddisk zapojený na primárním řadiči jako slave.

#umount /dev/hdb1
#fdisk /dev/hdb

Vytvořil jsem si partitiony následujícím způsobem.

hdb1 ext3 300MB (zamýšlený /boot - zbytečně velký, ale byl jsem líný počítat clustery na MB:o))
hdb2 ext3 5.2GB (zamýšlený root)
hdb3 swap 400MB (zamýšlený swap)

#/sbin/mke2fs -j /dev/hdb1
#/sbin/mke2fs -j /dev/hdb2
#/sbin/mkswap /dev/hdb3

dále jsem vytvořil adresáře pro připojení instalačního CD a instalace Gentoo, připojil instalační harddisk a swap.

#mkdir /mnt/gentoo
#mkdir /mnt/iso
#mount -w -t ext3 /dev/hdb2 /mnt/gentoo
#mkdir /mnt/gentoo/boot
#mount -w -t ext3 /dev/hdb1 /mnt/gentoo/boot
#mount -o loop ~/gentoo-i686-1.2.iso /mnt/iso
#swapon /dev/hdb3

Nyní je čas rozbalit základní filesystem na instalační harddisk. V dokumentaci upozornují na přepínač -p, který zachovává správná práva souborů

#cd /mnt/gentoo
#tar -xvjpf /mnt/iso/stage1-ix86-1.2.tbz2

#mount -o bind /proc /mnt/gentoo/proc
#cp /etc/resolv.conf /mnt/gentoo/etc/resolv.conf
#chroot /mnt/gentoo /bin/bash
# env-update
Regenerating /etc/ld.so.cache

#source /etc/profile

potom jsem napsal podle manuálu příkaz "#emerge sync", který si má stahnout partage balíček, ale jelikož jsme za firewallem, který nepropustí sync, tak operace neproběhla. Po chvilce hledání jsem našel náhradní řešení. Stahnul jsem portage balíček z adresy: http://www.ibiblio.org/pub/Linux/distributions/gentoo/snapshots/portage-20020924.tar.bz2

POZOR: v novém terminálu! jsem provedl:

$cp ~/portage-20020924.tar.bz2 /mnt/gentoo/usr/portage.tar.bz2

POZOR: opět v původním terminálu instalace! jsem pokračoval:

#cd /usr
#tar -xvjpf ./portage.tar.bz2
#rm ./portage.tar.bz2

dál je potřeba nastavit paramery pro kompilaci, takže jsem vyeditoval soubor /etc/make.conf

#nano -w /etc/make.conf

A odkomentoval jsem pouze řádky v následující části:

# Pentium Pro/Pentium II/Pentium III+/Pentium 4/Athlon optimized (but binaries
# will run on any x86 system)
CHOST="i686-pc-linux-gnu"
CFLAGS="-mcpu=i686 -O3 -pipe"
CXXFLAGS="-mcpu=i686 -O3 -pipe"

Nyní nastala pvní fáze kompilace (binutils, gcc, gettext, glibc):

#cd /usr/portage
#scripts/bootstrap.sh

Tato operace podle manuálu trvala na AMD Athlonu 1200MHz okolo dvou hodin, mě trvala 2 hodiny 34 minuty, tak nevím co si mám myslet o výkonu AMD ;o)

#export CONFIG_PROTECT=""
#emerge -p system
#emerge system

Ted nastává druhá kompilace, kde autoři dokumentace doporučují jakousi hru na Playstation2 (ještě že ne Xbox ;o)), ale já jsem si vesele hrál miny :o)). Kompilace mi trvala 1 hodinu a 57 minut.
Další fází je nastavení časové zóny a stažení a kompilace jádra (cca 26MB).

#ln -sf /usr/share/zoneinfo/CET /etc/localtime
#emerge sys-kernel/gentoo-sources

Zde autoři varují, že jejich jádro je záplatované, takže v případě problémů máme použít oficiální jádro Linuse Tovaldse příkazem "#emerge sys-kernel/vanilla-sources".

#cd /usr/src/linux
#make menuconfig

Zde autoři dokumentace upozornují na několik důležitých voleb. Z nich jsem vybral následující (ohledně k mé konfiguraci). Ještě poznamenám, že nejsem žádný hacker jádra, takže pokud mi poradíte úspornější instalaci, nebo případné důležité volby, budu rád.

Filesystems / Quota support
Filesystems / Ext3 journalling file system support
Filesystems / Microsoft Joliet CDROM extensions
Filesystems / /dev file system support
Filesystems / NTFS file system support (read only)

Filesystems / Network file systems / SMB file system support

Filesystems / Native Language Support / Windows CP 1250
Filesystems / Native Language Support / NSL ISO 8859-2

Sound / VIA 82C686 Audio Codec
Sound / VIA 82C686 MIDI

General setup / Power Management support / ACPI Support

Parallel port support / Parallel port support / Support foreign hardware

Blok Devices / Ram disk support

Network Device Support / Ethernet (10 or 100Mbit) / 3COM Cards / 3c590-3c900 series
Network Device Support / Ethernet (10 or 100Mbit) / 3COM Cards / 3c509-3c529-3c579...

Console Drivers / Frame-buffer support / Support for frame buffer devices / nVidia Riva support
Console Drivers / Frame-buffer support / Support for frame buffer devices / VESA VGA graphics console


#make dep && make clean bzImage modules modules_install

Kompilace jádra na mém počítači trvala 15 minut. Příkaz "#mv /boot/bzImage /boot/bzImage.orig" jsem vypustil, protože jsem ještě žádné jádro nainstalované neměl.

#cp /usr/src/linux/arch/i386/boot/bzImage /boot

Nyní nastává instalace log deamona a na výběr máte čtyři. Já jsem zvolil sysklogd.

#emerge app-admin/sysklogd

Dále instalujeme cron deamon a opět máme na výběr tentokrát ze tří. Zvolil jsem vcron.

#emerge sys-apps/vcron
# rc-update add *cron default

Je potřeba také nakonfigurovat /etc/fstab

#nano -w /etc/fstab

Soubor /etc/fstab jsem upravil takto:

# <fs> <mountpoint> <type> <opts> <dump/pass>
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
/dev/hdb1 /boot ext3 noauto,noatime 1 1
/dev/hdb2 / ext3 noatime 0 0
/dev/hdb3 none swap sw 0 0
/dev/cdroms/cdrom0 /mnt/cdrom iso9660 noauto,ro 0 0
proc /proc proc defaults 0 0

Nastavíme heslo pro uživatele root

#passwd
New UNIX password:
Retype new UNIX password:

Nastavíme /etc/hosts

#echo mymachine.mydomain.cz> /etc/hostname

Nastavíme které moduly se mají po startu zavádět. Což je důležité např. u sítové karty

#nano /etc/modules.autoload

zde jsem odkomentoval rádku:

3c59x

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

Nastavíme sít jako napriklad:
iface_eth0="192.168.0.2 broadcast 192.168.0.255 netmask 255.255.255.0"
Nastavíme eth0 jako primární:

#rc-update add net.eth0 default

V souboru /etc/rc.conf nastavíme "CLOCK="local" ".

#nano -w /etc/rc.conf

Nastavil jsem si DMA přístup na oba harddisky.

#nano -w /etc/conf.d/local.start

Pridal následující rádky do souboru:

hdparm -d 1 /dev/hdb
hdparm -d 1 /dev/hda

Poslední důležitou věcí je nastavení boot manageru grub

Přepnul jsem si do mého RedHat Linuxu a změnit /etc/grub.conf následovně:

#pico /etc/grub.conf

default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
password --md5 $1$syIaioK6$xNK22p8AIuu3EtNYmRxjh.
title Red Hat Linux (2.4.18-10)
     root (hd0,0)
     kernel /vmlinuz-2.4.18-10 ro root=/dev/hda2
     initrd /initrd-2.4.18-10.img
title Gentoo Linux
     root (hd1,0)
     kernel /bzImage ro root=/dev/hdb2

Opět se přihlásíme do instalačního terminálu Gentoo Linuxu provedeme poslední krok:

#etc-update
#exit

Tím jsem opět v konzoli RedHat Linuxu. Ještě odpojit Gentoo Linux partitiony a můžeme restartovat.

#cd /
#umount /dev/hdb1
#umount /dev/hdb2
#/sbin/swapoff /dev/hdb3

restart

Poté je již možné instalovat Váš oblíbený software. Doporučuji vždy před instalací nejdříve zkontrolovat závyslosti přepínačen -pretend.

#emerge -pretend software_name

Instalaci provedete příkazem:

#emerge software_name

Konfigurace:
Procesor: Pentium III, 666 Mhz, MB: Microstar, RAM: 2 x 128 MB, 133 Mhz, HDD: Seagate ST31022 9 GB, Seagate ST36421A 6GB, NIC: 3com 3c905C/TX-M, Sound: onboard VT82C686 AC97, Video: Riva TnT2 Ultra, Floppy, ATAPI CD-ROM