Notice: Use of undefined constant d - assumed 'd' in /home/admin/domains/katolik.pl/public_html/komputer/showa.php on line 2

Notice: Undefined variable: menu in /home/admin/domains/katolik.pl/public_html/komputer/menu.inc on line 23

Notice: Undefined variable: szczegoly in /home/admin/domains/katolik.pl/public_html/komputer/showa.inc on line 28
 

   Linuxowe
 powrót
Jak zainstalować najwydajniejszą odmianę Pingwina
 
Skrojony na miarę
 
Dystrybucje Linuksa często narzucają zestaw aplikacji, które są kopiowane na dysk twardy peceta podczas instalacji. Jeśli chciałbyś mieć pełną kontrolę nad tym procesem, warto, żebyś zapoznał się z Gentoo.
 
Najpopularniejsze odmiany Linuksa, czyli np. Mandrake, Fedora Core, Debian czy też SuSE, zawierają kompletne środowiska graficzne KDE i GNOME wraz z odpowiednimi bibliotekami oraz zestawem aplikacji dodatkowych. Niewątpliwie instalacja tego typu oprogramowania jest niezwykle prosta i wymaga od użytkownika jedynie podjęcia decyzji co do rodzaju programów, z jakich będzie on w przyszłości korzystał. Zazwyczaj mamy do czynienia z pogrupowaniem software'u np. na Multimedia, Gry i Biuro. Takie posegregowanie narzędzi linuksowych pozwala na szybkie dostosowanie systemu do własnych potrzeb.
 
Punkty montowania systemów plików - /etc/fstab
Dystrybucje linuksowe wymagają informacji o systemach plików, z jakich będziemy korzystać. Wszystkie wpisy muszą być w formacie:
 
#Partycja z obszarem wymiany
/dev/hda1
noneswapsw0 0
#Główny system plików /
/dev/hda2 /
/reiserfs noatime 0 0
#Pierwszy napęd CD-ROM
/dev/cdroms/cdrom0
/mnt.cdromautonoauto0 0
#Napęd dyskietek 3,5 cala
/dev/fd0
/mnt/floppyautonoauto 0 0
 
  
Niestety, w ramach jednej grupy programów znajdują się aplikacje dublujące się pod względem funkcjonalności - np. w sekcji Biuro możemy odnaleźć zarówno pakiet OpenOffice, jak i KOffice. Żeby tego uniknąć, należy skorzystać z opcji indywidualnego doboru pakietów, co wymaga od użytkownika mozolnego wyboru wielu składników. Taka instalacja oprogramowania nie jest już prosta i mało kto się jej podejmuje. Zazwyczaj zaznaczamy całe grupy aplikacji, np. KDE, Biuro, Multimedia, a następnie kładziemy przysłowiową cegłę na [Enterze].
 
Trzeba też zauważyć, że w popularnych dystrybucjach instalowane programy nie wykorzystują w pełni możliwości naszego komputera. Często kod aplikacji nie jest optymalizowany do korzystania z instrukcji MMX, SSE czy też 3DNow!. Zazwyczaj jest on tak kompilowany, żeby był zgodny z architekturą i386, co zapewnia wprawdzie maksymalną kompatybilność, ale już niekoniecznie wydajność. 
 
Całkiem inny Pingwin
Opisane wcześniej wady popularnych dystrybucji związane z brakiem pełnej kontroli nad instalowanym systemem oraz jakością kodu przyczyniły się do powstania jedynego w swoim rodzaju Linuksa - Gentoo. Sposób działania tej odmiany Pingwina jest zupełnie odmienna niż w wypadku Mandrake czy SuSE, których twórcy konkurują bezpośrednio z Okienkami Microsoftu w łatwości instalacji oraz zarządzania.
 
Gentoo jest wolny od tego rodzaju usprawnień, co nie znaczy, że zrozumienie zasad jego działania przekracza możliwości przeciętnego użytkownika peceta. Niewątpliwie pomocna tutaj będzie doskonała dokumentacja, opisująca niemal każdy aspekt pracy z tym Linuksem.
 
W odróżnieniu od innych dystrybucji Gentoo nie musi używać binarnych pakietów z oprogramowaniem, lecz korzysta bezpośrednio z kodu źródłowego. Nie znaczy to, że użytkownik musi samodzielnie pobierać i kompilować kod wszystkich aplikacji. W tej odmianie Pingwina znajdziemy tzw. system portage (przypomina on system portów z FreeBSD), który zarządza instalowaniem oprogramowania na naszym komputerze. W Gentoo instalacja aplikacji jest wspomagana przez tzw. ebuildy. Są to skrypty zawierające opis wykorzystywanych przez program bibliotek i innych zależności, często automatycznie integrujące dodatkowe łatki (patche) oraz zawierające też np. instrukcje optymalizacji kodu.
 
Portage pozwala na sprawne zarządzanie ebuildami programów, dbając przy tym w pełni automatycznie o zależności pomiędzy nimi. Dzięki takiemu systemowi niezwykle proste jest również uaktualnianie OS-u. Fakt, że każdy program w Gentoo jest kompilowany ze źródeł, sprawia, iż możemy niemal dowolnie optymalizować aplikację pod architekturę naszego procesora. Na przykład jeśli mamy w komputerze jednostkę centralną Intel Pentium III, wpisujemy w pliku konfiguracyjnym odpowiednie flagi dla kompilatora. Tego typu CPU nie jest obecnie demonem prędkości, jednak generowany przez kompilator kod binarny aplikacji będzie korzystał ze specyficznych instrukcji, np. MMX, SSE, przez co będzie szybciej wykonywany, niż gdybyśmy korzystali z programu skompilowanego dla architektury i386.
 
Trzeba zauważyć, że Gentoo nie jest wolne od wad, gdyż proces kompilacji zabiera sporo czasu (ile - zależy to od wydajności naszego komputera). Najistotniejszym wymaganiem będzie jednak dostęp do Internetu. Najwygodniej korzysta się z Gentoo, jeśli system portage może odpo wiednie dane pobierać bezpośrednio z Sieci.
 
"Stawiamy" Pingwina
Pełna instalacja Gentoo przebiega inaczej niż typowej dystrybucji Linuksa. Niewątpliwie jest to dość skomplikowany proces, nad którym musimy sami sprawować kontrolę. Przy okazji możemy od podstaw poznać zasady działania systemu spod znaku Pingwina. W popularnym Mandrake'u na sformatowanej partycji ląduje ogromna liczba programów i bibliotek. W Gentoo z kolei do "czystego" systemu dokładamy wybrane aplikacje tylko wraz z niezbędnymi komponentami. Oczywiście ten podstawowy OS musimy najpierw odpowiednio przygotować.
 
Po pierwsze trzeba odnaleźć obraz płyty instalacyjnej, tzw. LiveCD. Stosowny plik umieszczono na polskim mirrorze Gentoo - http://src.gentoo.pl, (lub na płycie CD dołączonej do tego wydania CHIP-a). Pobieramy stamtąd zbiór install-x86-minimal-2004.3.iso, a następnie nagrywamy go dowolnym programem do wypalania na nośniku CD-R/RW. Za pomocą tak przygotowanej płyty uruchamiamy komputer. Krążek LiveCD zawiera kilka rodzajów prekonfigurowanych jąder Linuksa dla systemów z SMP (obsługa wieloprocesorowości oraz technologii HT) oraz bez tych funkcji. Wyboru wersji kernela dokonujemy, wpisując po znaku zachęty (boot:) jego nazwę, np. gentoo-nofb. W ten sposób uruchomimy bez obsługi SMP w trybie tekstowym. Podczas startu z płyty instalacyjnej zostanie wykryty sprzęt zainstalowany w naszym komputerze, w tym także karta sieciowa.
 
Jeśli korzystamy z DHCP, powinniśmy od razu mieć dostęp do Sieci. Bardzo rzadko może być konieczne manualne załadowanie sterownika "sieciówki" poleceniem modprobe nazwa_modułu. Pozyskanie adresu z serwera DHCP inicjujemy komendą dhcpcd eth0. Jeśli naszą konfigurację sieci (adres IP, maska itd.) musimy wprowadzić ręcznie, przydatny będzie skrypt net-setup eth0. Po jego uruchomieniu i wprowadzeniu odpowiednich danych uzyskamy dostęp do Internetu. 
 
Na kawałki
Kolejnym krokiem będzie podział dysku na partycje. Do tego celu posłużymy się poleceniem fdisk. Jeśli w komputerze mamy zainstalowane np. cztery urządzenia IDE, to będą one miały identyfikatory /dev/hda - /dev/hdd. Jeśli więc chcemy instalować Gentoo na pierwszym dysku twardym, wydajemy polecenie fdisk /dev/hda. Komenda p (print) pozwoli nam wyświetlić zawartość dysku, d służy do usuwania partycji. Gdy na "twardzielu" nie ma żadnych danych, warto utworzyć przynajmniej dwa obszary - jeden na przestrzeń wymiany (swap), a drugi na system plików (/). Nową partycję zakładamy poleceniem n (new), podajemy jej typ p (primary), a następnie numer (1). Klawiszem [Enter] zatwierdzamy proponowany początek obszaru, a następnie podajemy wartość +512MB. Konieczna będzie jeszcze zmiana typu partycji (t) na 83, aby zarezerwowane 512 MB przestrzeni przeznaczyć na pamięć wirtualną. Główny system plików założymy, wydając najpierw komendę n, następnie p oraz podając kolejny numer, czyli 2. Program zapyta o początek i koniec tej partycji. Wystarczy jednak zatwierdzić klawiszem [Enter] proponowane wartości, aby zająć całą pozostałą wolną przestrzeń. Zmiany zapisujemy poleceniem w i opuszczamy program fdisk (q).
 
Tak przygotowane partycje sformatujemy. W przypadku pierwszej wydajemy komendę mkswap /dev/hda1. W wypadku drugiej musimy się zdecydować na system plików. Domyślnym w Linuksie jest ext3 - jeśli chcemy z niego korzystać, wystarczy użyć polecenia mkfs.ext3 /dev/hda2. Gentoo pozwala jednak używać znacznie wydajniejszych systemów plików, takich jak xfs lub reiserfs. W przypadku tego ostatniego formatowanie przeprowadzamy za pomocą prostej komendy mkfs.reiserfs /dev/hda2.
 
Uaktywniamy teraz obszar wymiany, wpisując swapon /dev/hda1. Partycję, na której zainstalujemy Linuksa, zamontujemy w katalogu /mnt/gentoo, wydając polecenie mount /dev/hda2 /mnt/gentoo. Następnie zakładamy tam katalog proc - mkdir /mnt/gentoo/proc. Proc jest pseudosystemem plików niezbędnym do działania Linuksa, więc montujemy go poleceniem mount -t proc none /mnt/gentoo/proc. Do uruchomienia środowiska z nowo utworzonej partycji niezbędne będzie wgranie tam "szkieletu" Gentoo. Taki minimalny system musimy pobrać z Sieci. W tym celu przechodzimy do katalogu /mnt/gentoo, a następnie odwiedzamy mirror Gentoo (polecenie links2 http://src.gentoo.pl). Kopiujemy stamtąd zbiór stage1-x86-2004.3.tar.bz2, a następnie rozpakowujemy go komendą tar -xvjpf stage1-x86-2004.3.tar.bz2.
 
Oprócz "szkieletu" Linuksa potrzebujemy jeszcze aktualnej wersji portage'a - musimy pobrać z katalogu snapshots najnowszy plik portage-2004*.tar.bz2. Rozpakowujemy go poleceniem tar -xvjf portage-2004*.tar.bz2 -C /mnt/gentoo/usr/. 
 
Zmiana korzenia
Gdy na naszej partycji umieścimy podstawowe pliki Gentoo, przechodzimy do naszego nowo tworzonego systemu poleceniem chroot /mnt/gentoo/ /bin/bash, a następnie uaktualniamy konfigurację środowiska komendami env-update oraz source /etc/profile. Skonfigurujemy teraz kilka istotnych dla działania Gentoo zbiorów. Systemy plików, z których będziemy korzystać, musimy opisać w pliku /etc/fstab - wydajemy komendę nano -w /etc/fstab. Do wystartowania systemu niezbędne jest wskazanie głównego systemu plików. Zakładając, że podzieliśmy dysk na partycje w taki sposób, jak opisano wcześniej, to konfiguracja będzie wyglądała tak jak podano w ramce "Punkty montowania...".
 
Drugim plikiem istotnym dla działania Gentoo jest /etc/make.conf, który definiuje opcje kompilacji pakietów oraz profilowanie ich pod kątem np. środowiska graficznego KDE. Prezentujemy poniżej przykładową zawartość tego pliku. Ustawiamy opcje dla kompilatora C tak, aby generował kod zoptymalizowany pod Pentium III:
CFLAGS="-O3 -march=pentium3 -pipe
    -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
#Opcje kompilacji w C++, takie same #jak dla zwykłego C
CXXFLAGS="${CFLAGS}"
#Liczba wątków kompilacji
MAKEOPTS="-j2"
 
Flagi zmiennej USE profilują środowisko Gentoo. Poniższy wpis sprawi, że kompilowane aplikacje będą integrowały się z KDE (nie z GNOME'em). Dodatkowo programy będą tak budowane, żeby używały tylko systemu dźwięku ALSA, ale nie OSS-a. W dokumentacji systemu znajdziemy opis wszystkimi flag.
USE="kde qt -gnome -gtk alsa -oss"
 
Następnie podajemy listę serwerów zwierciadlanych, z których będzie korzystał portage:
GENTOO_MIRRORS="http://src.gentoo.pl http://gentoo.osuosl.org"
 
Jeśli zechcemy korzystać z najświeższych, nierzadko eksperymentalnych wersji aplikacji (co nie jest niezalecane), dopisujemy:
ACCEPT_KEYWORD=~x86
 
Gdy chcemy, aby Gentoo kompilował aplikację z obsługą języka polskiego, warto utworzyć plik /etc/env.d/02locale. Za pomocą edytora nano wpisujemy do niego:
LC_ALL="pl_PL"
LANG="pl_PL"
LINGUAS="pl"
LANGUAGE=48
 
Uzupełnieniem polonizacji Gentoo będzie modyfikacja jeszcze jednego pliku konfiguracyjnego - rc.conf. Musimy w nim zmienić wartość dla kilku zmiennych na:
KEYMAP="pl2"
CONSOLEFONT="lat2-16"
CONSOLETRANSLATION="8859-2_to_uni"
 
Warto w tym miejscu od razu ustawić zegar systemowy: CLOCK="local". Jeśli w przyszłości będziemy korzystali z X Window, możemy określić, jakiego menedżera logowania będziemy używali, np. DISPLAYMANAGER="kdm".
 
Ostry start
Po przeprowadzeniu podstawowych czynności konfiguracyjnych nadszedł czas na inicjację procedury budującej system. W tym celu wydajemy następujące polecenia:
cd /usr/portage
scripts/bootstrap.sh
emerge system
 
Rozpocznie się długotrwała procedura bootstrap'u, w trakcie której portage przekompiluje podstawowy system Gentoo zgodnie z ustawieniami z pliku make.conf. W zależności od wydajności komputera inicjacja systemu może zająć od kilku do kilkunastu godzin. 
 
Konfiguracja systemu dźwiękowego ALSA
Jeśli do przygotowania jądra 2.6 w Gentoo korzystaliśmy z polecenia genkernel, wszystkie moduły niezbędne do działania ALSY 
powinny być zainstalowane w systemie. Użytkownicy jądra z serii 2.4, żeby skorzystać z tego podsystemu dźwiękowego, muszą wgrać sterowniki ręcznie (emerge alsa-driver). Poza sterownikami będą przydatne jeszcze narzędzia ALSY, które dodajemy wpisując emerge alsa-utils. Polecenie emerge alsa-oss sprawi, że w naszej wersji Gentoo urządzenia dźwiękowe ALSY będą współpracowały ze starszymi programami, które korzystają ze starego systemu audio Linuksa - OSS-a. Ostatnim krokiem instalacji będzie dopisanie następujących informacji do pliku /etc/modules.d/alsa:
alias snd-card-0 snd-via82xx
# snd-via82xx to nazwa sterownika do # karty dźwiękowej
alias sound-slot-0 snd-card-0
alias /dev/mixer snd-mixer-oss
alias /dev/dsp snd-pcm-oss
alias /dev/midi snd-seq-oss
Zmiany w konfiguracji modułów zapisujemy poleceniem modules-update, a usługę ALSY uaktywni komenda rc-update add alsasound 
boot. Po restarcie ustawiamy poziom dźwięku w mikserze karty np. poleceniem amixer set Master 100 unmute oraz amixer set PCM 100 unmute.
Jeśli nasza karta ma syntezator MIDI, musimy wgrać do niej tzw. soundfonty. Dla karty muzycznej SBLive będą to pliki
8MBGMSFX.SF2 lub CT4GMSFX.SF2. Konieczne będzie też zainstalowanie programu do ładowania próbek (emerge awesfx). Z kolei uaktywnienia podsystemu MIDI dokonamy przy użyciu polecenia asfxload /usr/share/sfbank/8MBGMSFX.SF2. Niestety, wiele prostych kart dźwiękowych obsługuje standard MIDI w Windows przy użyciu programowych syntezatorów. Na szczęście pod Linuksem też jest dostępne tego typu oprogramowanie - Timidity. Instalacja oraz konfiguracja takiej aplikacji sprowadza się do wydania dwóch poleceń:
emerge timidity++ timidity-eawpatches
rc-update add timidity default.
 
 
Nowe jajko
Gdy zakończy się procedura budowania systemu, jesteśmy już niemal na końcu całego procesu instalacji Gentoo. Nasza dystrybucja potrzebuje jednak jeszcze jądra oraz bootloadera. Do pracy z tą odmianą Linuksa możemy używać różnych wersji kernela - od 2.4 po najnowsze 2.6. Jeśli chcemy poznać aktualnie dostępne odmiany jądra, wydajemy polecenie emerge -s sources. Osobiście polecam korzystanie z najnowszego kernela 2.6 z patchami Gentoo. Aby pobrać źródła, wydajemy polecenie emerge gentoo-dev-sources. Portage skopiuje pliki do katalogu /usr/src/linux, gdzie możemy ręcznie skonfigurować (make menuconfig) oraz przekompilować jądro (make).
 
Instalacji jądra w systemie dokonujemy poleceniem make install, a jego modułów - make modules_install. Możliwe jest także w pełni automatyczne wygenerowanie kernela dla naszego systemu przy użyciu programu genkernel. Jego instalację przeprowadzamy, wydając polecenie emerge genkernel. Następnie uruchamiamy proces generowania jądra - genkernel all. Po tym zabiegu w katalogu /boot odnajdziemy pliki kernela, a w /lib/modules/ moduły jądra. Do automatycznego ładowania tych ostatnich przydatnym dodatkiem jest usługa hotplug wykrywająca komponenty w naszym pececie. Żeby ją zainstalować, wydajemy polecenie emerge hotplug. Dodanie tego programu do listy demonów systemowych nastąpi po wpisaniu komendyrc-update add hotplug default.
 
Żeby wystartował
Ostatnim krokiem będzie zainstalowanie w systemie programu ładującego, tzw. bootloadera. W Gentoo możemy korzystać zarówno z LILO, jak i z GRUB-a. Jeśli chcemy używać tego pierwszego, wystarczy, że go zainstalujemy poprzez wydanie polecenia emerge lilo. Następnie musimy utworzyć plik konfiguracyjny wpisując nano -w /etc/lilo.conf. W przypadku gdy plik z jądrem nazywa się vmlinuz, a główny system plików znajduje się na partycji /dev/hda2, zbiór dla LILO będzie zawierał wpisy: 
#Instalujemy LILO w MBR pierwszego #dysku IDE
boot=/dev/hda
#Czas, zanim uruchomimy system
timeout=30
#Domyślny system
default=gentoo
 
#Opcje dla jądra przygotowanego #samodzielnie
#nazwa pliku z jądrem
image=/boot/vmlinuz
label=gentoo #nazwa
read-only
root=/dev/hda2 #partycja z Gentoo
 
#Opcje dla jądra wygenerowanego #za pomocą narzędzia genkernel
image=/boot/vmlinuz_genkernel
label=gentoo-genkernel
read-only
root=/dev/ram0
append="init=/linuxrc ramdisk=8192
real_root=/dev/hda2"
initrd=/boot/initrd-genkernel
 
#Załadowanie Windows XP #z pierwszej partycji drugiego #dysku twardego
other=/dev/hdb1
label=windows
 
Po przygotowaniu pliku konfiguracyjnego instalujemy LILO poleceniem lilo. Aby wgrać GRUB-a, wystarczy wydać komendę emerge grub. Następnie tworzymy plik /boot/grub/grub.conf zawierający wpisy:
#uruchamiamy pierwszy w kolejności system
default 0
#po upływie 30 sekund
timeout 30
#wyświetlamy efektowny obrazek z katalogu /boot/#grub/ znajdujący się na drugiej partycji,
#pierwszego dysku twardego. GRUB numeruje partycje #i dyski od zera (0), a nie od jedynki (1) jak LILO.
splashimage=(hd0,1)/boot/grub/splash.xpm.gz
 
#Jeśli samodzielnie kompilowaliśmy jądro
title=Gentoo Linux
root(hd0,1)
kernel /boot/vmlinuz root=/dev/hda2
 
#Jeśli korzystaliśmy z genkernel
title=Gentoo Linux genkernel
root (hd0,1)
kernel /boot/vmlinuz-genkernel root=/dev/ram0 init=/linuxrc ramdisk=8192 real_root=/dev/hda2
initrd /initrd-genkernel
 
#Załadowanie Windows XP z drugiego dysku twardego
title=Windows XP
root (hd1,0)
makeactive
chainloader +1
 
Aby wgrać GRUB-a do MBR-a naszego dysku twardego, wpisujemy komendę cp /proc/mounts /etc/mtab, a następnie grub. Później podajemy komendy:
#Określamy, gdzie jest partycja z jądrem
grub> root (hd0,1)
#Instalujemy GRUB-a w MBR pierwszego dysku
grub> setup (hd0)
grub> quit #wychodzimy z powłoki 
 
Ostatnie szlify
Aby ukończyć konfigurację systemu, należy ustawić nazwę naszego komputera w sieci. Wydajemy zatem polecenia:
echo nazwa_komputera > /etc/hostname
echo nazwa_domeny > /etc/dnsdomainname
rc-update add domainname default
 
Konfiguracji karty sieciowej dokonamy, edytując plik /etc/conf.d/net. Jeśli korzystamy z serwera DHCP, to wpisujemy iface_eth0="dhcp". W wypadku ręcznej konfiguracji musimy podać wszystkie parametry w postaci:
iface_eth0=" broadcast netmask "
gateway="eth0/
 
Interfejs eth0 będzie uruchamiany automatycznie przy starcie systemu, jeśli wpiszemy komendę - rc-update add net.eth0 default. W wypadku korzystania z serwera DHCP konieczne będzie jeszcze zainstalowanie w systemie klienta tej usługi - emerge dhcpcd.
 
Na koniec warto dodać do naszego Linuksa typowe uniksowe usługi, takie jak cron (uruchamiający programy o zadanym czasie) czy syslog (obsługa dzienników zdarzeń). Gentoo oferuje kilka odmian tego typu aplikacji. Osobiście polecam zainstalowanie domyślnych narzędzi dla tej dystrybucji, czyli metaloga i vixie-crona. Instalacji wspomnianych usług dokonamy, wydając następujące polecenia:
emerge metalog
rc-update add metalog default
emerge vixie-cron
rc-update add vixie-cron default
 
Dodatkowo przydatna będzie usługa indeksująca zbiory w lokalnym systemie plików - instalujemy ją komendą emerge slocate. Dzięki temu narzędziu będziemy mogli szybko wyszukiwać zbiory za pomocą polecenia locate nazwa_pliku. Aktualizację bazy
slocate wymusimy, wpisując w konsoli updatedb.
 
Ponieważ w opisywanej przykładowej instalacji Gentoo zastosowaliśmy system plików reiserfs, konieczne będzie dodanie do naszej dystrybucji narzędzi do ewentualnej jego naprawy. W tym celu wydajemy polecenie emerge reiserfsprogs.
 
Ostatecznie musimy jeszcze ustawić hasło dla administratora - passwd root. Warto jednak pamiętać, żeby do normalnej pracy nie używać konta nadzorcy systemu. Dlatego stworzymy nowe konto, używając polecenia useradd -m -G users, wheel, audio, cdrom, floppy -s /bin/bash jasiu. Komenda ta dodaje użytkownika o identyfikatorze jasiu, należącego do grupy zwykłych użytkowników (users), mogących korzystać z uprawnień administracyjnych, tzw.root (wheel), mających dostęp do urządzeń dźwiękowych (audio), który może zamontować nośnik w stacji dyskietek i napędzie CD/DVD (floppy, cdrom). Powłoką dla jasia będzie /bin/bash. Wreszcie po wykonaniu tych wszystkich operacji możemy uruchomić ponownie komputer, aby poznać prawdziwą moc Gentoo. 
 
Instalacja X-org
Do poprawnego działania środowiska graficznego niezbędne będzie skonfigurowanie systemu X Window. Gentoo wykorzystuje odmianę X11 Xorg. Jeśli jeszcze nie skompilowaliśmy X-ów, piszemy emerge xorg-x11. Warto doinstalować także narzędzie wykrywające przez mechanizm DDC parametry naszego monitora (emerge ddcxinfo-knoppix). Następnie możemy przeprowadzić niemal automatyczną detekcję karty graficznej poleceniem Xorg --configure. Wygenerowany zostanie plik konfiguracyjny xorg.conf.new. W celu przetestowania jego działania uruchamiamy X --config /root/xorg.conf.new. Na ekranie powinniśmy zobaczyć sesję X-ów. Zakończymy ją, naciskając sekwencję klawiszy [Ctrl]+[Alt]+[Backspace].
 
Warto teraz dostroić naszą konfigurację. Przekopiujmy wygenerowany plik, tak żeby był dostępny jako domyślne ustawienie (cp /root/xorg.conf.new /etc/X11/xorg.conf). Dostosujemy też domyślną rozdzielczość oraz głębię kolorów wyświetlacza. Wyszukujemy następującą sekcję:
Section "Screen"
Identifier "Default Screen"
Device "S3 Inc. ProSavage KN133 [Twister K]"
Monitor "Generic Monitor"
#Ustawiamy domyślną głębię na 24 bpp
DefaultDepth 24
# Ustawiamy rozdzielczości
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
 
Ustawienie polskiej klawiatury wymaga zmiany w sekcji InputDevice jednej opcji - Option "XkbLayout" "pl". Zmiany konfiguracji myszki dokonujemy natomiast w innej części pliku:
Section "InputDevice"
Identifier "Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/mouse"
#Można ustawić protkół jako Auto
Option "Protocol" "IMPS/2"
#Jeśli nasza myszka ma rolkę, to #dopisujemy
Option "ZAxisMapping" "4 5"
EndSection
 
Po zapisaniu pliku konfiguracyjnego warto przetestować ustawienia, wydając polecenie startx. Aby naszym domyślnym środowiskiem graficznym było KDE, wydajemy najpierw polecenie echo startkde /home/jasiu/.xinitrc. W przypadku gdy mamy kartę graficzną z chipem nVidii, to aby skorzystać z akceleracji 3D, musimy zainstalować sterowniki producenta - emerge nvidia-kernel nvidia-glx nvidia-settings. W pliku xorg.conf dodajemy w sekcji "Module" wpis Load "glx" oraz usuwamy Load "dri", a w "Driver" zamieniamy ciąg "nv" na "nvidia".

Gołe Gentoo
Wreszcie przebrnęliśmy przez długi i dość skomplikowany proces instalacji naszej dystrybucji. W obecnej postaci Gentoo jest gotowy do właściwego dostosowania do naszych potrzeb. System zawiera jedynie podstawowe narzędzia - kompilator gcc, portage oraz kilka usług systemowych. Na bazie tej skromnej konfiguracji możemy teraz zainstalować np. serwer WWW (emerge apache) lub środowisko graficzne KDE (emerge kde). Warto zauważyć w tym miejscu ogromną siłę Gentoo. Instalacja KDE wiąże się nie tylko z zainstalowaniem pakietów składających się na to środowisko. Wymagane będą także inne komponenty, takie jak: X Window, biblioteka QT i wiele innych. Nie musimy się jednak martwić o ich wcześniejsze zainstalowanie, gdyż portage zadba o to, aby zgodnie z ustawieniami USE z pliku make.conf wszystkie komponenty znalazły się w naszej dystrybucji. W przypadku tak rozbudowanego środowiska jak KDE lista zależności pomiędzy pakietami jest dość duża - łatwo się o tym przekonać, wpisując polecenie emerge -p kde. Portage wyświetli długą listę wszystkich aplikacji i bibliotek, jakie zostaną zainstalowane w systemie. Zanim jednak rozpoczniemy instalowanie nowych programów, warto zadbać o to, aby portage miał jak najświeższą listę dostępnych w Gentoo aplikacji. Uzupełnienia zawartości lokalnej bazy pakietów dokonamy komendą emerge --sync lub w przypadku problemów z działaniem protokołu rsync - emerge-webrsync. Sama aktualizacja całego systemu polega na wydaniu polecenia emerge -u world. W praktyce warto korzystać z tzw. głębokiej aktualizacji emerge -uD world. Listę pakietów, które zostaną skompilowane przez portage, otrzymamy po wydaniu komendy emerge -puD world. Dopiero gdy Gentoo zawiera najświeższą bazę dostępnych pakietów, uruchamiamy kompilację, np. środowiska KDE (emerge kde) lub GNOME-a, wpisując emerge gnome.
 
Warto zaznaczyć, że równie proste będzie instalowanie jakichkolwiek innych programów. Przykładowo: skompilowanie doskonałego odtwarzacza multimedialnego kaffeine sprowadzi się do wydania polecenia emerge kaffeine. Podobnie łatwe będzie dodanie popularnego klona Norton Commandera (emerge mc) czy też odpowiednika Total Commandera dla KDE - Krusadera (emerge
krusader).
 
Listę wszystkich ebuildów, na bazie których system portage buduje aplikacje, odnajdziemy w katalogu /usr/portage. Jeśli używamy tzw. stabilnej linii rozwojowej Gentoo, to nie będziemy mogli korzystać ze wszystkich ebuildów. Nic nie stoi na przeszkodzie, żeby kompilować zawarte w portage testowe wersje programów. Zainteresowanych odsyłam do ramki powyżej oraz do doskonałej dokumentacji (warto wspomnieć o forach internetowych, pomocnych zarówno początkującym, jak i zaawansowanym użytkownikom).
 
Proces instalacji Gentoo i kompilacji programów dla niego może zająć sporo czasu. Moim zdaniem warto go poświęcić. Dzięki tej dystrybucji można poznać wiele tajników Pingwina. No i, co najważniejsze, będziemy też mieli najszybszą na świecie i najbardziej dostosowaną do naszych potrzeb dystrybucję Linuksa. 
 
Portage dla zaawansowanych
System zarządzania pakietami w Gentoo (portage) umożliwia sprawne instalowanie oprogramowania. Jego dość ciekawą cechą jest możliwość korzystania zarówno z programów w wersjach stabilnych, jak i z najnowszych, czasem wręcz eksperymentalnych. Używanie najświeższych i najbardziej aktualnych aplikacji jest utrudnione w większości typowych dystrybucji Linuksa choćby z tego powodu, że rozwojowe wersje programów są często jedynie dostępne w formie plików źródłowych, które wymagają skompilowania do postaci binarnej. Naturalnie domyślnie zainstalowane Gentoo będzie zawierało tylko stabilne edycje software'u. Jeśli jednak w portage'u znajduje się odpowiedni ebuild, swobodnie skorzystamy z najbardziej aktualnego wydania aplikacji. Wystarczy, że zastosujemy tutaj z tzw. testowej linii rozwojowej Gentoo. Możemy na nią "przestawić" nawet całą dystrybucję dzięki zmiennej ACCEPT_KEYWORDS=~x86 w pliku /etc/make.conf. Jeśli chcemy mieć stabilną podstawę systemu, a zależy nam na najnowszej wersji konkretnej aplikacji, wystarczy, że dopiszemy jej nazwę do pliku /etc/portage/package.keywords. Na przykład dla najbardziej aktualnej wersji programu gnumeric musimy dopisać: app-offce/gnumeric ~x86. Jeśli zależy nam na konkretnej wersji tej aplikacji, możemy, używając operatorów (=,<,>), wpisać np.: =app-office/gnumeric-1.2.3.
 
Niektóre aplikacje w portage'u są tak "świeże", że nawet nie zostały przetestowane albo wręcz znane są ich poważne błędy. W takim wypadku programy te zostają zamaskowane, aby portage z nich nie korzystał. Jeśli jednak zależy nam np. na testowym wydaniu Skype'a dla Linuksa (obecnie najnowsza wersja to 0.92), musimy zlikwidować maskę. W tym celu wpisujemy w pliku /etc/portage/package.unmask wyrażenie >=net-im/skype-0.92*.
 
Co jakiś czas dostępne są aktualizacje dla pakietów takich jak kompilator gcc czy podstawowa biblioteka glibc. Jeśli mamy w systemie zainstalowany np. kompilator gcc z serii 3.3 oraz 3.4, w praktyce w niczym to nie przeszkadza. Jednak wszystkie programy, które po takiej aktualizacji będziemy kompilować, zostaną przetworzone przez nowszą wersję gcc. Zainstalowane wcześniej biblioteki, przygotowane z użyciem gcc 3.3, mogą czasami sprawiać problemy aplikacjom skompilowanym przez gcc 3.4. Dlatego po aktualizacji tak podstawowego pakietu najlepiej byłoby przebudować cały system. Przy takiej okazji możemy się też zastanowić nad zwiększeniem poziomu optymalizacji dla Gnu C, np. zamiast opcji -O2 zastosujemy -O3. Rekompilacji całego systemu wraz ze wszystkimi składnikami, z użyciem aktualnie ustawionego kompilatora z nowymi flagami, dokonamy, wydając komendę emerge -e world. Naturalnie operacja taka potrwa bardzo długo, jednak dzięki "agresywniejszym" optymalizacjom możemy sporo zyskać na szybkości generowanego kodu. W przypadku gdyby któraś z aplikacji nie chciała się kompilować z nowymi ustawieniami, pominiemy jej rekompilację poleceniem emerge --resume --skipfirst.
 
Krzysztof Sokołowski
 
Artykuł pochodzi
z CHIP-a nr 01/2005

 

 

Kontakt i o nas | Wspomóż nas | Reklama | Księga Gości

Copyright (C) Salwatorianie 2000-2011