[ << ]
[ < ]
[ Powrót ]
[ > ]
[ >> ]
2. Konfigurowanie Portage
Spis treści:
2.a. Konfiguracja Portage
Portage konfiguruje się poprzez zmienne znajdujące się na ogół w pliku
/etc/make.conf. Dla uzyskania pełnych informacji na temat tego
pliku, zalecamy przeczytanie jego mana:
Listing 1.1: Wywoływanie man make.conf |
$ man make.conf
|
2.b. Opcje budowania programów
Opcje kompilacji
W trakcie budowania programu, Portage przekazuje kompilatorowi następujące
zmienne:
-
Zmienna CFLAGS & CXXFLAGS definiują żądane flagi dla kompilacji kodu C i
C++
-
Zmienna CHOST zawiera informację o hoście na którym budowany jest program
-
Zmienna MAKEOPTS jest przekazywana do polecenia make i jej wartość
jest najczęściej ilością równoległych zadań podczas kompilacji. Więcej
informacji o make można znaleźć na jego stronie man.
Również flagi USE są używane podczas budowania programów przez Portage, ale
zostały już szczegółowo omówione w poprzednich rozdziałach, nie ma zatem
potrzeby omawiania ich tutaj po raz kolejny.
Opcje instalacji za pomocą emerge
Kiedy Portage instaluje nowszą wersję danego programu, usuwa przestarzałe pliki
z systemu. Usunięcie to jest poprzedzone odpowiednim komunikatem, a użytkownik
ma 5 sekund na przerwanie całej operacji i pozostanie przy aktualnej wersji
programu. Owe 5 sekund definiowanie jest zmienną CLEAN_DELAY.
Wszelkie opcje, które będą wykonywane za każdym razem podczas wykonania
polecenia emerge, możemy przekazać za pomocą zmiennej
EMERGE_DEFAULT_OPTS. Takimi opcjami mogą być np. --ask, --verbose, --tree itd.
2.c. Ochrona plików konfiguracyjnych
Chronione przez Portage katalogi
Jeśli plik nie znajduje się w lokacji chronionej przez Portage, to przy
instalowaniu nowszej wersji programu, do którego należy, zostanie po prostu
nadpisany. Te chronione katalogi również możemy skonfigurować, są one
przechowywane w zmiennej CONFIG_PROTECT.
Plik znajdujący się w takiej chronionej lokacji nie zostanie nadpisany, Portage
zapisze nowy plik pod inną nazwą i poinformuje użytkownika o pojawieniu się
nowszej wersji.
Więcej informacji na temat aktualnego ustawienia zmiennej CONFIG_PROTECT można
uzyskać po wpisaniu polecenia emerge --info:
Listing 3.1: Znajdowanie aktualnego ustawienie zmiennej CONFIG_PROTECT |
$ emerge --info | grep 'CONFIG_PROTECT='
|
Więcej informacji na temat ochrony plików konfiguracyjnych w Portage znajduje
się na stronie man emerge.
Listing 3.2: Więcej informacji nt. ochrony plików konfiguracyjnych w Portage |
$ man emerge
|
Odsłanianie chronionych katalogów
Aby odsłonić konkretny chroniony katalog i umożliwić w nim bezpośrednie
nadpisywanie plików, dodajemy go do zmiennej CONFIG_PROTECT_MASK.
2.d. Opcje pobierania
Serwery
Jeśli potrzebne są jakieś pliki lub informacje, które nie znajdują się na dysku,
Portage będzie zmuszone pobrać je z Internetu. Miejsca, w których program będzie
ich szukał definiujemy w następujących zmiennych:
-
GENTOO_MIRRORS zawiera adresy serwerów lustrzanych z kodami źródłowymi
(distfiles) programów z Portage.
-
PORTAGE_BINHOST zawiera adresy serwerów z prekompilowanymi pakietami.
Kolejna zmienna zawiera adres serwera rsync, z którego pobierane będą
aktualizacje drzewa Portage:
-
Zmienna SYNC zawiera nazwę serwera, z którego Portage będzie pobierało
aktualizacje drzewa Portage.
Zmienne GENTOO_MIRRORS i SYNC mogą zostać ustawione przy pomocy programu
mirrorselect. Przedtem należy go zainstalować, robimy to poleceniem
emerge mirrorselect. Więcej informacji o programie uzyskamy wpisując:
Listing 4.1: Więcej informacji o mirrorselect |
# mirrorselect --help
|
Jeśli dodatkowo chcemy korzystać z serwera proxy, używamy do tego zmiennych
http_proxy, ftp_proxy i RSYNC_PROXY.
Komendy pobierania
Do pobierania kodów źródłowych Portage domyślnie używa programu wget.
Możemy to zmienić poprzez zmienną FETCHCOMMAND.
Portage jest w stanie wznowić przerwany transfer. Używa w takim przypadku jednej
z możliwości programu wget. Jeśli chcemy to zmienić, wystarczy wyedytować
zmienną RESUMECOMMAND.
Należy upewnić się, że wybrane przez nas nowe polecenia FETCHCOMMAND i
RESUMECOMMAND umieszczają kody źródłowe w odpowiednich miejscach. Wewnątrz
zmiennych powinno się umieścić \${URI} i \${DISTDIR} odpowiednie dla lokacji
kodów źródłowych i distfiles.
Można również wybrać osobne polecenia pobierania w zależności od protokołu,
który akurat jest używany. Służą do tego zmienne: FETCHCOMMAND_FTP,
RESUMECOMMAND_HTTP, RESUMECOMMAND_FTP, itd.
Ustawienia rsync
Nie można wprawdzie zastąpić innym polecenia rsync, używanego do aktualizowania
drzewa Portage, ale mamy za to do dyspozycji kilka zmiennych, dzięki którym
można dostosować niektóre parametry jego działania.
-
Zmienna PORTAGE_RSYNC_OPTS ustawia kilka domyślnych zmiennych używanych
podczas aktualizacji. Każda z nich oddzielona jest spacją. Nie należy
zmieniać wartości tej zmiennej, chyba że dokładnie wiemy co robimy.
Dodatkowo należy mieć na uwadze, że istnieją takie opcję, które zawsze będą
używane, nawet w przypadku gdy zmienna ta będzie pusta.
-
Zmienna PORTAGE_RSYNC_EXTRA_OPTS może być użyta do ustawienia dodatkowych
opcji podczas aktualizacji drzewa. Każda z nich powinna być oddzielona
spacją od poprzedniej.
-
--timeout=<liczba>: Definiuje liczbę sekund po jakich bezczynne
połączenie z serwerem zostanie uznane za martwe. Domyślną wartością jest
180, jednak użytkownicy korzystający z modemów lub osoby z wolnymi
komputerami powinny zwiększyć tę wartość do 300 lub więcej.
-
--exclude-from=/etc/portage/rsync_excludes: Wskazuje na plik, w którym
znajduje się lista pakietów i/lub kategorii, które powinny zostać
zignorowane podczas procesu aktualizacji drzewa. W tym przypadku jest to
plik /etc/portage/rsync_excludes. Aby zapoznać się ze
składnią tego pliku, należy przeczytać rozdział Mieszanie gałęzi Portage.
- --quiet: Zmiejsza ilość wysyłanych komunikatów na ekran
- --verbose: Wyświetla kompletną listę plików
- --progress: Wyświetla pasek postępu dla każdego pliku
-
W zmiennej PORTAGE_RSYNC_RETRIES definiujemy ile prób połaczenia się z
serwerem lustrzanym umieszczonym w zmiennej SYNC powinien podejmować rsync.
Domyślną wartością jest 3.
Aby dowiedzieć się więcej o opcjach, należy zapoznać się z manualem, wywoływanym
poleceniem man rsync.
2.e. Konfiguracja Gentoo
Wybór gałęzi
Wyboru gałęzi dokonujemy poprzez zmianę zmiennej ACCEPT_KEYWORDS. Domyślnie jest
to stabilna gałąź naszej architektury, więcej informacji o innych gałęziach
znaleźć można w dalszych rozdziałach Podręcznika.
Portage Features
Przy pomocy zmiennej FEATURES aktywujemy rozmaite dodatkowe możliwości Portage,
które szerzej są omawiane w poświęconym im rozdziale Możliwości Portage.
2.f. Zachowanie Portage
Zarządzanie zasobami
Zmienna PORTAGE_NICENESS służy do zwiększania lub zmniejszania wartości nice z
jaką działa Portage. Wartość ze zmiennej PORTAGE_NICENESS jest dodawana
do aktualnej wartości nice.
Więcej informacji o wartościach nice znajduje się w manie programu nice:
Listing 6.1: Więcej informacji o nice |
$ man nice
|
Konfiguracja danych wyjściowych
Zmienna NOCOLOR, domyślnie ustawiona na "false" (fałsz), przestawiona na "true"
(prawda), zakaże Portage kolorowania danych wyjściowych.
[ << ]
[ < ]
[ Powrót ]
[ > ]
[ >> ]
Materiał udostępniany na podstawie licencji Creative Commons -
Attribution / Share Alike.
|