Gentoo Logo

1.  Praca w chroot

Opcjonalnie: Wybieranie serwerów lustrzanych

Aby móc szybko ściągać źródła programów, należy wybrać szybki serwer lustrzany. Portage używa serwerów zawartych w zmiennej GENTOO_MIRRORS, która znajduje się w pliku make.conf. Aby wybrać najlepsze serwery, należy wejść na stronę listy serwerów lustrzanych Gentoo i wybrać z nich te, które znajdują się najbliżej lub użyć narzędzia mirrorselect, które potrafi w prosty sposób automatycznie wybrać najlepsze serwery lustrzane.

Listing 1.1: Sposób użycia programu mirrorselect

# mirrorselect -i -o >> /mnt/gentoo/etc/make.conf

Następną ważną sprawą jest ustawienie zmiennej SYNC w pliku make.conf. Zmienna ta wskazuje na serwer rsync, z którego będzie uaktualniane drzewo Portage (kolekcja ebuildów, czyli skryptów które zawierają wszystkie informacje potrzebne do ściągnięcia i zainstalowania programów). Można ręcznie wpisać serwer, którego chcemy używać lub skorzystać z programu mirrorselect:

Listing 1.1: Wybór serwera rsync za pomocą programu mirrorselect

# mirrorselect -i -r -o >> /mnt/gentoo/etc/make.conf

Po konfiguracji plików za pomocą programu mirrorselect należy sprawdzić czy wszystko zostało prawidłowo dopisane do pliku /mnt/gentoo/etc/make.conf.

Uwaga: W przypadku gdy zechcemy ustawić ręcznie serwer SYNC w pliku make.conf należy sprawdzić listę serwerów lustrzanych i wybrać położony ten najbliżej nas. Zalecanym ustawieniem jest wybranie serwera rotacyjnego takiego jak rsync.us.gentoo.org zamiast pojedyńczej lokalizacji. Pomoże to w zbalansowaniu obciążenia i zapewni nam bezpieczeństwo w przypadku awarii konkretnego serwera lustrzanego.

Kopiowanie informacji o DNS

Zanim zmienimy środowisko pracy, musimy wykonać pewną bardzo ważną czynność. Jest nią przekopiowanie ustawień DNS z pliku /etc/resolv.conf do nowego środowiska. Jest to konieczne, by sieć działała także tam. Plik /etc/resolv.conf określa jakie serwery nazw będą używane dla sieci.

Listing 1.1: Kopiowanie informacji o DNS

(Opcja "-L" jest konieczna, sprawia, że nie zostanie skopiowane dowiązanie symboliczne)
# cp -L /etc/resolv.conf /mnt/gentoo/etc/

Montowanie systemów plików /proc i /dev

Następnie przemontowujemy system plików /proc do /mnt/gentoo/proc, aby umożliwić systemowi korzystanie z informacji dostarczanych przez jądro także w środowisku chrootowanym oraz ponownie montujemy system plików /dev.

Listing 1.1: Montowanie /proc i /dev

 # mount -t proc none /mnt/gentoo/proc
 # mount -o bind /dev /mnt/gentoo/dev

Zmiana środowiska

Teraz, gdy wszystkie partycje są już założone, a podstawowe środowisko zainstalowane, nadszedł czas wejścia do niego poprzez chroot. Oznacza to przejście z systemu instalacyjnego (płyty instalacyjnej lub innego medium) do systemu instalowanego (czyli na założone partycje).

Przechodzenie odbywa sie w trzech etapach. Najpierw zamieniamy katalog z / (w systemie instalacyjnym) na /mnt/gentoo (na założonych partycjach) poleceniem chroot. Następnie tworzymy nowe środowisko przy pomocy polecenia env-update, które wyeksportuje nowe zmienne środowiskowe. Ostatecznie wczytujemy te zmienne do pamięci poleceniem source.

Listing 1.1: Zmiana środowiska poprzez chroot

# chroot /mnt/gentoo /bin/bash
# env-update
>> Regenerating /etc/ld.so.cache...
# source /etc/profile
# export PS1="(chroot) $PS1"

Gratulacje! Znajdujemy się wewnątrz nowego systemu Gentoo Linux. Oczywiście do końca jeszcze daleko, przecież zostało jeszcze kilka rozdziałów Podręcznika do przeczytania. :-)

1.  Konfiguracja Portage

Aktualizacja drzewa Portage

Aktualizujemy drzewo Portage za pomocą polecenia emerge --sync.

Listing 1.1: Aktualizowanie drzewa Portage

# emerge --sync
(Jeśli korzysta się z wolnych terminali, takich jak konsola bufora
ramki, należy dodać parametr --quiet dla przyspieszenia całego procesu)
# emerge --sync --quiet

Portage używa protokołu RSYNC do uaktualniania drzewa pakietów. Jeżeli powyższe polecenie zakończy się niepowodzeniem (np. z winy firewalla) używamy polecenia emerge-webrsync, które ściąga i instaluje drzewo Portage przy za pomocą protokołu HTTP.

Jeśli otrzymamy ostrzeżenie, że dostępna jest nowa wersja programu Portage i należy dokonać jego aktualizacji, należy to natychmiast zrobić. Dokonuje się tego poleceniem emerge --oneshot portage.

Wybór odpowiedniego profilu

Najpierw mała definicja.

Profil jest szablonem budowy systemu Gentoo. Nie tylko określa domyślne wartości dla USE, CFLAGS i innych ważnych zmiennych, ale również ogranicza wersje pakietów jakie mogą zostać zainstalowane w systemie. Wszystkie te informacje są konfigurowane przez deweloperów Gentoo.

Poprzednio profil taki był niemodyfikowalny przez użytkownika. Jednak może się nadarzyć taka okoliczność, w której zmiana profilu będzie potrzebna.

Aktualnie używany profil można sprawdzić za pomocą poniższego polecenia:

Listing 1.1: Sprawdzanie profilu systemowego

# eselect profile list

Available profile symlink targets:
  [1]   ${profile} *
  [2]   ${profile}/desktop
  [3]   ${profile}/server

Domyślny profil jest profilem bazującym na systemie z jądrem serii 2.6. Jest to zalecane ustawienie chociaż mamy możliwość wyboru innego profilu.

Istnieją również podprofile desktop oraz server dla niektórych architektur. Wydanie komendy eselect profile list pokaże nam nazwy wszystkich dostępnych profili.

Po obejrzeniu wszystkich profili, które dostępnę są na naszej architekturze, możemy wybrać tę najbardziej nas interesującą:

Listing 1.1: Zmiana profilu

# eselect profile set 2

Uwaga: Podprofil o nazwie developer przeznaczony jest do zadań mających na celu rozwój systemu Gentoo Linux. Nie jest on przeznaczony do konfiguracji ogólnego środowiska dla rozwoju jakiejkolwiek aplikacji.

Konfiguracja zmiennych USE

USE to jedna z najważniejszych zmiennych w Gentoo. Niektóre programy mogą być kompilowane z dodatkową obsługi niektórych funkcji lub bez niej. Na przykład możliwe jest budowanie różnych programów ze wsparciem dla bibliotek gtk lub qt. Inne pakiety możemy z kolei wyposażyć w obsługę SSL bądź też jej pozbawić. Jeszcze inne mogą być kompilowane ze wsparciem bufora ramki (svgalib) zamiast X11 (serwera X).

Większość dystrybucji kompiluje swoje pakiety ze wsparciem dla tak wielu elementów, jak to tylko możliwe, powiększając rozmiar programów i czas ich uruchamiania, nie wspominając o olbrzymiej liczbie zależności. W Gentoo możemy zdecydować, z którymi opcjami dany pakiet powinien być budowany. I to właśnie jest moment, kiedy USE wkracza do gry.

W zmiennych USE definiujemy słowa kluczowe zamieniane następnie na opcje kompilowania. Na przykład dodanie do zmiennej ssl włączy obsługę SSL w programach, które go wykorzystują. -X usunie wsparcie dla serwera X (należy zwrócić uwagę na znak minusa z przodu). Ustawienie gnome gtk -kde -qt4 zaowocuje wsparciem dla GNOME (oraz gtk), ale nie dla KDE (i związanym z nim ściśle qt), znakomicie przygotowując grunt pod GNOME.

Domyślny zestaw flag USE znajduje się w pliku make.defaults wybranego profilu. Wszystkie pliki make.defaults znajdują się w katalogu wskazywanym przez dowiązanie /etc/make.profile oraz w katalogach nadrzędnych. Aktualna konfiguracja USE jest zawsze sumą wszystkich flag ustawionych w plikach make.defaults. Wszystko co umieścimy w pliku /etc/make.conf zostanie dodane do tej zmiennej. Jeśli chcemy coś z niej usunąć wpisujemy wybraną flagę ze znakiem minus na początku. Nie wolno zmieniać plików wewnątrz katalogu /etc/make.profile, zmiany zostaną nadpisane przy następnej aktualizacji drzewa Portage.

Pełny opis USE znajduje się w drugiej części Podręcznika Gentoo, w rozdziale (Flagi USE). Kompletną charakterystykę dostępnych flag USE znajdziemy w pliku /usr/portage/profiles/use.desc.

Listing 1.1: Przegląd dostępnych flag USE

# less /usr/portage/profiles/use.desc
(Używamy strzałek, aby przewijać plik. Aby wyjść naciskamy 'q')

Jako przykład przedstawimy flagi USE dla systemu bazującego na KDE ze wsparciem dla DVD, ALSA i nagrywania CD:

Listing 1.1: Edytowanie /etc/make.conf

# nano -w /etc/make.conf

Listing 1.1: Ustawienia USE

USE="-gtk -gnome qt4 kde dvd alsa cdr"

Opcjonalnie: Lokalizacje GLIBC

Zwykle w systemie używa się tylko jednej, góra dwóch lokalizacji. Można je wybrać w pliku /etc/locale.gen.

Listing 1.1: Otwieranie pliku /etc/locale.gen

# nano -w /etc/locale.gen

Poniższy przykład to lokalizacje polskie oraz angielskie (Ameryka) z obsługą kodowania znaków (jak UTF-8).

Listing 1.1: Ustawianie lokalizacji

en_US ISO-8859-1
en_US.UTF-8 UTF-8
pl_PL ISO-8859-2
pl_PL.UTF-8 UTF-8

Następnie należy uruchomić polecenie locale-gen, które utworzy wszystkie lokalizacje wybrane w pliku /etc/locale.gen.

Kolejny etap instalacji to (Konfigurowanie jądra).

Zaktualizowano 13 czerwca 2010

Oryginalna wersja tego dokumentu została po raz ostatni zaktualizowana 6 maja 2012. Jeśli chcesz pomóc w aktualizacji tego dokumentu do najnowszej wersji, skontaktuj się z Łukaszem Damentko, koordynatorem polskiego projektu tłumaczeń dokumentacji Gentoo.

Podsumowanie: Przed przystąpieniem do instalacji z pliku stage3 trzeba nagrać system podstawowy.

Donate to support our development efforts.

Copyright 2001-2012 Gentoo Foundation, Inc. Questions, Comments? Contact us.