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.
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-2Sound / VIA 82C686 Audio Codec
Sound / VIA 82C686 MIDIGeneral 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/hdb3restart
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