Advanced Packaging Tool

APT – Zaawansowane Narzędzie do Zarządzania Pakietami

APT (z ang. Advanced Packaging Tool) to system zarządzania pakietami, który znajduje zastosowanie w systemie Debian GNU/Linux. Został on stworzony do pracy z plikami .deb, jednak jego zmodyfikowane wersje obsługują również pakiety RPM i są kompatybilne z innymi systemami operacyjnymi, takimi jak OS X (projekt Fink).

APT ułatwia instalację oraz usuwanie oprogramowania w systemach uniksowych poprzez automatyczne pobieranie pakietów (z Internetu, sieci lokalnej lub płyty CD-ROM), ich konfigurację, ewentualną kompilację oraz instalację. apt-get jest uznawane za jedną z najważniejszych funkcji Debiana, co przyczynia się do jego reputacji jako systemu trudnego w instalacji, ale prostego w użytkowaniu.

APT nie jest samodzielnym programem. To biblioteka napisana w języku C++, która jest wykorzystywana przez różne programy (sterowane z linii poleceń) do zarządzania pakietami. Najbardziej popularne z nich to apt-get oraz apt-cache. Na przykład, aby zainstalować pakiet php5, używamy polecenia:

apt-get install php5

W przypadku uszkodzenia jednego z instalowanych pakietów, można go naprawić za pomocą komendy:

apt-get install -f

W nowszych wersjach systemu Linux dostępne jest również polecenie:

apt install

Polecenie apt-get przeszukuje listy pakietów oraz ich zależności, automatycznie je pobierając, konfigurując i instalując. Aby zaktualizować listę pakietów, wystarczy wydać polecenie apt-get update. Z kolei polecenie apt-get dist-upgrade pozwala na pełną aktualizację systemu do najnowszej wersji.

Polecenie:

apt-cache search szukana fraza

umożliwia przeszukiwanie dostępnej bazy pakietów na podstawie zawartości pliku /etc/apt/sources.list.

Dostęp do opcji pomocy uzyskujemy poprzez polecenia:

apt-get -h

apt-cache -h

Źródła pakietów

Projekt Debian dysponuje w swoim centralnym repozytorium ponad 89 000 pakietów gotowych do pobrania i instalacji, ale można również korzystać z niemal dowolnej liczby innych repozytoriów (lista aktualnie używanych repozytoriów znajduje się w pliku /etc/apt/sources.list oraz w katalogu /etc/apt/sources.list.d/).

Repozytorium pakietów nie musi być umieszczone w Internecie. Może być również nagrane na nośnikach takich jak płyty CD-ROM, DVD czy BR, co umożliwia aktualizowanie komputerów, które nie są podłączone do sieci. Istnieją także programy z bardziej przyjaznym interfejsem użytkownika, które najczęściej bazują na apt-get. Należą do nich między innymi aptitude (oparte na ncurses) oraz Synaptic (na GTK+).

Główną ideą APT jest umożliwienie instalacji pakietów bez konieczności podawania konkretnej lokalizacji, w której się znajdują. APT automatycznie zarządza także zależnościami instalacji.

Przykład instalacji przeglądarki internetowej Galeon za pomocą apt-get:

# apt-get install galeon

Czytanie list pakietów… Gotowe

Budowanie drzewa zależności… Gotowe

Zainstalowane zostaną następujące dodatkowe pakiety:

  • capplets
  • capplets-data
  • desktop-base
  • galeon-common
  • gnome-control-center
  • gnome-session
  • libeel2-2
  • libgnome-desktop-2
  • libnautilus2-2

Sugerowane pakiety:

  • esound-clients
  • gnome
  • kde
  • wmaker
  • gtm
  • gnome-core
  • gnome-audio

Polecane pakiety:

  • epiphany-browser
  • mozilla-mailnews

Nowe pakiety, które zostaną zainstalowane:

  • capplets
  • capplets-data
  • desktop-base
  • galeon
  • galeon-common
  • gnome-control-center
  • gnome-session
  • libeel2-2
  • libgnome-desktop-2
  • libnautilus2-2

0 zaktualizowanych, 10 nowo zainstalowanych, 0 do usunięcia oraz 21 nie zaktualizowanych.

Konieczne pobranie 7050kB archiwów.

Po rozpakowaniu zajmie dodatkowe 19.5MB miejsca na dysku.

Czy chcesz kontynuować? [T/n]

APT automatycznie wykrywa brakujące pakiety i instaluje je samodzielnie. Wyświetla rekomendowane oraz sugerowane programy i biblioteki, a także podsumowuje nowe pakiety, które zostaną zainstalowane, oraz ich wymagane miejsce na dysku twardym.

Priorytety w wyborze pakietów

W pliku /etc/apt/sources.list możemy określić programowi APT, aby podczas aktualizacji pobierał dane z repozytoriów kilku gałęzi Debiana jednocześnie, na przykład z gałęzi stabilnej i testowej. Problem wyboru wersji danej paczki rozwiązuje tzw. priorytet. Priorytet to liczba całkowita przypisana pakietowi według zestawu cech, takich jak wspomniana gałąź. W przypadku, gdy podczas instalacji dostępnych jest kilka pakietów o tej samej nazwie, APT wybierze ten o najwyższym priorytecie i nadpisze nim zainstalowany już pakiet, o ile ten ostatni ma niższy priorytet. Powodem może być na przykład numer wersji, ponieważ APT (w przeciwieństwie do dpkg) nie pozwoli na zainstalowanie starszej wersji niż ta aktualnie zainstalowana, chyba że nadamy jej wyższy priorytet (tzw. pinning).

Priorytety można definiować w pliku /etc/apt/preferences. W przeciwnym razie APT skorzysta z domyślnie ustawionych priorytetów.

Easter eggs

Wydając polecenie apt-get moo, program wyświetli na standardowym wyjściu „obrazek” w formie ASCII-Art, przedstawiający krowę oraz pytanie „Have you mooed today?” (pol. „Czy już dzisiaj muczałeś?”).

# apt-get moo

(__)

(oo)

/——\/

/ | ||

* /\—/\

~~ ~~

….”Have you mooed today?”…

Podobnie, uruchamiając program bez żadnych parametrów, zostanie wyświetlona krótka pomoc, kończąca się stwierdzeniem „This APT has Super Cow Powers” (pol. „Ten APT ma Moce Super Krowy”).

Lista zainstalowanych pakietów

Aby zobaczyć listę zainstalowanych pakietów, używamy polecenia:

# dpkg -l

Pełna lista poleceń apt-get

Użycie poleceń

# apt-get polecenie [parametry] parametry_polecenia

  • install – instaluje podane pakiety;
  • remove – usuwa podane pakiety;
  • purge – całkowicie usuwa podane pakiety, łącznie z plikami konfiguracyjnymi;
  • update – aktualizuje listę pakietów w repozytoriach;
  • upgrade – aktualizuje pakiety;
  • dist-upgrade – przeprowadza pełną aktualizację pakietów;
  • autoremove – usuwa wszystkie nieużywane i zbędne pakiety;
  • download – pobiera pakiet binarny do bieżącego katalogu;
  • source – pobiera pliki kodu źródłowego podanych pakietów;
  • build-dep – konfiguruje zależności pakietów źródłowych;
  • check – sprawdza, czy zależności wszystkich pakietów są spełnione;
  • changelog – pobiera i wyświetla listę zmian danego pakietu;
  • clean – usuwa pobrane pliki archiwów;
  • autoclean – usuwa stare pobrane pliki archiwów;
  • moo – żartobliwy rysunek ASCII-Art przedstawiający krowę pytającą o dzisiejsze muczenie;
  • dselect-upgrade – zarządza pakietami z użyciem narzędzia dselect.

Przypisy

Linki zewnętrzne

Oficjalne Howto APT Debiana