Wstęp
Poldek jest nakładką na program
rpm, zapewniającą wygodny interfejs
obsługi oraz kilka dodatkowych funkcji. Poldek jest
pośrednikiem w pobieraniu pakietów, indeksuje ich listy
oraz ułatwia zarządzanie wieloma źródłami, może pobierać
pakiety lokalnie (dyski twarde, napędy optyczne)
lub z sieci (FTP, HTTP, HTTPS, SMB, RSYNC). Obsługuje ponadto
zależności miedzy pakietami, wykrywa konflikty itp.
Poldek nie obsługuje jednak wszystkich operacji możliwych
na pakietach RPM, dlatego nie może całkowicie zastąpić
programu rpm.
Poldek do wielu operacji (pobieranie pakietów i indeksów,
wyszukiwanie informacji itp.) nie wymaga praw administratora,
wymagane są jednak do operacji zapisu w systemie, np.
instalowanie, odinstalowanie, itp. Poldek w tym celu
automatycznie używa programu sudo,
z tego względu konieczne jest posiadanie skonfigurowanego
sudo, w przeciwnym razie pozostaje nam uruchamianie programu z
konta roota.
Konfiguracja Poldka jest dość złożona i wyjaśnienie
wszystkich szczegółów zajęło by zbyt wiele miejsca,
dlatego zajmiemy się jedynie najczęściej używanymi
opcjami. Nie powinniśmy się jednak tym przejmować,
program jest gotowy do działania od razu
po zainstalowaniu i w większości wypadków nie ma
potrzeby nic modyfikować. Musimy jednak się upewnić, że
mamy dobrze skonfigurowane adresy serwerów i architekturę
pakietów, co zostało omówione w dalszej części rozdziału.
Więcej informacji o poldku i jego konfiguracji odnajdziemy
w podręczniku systemowym (man,info) oraz na witrynie
projektu pod adresem
http://poldek.pld-linux.org.
Pliki konfiguracji
Konfiguracja Poldka jest przechowywana w kilku plikach
wewnątrz katalogu /etc/poldek, to czy
dany plik konfiguracji jest używany określa opcja
%include, umieszczona w głównym pliku
konfiguracji.
-
poldek.conf - główny
plik konfiguracji, jeśli nie zostało
zaznaczone inaczej to właśnie ten plik ma
na myśli autor
-
aliases.conf - zawiera
zdefiniowane aliasy poleceń dla trybu
interaktywnego
-
fetch.conf - zawiera
konfigurację alternatywnych programów do
pobierania pakietów, domyślnie konfiguracja
z tego pliku nie jest wczytywana.
-
repos.d/pld.conf -
ustawienia źródeł pakietów dla PLD
-
source.conf - plik
przeznaczony dla lokalnych źródeł pakietów
-
.poldekrc - plik
konfiguracji użytkownika, który umieszczamy
w katalogu domowym.
Konfiguracja pobierania pakietów
W pliku repos.d/pld.conf mamy dwie
ważne opcje wskazujące skąd mają być pobierane
pakiety. Opcja _pld_arch wskazuje
architekturę sprzętową pakietów, zaś
_pld_prefix mówi skąd mają być
pobierane pakiety i dla jakiej wersji dystrybucji.
Więcej o architekturach pakietów znajdziemy w
tym dokumencie,
adresy serwerów i oficjalnych mirrorów zawarto w
tym dokumencie.
Poldek zacznie korzystać z proxy po ustawieniu właściwych
zmiennych środowiskowych - zarówno w przypadku wbudowanego
klienta jak i klientów zewnętrznych (np. wget). Możemy też
użyć opcji proxy.
Konfigurację proxy dla Linuksa szerzej opisano w
tym dokumencie.
Inne opcje
Poldek przechowuje indeksy pakietów w
katalogu zdefiniowanym w opcji cachedir,
domyślnie jest to $HOME/.poldek-cache.
Jest to dobre rozwiązanie jeśli z Poldka korzysta jeden
użytkownik, jeśli ma używać go więcej
osób to lepiej ustawić wspólny katalog np.
/var/cache/poldek-cache,
w ten sposób unikniemy wielokrotnego pobierania indeksów.
use sudo - użycie sudo przy uruchomieniu
z konta zwykłego użytkownika.
hold - blokuje aktualizację
pakietów które znalazły się na jej liście.
ignore - opcja ukrywająca podane pakiety
na liście dostępnych.
choose equivalents manually - pozwala
wybierać użytkownikowi jeden z kilku pakietów oferujących
tą samą funkcjonalność, domyślnie wyłączona przez co
wybór następuje automatycznie. Pozwala bardzo precyzyjnie
wybierać pakiety do zainstalowania.
Tryby pracy
Kolejną ważną jego cechą jest możliwość pracy zarówno
w trybie wsadowym jak i
interaktywnym. Pierwszy z nich
nadaje do wszelkiej maści skryptów i automatyki, zaś
drugi jest wygodniejszy do bezpośredniej obsługi przez
użytkownika.
Komfort pracy w trybie interaktywnym sprawia, że
użytkownicy na co dzień korzystają niemal zawsze z niego.
Stąd jeśli nie zostało to inaczej napisane to właśnie
ten tryb autor ma na myśli.
Tryb interaktywny
Praca w trybie interaktywnym przypomina do złudzenia
używanie powłoki systemowej (shella). Dostępne są:
historia poleceń, pomoc, dopełnianie komend i nazw pakietów,
aliasy, potoki itp. Na potrzeby tego rozdziału w przykładach
taki tryb będziemy sygnalizować następującym znakiem zachęty:
Jedną z największych zalet trybu interaktywnego jest
dopełnianie nazw pakietów i poleceń za pomocą tabulatora.
Przykładowo naciśnięcie klawisza tab po
poleceniu:
spowoduje wyświetlenie listy pakietów, dla których są dostępne
aktualizacje.
W przypadku nazw pakietów możemy używać "gwiazdki"
jako znaku zastępczego (wildcard), który zastępuje dowolny
ciąg znaków. Przedstawiono to na poniższym przykładzie,
który spowoduje zainstalowanie wszystkich pakietów o
nazwach zaczynających się od "gnome-theme"
poldek> install gnome-theme* |
Zazwyczaj nie ma potrzeby podawania wersji programu,
jednak w pewnych przypadkach możemy mieć dostępnych kilka
wersji tego samego pakietu (np. przy używaniu wielu źródeł
na raz). Wtedy musimy podać jednoznacznie wersję pakietu.
Mamy do dyspozycji potoki:
poldek> ls perl* | grep curses |
Możemy również wywoływać polecenia zewnętrzne:
poldek> ls perl* | !wc -l |
W obsłudze źródeł i pakietów występuje wiele podobieństw do
systemu plików. Źródła są traktowane jak katalogi zaś
pakiety jak pliki, do poruszania się w tym środowisku używamy
poleceń takich jak pwd, ls
oraz cd.
Tryb wsadowy
Opis wszystkich parametrów trybu wsadowego uzyskamy
dzięki poleceniu
Jest tam całe bogactwo
opcji, dzięki którym będziemy mogli ułatwić sobie pracę.
Na szczególną uwagę zasługuje parametr --shcmd
pozwalający wydawać polecenia w trybie wsadowym jak w trybie
powłoki np.:
$ poldek --shcmd="desc apache" |
Możemy w tym celu użyć również polecenia
ipoldek, np.:
Pierwsze kroki z Poldkiem
Poldek uruchomiony po raz pierwszy (bez podawania parametrów)
sprawdza czy istnieją indeksy dla źródeł, które ma automatycznie
obsługiwać. Jeśli ich nie ma, to zostaną automatycznie pobrane
i zapisane w miejscu wskazanym przez omówioną powyżej opcję
cachedir. Po tej operacji zostanie
uruchomiony Poldek trybie interaktywnym i będzie gotowy do
pracy.
Przed każdą kolejną pracą z programem musimy uaktualnić
indeksy pakietów, na wypadek gdyby w źródłach nastąpiły
zmiany, w przeciwnym razie możemy otrzymywać komunikaty
o braku pakietów. Aby uaktualnić indeksy domyślnych źródeł
wywołujemy następująco program z powłoki systemowej:
Aby pobrać na nowo indeksy wywołujemy Poldka z parametrem
--upa,
dla pozostałych źródeł musimy podać ich nazwę po parametrze
-n,
źródła pakietów zostały omówione w dalszej części rozdziału.
Po uruchomieniu programu mamy od razu możliwość zarządzania
pakietami, aby zobaczyć listę dostępnych poleceń wpisujemy
help i naciskamy klawisz
Enter. Większość poleceń ma składnię:
poldek> {$polecenie} {$pakiet} {$opcje} |
Opis dodatkowych parametrów znajdziemy w
pomocy danego polecenia, po napisaniu:
Aby opuścić program wpisujemy polecenie
quit lub wciskamy ctrl+d
Zarządzanie pakietami
Mamy dostępne następujące polecenia zarządzania pakietami:
operacje instalacji (install), aktualizacji
pakietów (upgrade), usuwania pakietów
(uninstall), pobierania pakietów bez
instalacji (get). Ponadto mamy polecenia do
zbierania danych o pakietach: wyświetlanie listy dostępnych
(ls), wyświetlenia informacji
(desc) oraz przeszukiwania bazy
(search).
W wielu przypadkach pomocna będzie opcja -t,
która przeprowadzi symulację całej operacji, dzięki której
dowiemy się jak duże i jak istotne zmiany zostaną dokonane
w systemie po operacji. Najczęściej jest używana przy
aktualizacji i usuwaniu pakietów.
Poniżej zamieszczono kilka przykładów zarządzania pakietami,
na początek przykład wyświetlenia listy pakietów (wszystkich
zaczynających się od zsh):
wyświetlenie informacji o pakiecie:
instalacja pakietu:
deinstalacja:
To jedynie podstawowe polecenia, więcej informacji
znajdziemy w pomocy Poldka.
Źródła
Poldek ma kilka zdefiniowanych źródeł pakietów w plikach
source.conf i
repos.d/pld.conf, pierwszy z plików
jest głównym plikiem konfiguracji źródeł, drugi zaś
zawiera wpisy dla oficjalnych źródeł PLD. Aby wyświetlić
listę skonfigurowanych źródeł, wraz użytymi opcjami
użyjemy polecenia:
$ poldek -l
ac ftp://ftp.ac.pld-linux.org/dists/ac/PLD/athlon/PLD/RPMS/ (type=pndir)
ac-ready ftp://ftp.ac.pld-linux.org/dists/ac/ready/athlon/ (noauto,type=pndir)
ac-supported ftp://ftp.ac.pld-linux.org/dists/ac/supported/athlon/ (noauto,type=pndir)
ac-test ftp://ftp.ac.pld-linux.org/dists/ac/test/athlon/ (noauto,type=pndir)
ac-updates-general ftp://ftp.ac.pld-linux.org/dists/ac/updates/general/athlon/ (noauto,type=pndir)
ac-updates-security ftp://ftp.ac.pld-linux.org/dists/ac/updates/security/athlon/ (type=pndir)
home /home/users/qwiat/rpm/RPMS/ (noauto,noautoup,type=dir) |
Nie wszystkie źródła są obsługiwane automatycznie,
zależy to od ustawienia
opcji noauto w konfiguracji danego źródła
(zauważymy ją też na powyższym zrzucie ekranu).
Aby tymczasowo użyć innego zestawu źródeł przy uruchomieniu
musimy podać ich listę poprzedzonych parametrem
-n np.:
$ poldek -n ac -n ac-ready |
Teraz lista dostępnych pakietów będzie się składała z
zawartości źródeł ac i
ac-ready,
jeśli chcemy, aby zawsze korzystał z niestandardowego
zestawu źródeł wygodniej będzie zmodyfikować ustawienie opcji
noauto. Oficjalne źródła PLD
zostały wyczerpująco omówione w
tym dokumencie.
Istnieje możliwość instalacji pakietów Poldkiem z lokalnych
źródeł, zamiast posługiwania się programem rpm.
W pliku source.conf zdefiniowane
jest źródło home, które służy do wygodnego
instalowania pakietów z katalogu
$HOME/rpm/RPMS, używanego powszechnie
do umieszczania samodzielnie budowanych
pakietów. Nie ma jednak potrzeby każdorazowego
umieszczania tam pakietów jeśli to uznamy za konieczne.
Możemy utworzyć tymczasowe źródło lokalne na podstawie
zawartości katalogu za pomocą
opcji -s:
Poldek po uruchomieniu tworzy dla
wygody dodatkowe źródła wirtualne: all-avail
i installed. Pierwsze zawiera
sumę pakietów ze wszystkich wskazanych źródeł, drugie
to lista zainstalowanych pakietów.
Przy pracy z samodzielnie podawanymi źródłami należy
wskazywać też główne źródło pakietów (main), tak aby mogły
zostać pobrane pakiety wymagane w ramach zależności.
W przeciwnym razie możemy otrzymać błędy o nieistniejących
pakietach.
Porady
Przy pracy z wieloma pakietami
możemy utracić możliwość przewinięcia ekranu
w celu odczytania najstarszych komunikatów.
Aby temu zaradzić użyjemy opcji --log,
dzięki której, wskażemy plik do którego trafią
wszystkie komunikaty.
|