Nie tylko Synaptic – lepsze zarządzanie oprogramowaniem z apt 13


Korzystam z Debiana i, jak wielu spośród jego użytkowników, używam apta i powiązanych z nim narzędzi. Jeśli nie mieliście jeszcze styczności z aptem, w tym artykule znajdziecie krótkie podsumowanie jego narzędzi i niego samego, co uczyni zarządzanie oprogramowaniem jeszcze skuteczniejszym.

Historia

Na początek trochę historii. APT (’Advanced Packaging Tool’) ujrzał światło dzienne w 1998 roku, a pierwsza jego implementacja miała miejsce wraz z wydaniem Debiana 2.1 (slink) w roku 1999. Trudno mówić tutaj o apt’cie jako o pojedynczej aplikacji – to raczej zestaw narzędzi i funkcji początkowo zaprojektowanych jako front-end dla dpkg – rdzennego oprogramowania do zarządzania paczkami w Debianie (dziś również dla RPM). Jest także kilka front-endów dla samego apta, m.in.: Synaptic, aptitude, Adept. We front-endach nie ma naturalnie niczego złego, chciałbym się jednak skupić na podstawowych narzędziach używanych z poziomu konsoli.

Jedną z zalet apta jest obsługa repozytoriów. Jak większość menadżerów oprogramowania, apt korzysta z repozytoriów do znajdywania i pobierania paczek. Sposób w jaki repozytoria są zorganizowane niebagatelnie pomaga w spełnianiu zależności, gdzie poprawne działanie oprogramowania z jednej paczki zależy od istnienia w systemie drugiej. Repozytoria apta dają również zalecenia i propozycje co do innych paczek, które mogą okazać się użyteczne. Nie są to zależności bez których dana paczka nie zadziała, czasem jednak coś, co uznacie za zależność, będzie tylko rekomendacją, gdyż macie dany wybór. Polityką Debiana jest pozostawiać użytkownikom możliwie jak największą wolność w doborze oprogramowania i konfiguracji.

Ze względu na naturę omawianych narzędzi, muszą być one uruchamiane przez użytkownika z określonymi uprawnieniami. Zwykle będzie to uruchamianie z użyciem sudo lub, jeśli jesteście ufni/ufne we własne umiejętności, jako root.

apt-get update

:~$ sudo apt-get update

Apt korzysta z lokalnej listy paczek, sprawdzając ich dostępność, wersję, pliki, które zawierają, ich zależności i status. Ponieważ jest to lista przechowywana na komputerze użytkownika, musi być ona uaktualniana względem list w zdalnych repozytoriach. Jest to odpowiednik operacji „Odśwież” w Synapticu.

apt-cache

:~$ apt-cache search gnumeric
:~$ apt-cache search spreadsheet
:~$ apt-cache show inkscape
:~$ apt-cache depends python

Apt-cache jest interfejsem lokalnej listy paczek. Można go używać do odnajdywania paczek po nazwie lub po opisie. Dla przykładu, wyniki obydwu z dwóch pierwszych poleceń powyższej listy będą zawierać paczkę Gnumerica, jednak to pierwsze z nich będzie dokładniejsze. apt-cache oferuje wiele opcji, z których najpopularniejszą jest chyba search; show da szczegółowe informacje o danej paczce, a depends listę paczek, od których ta zależy.

apt-get

:~$ sudo apt-get install gnumeric
:~$ sudo apt-get remove inkscape
:~$ sudo apt-get autoremove

Apt-get jest tą częścią apta, która zarządza paczkami. Używając tak prostej komendy, jak pierwsza z listy, pobrana i zainstalowana zostanie paczka gnumeric z wszystkimi paczkami, od których zależy i ich zależnościami. Przedtem jednak apt-get poprosi Was o potwierdzenie Waszego wyboru, wypisując odpowiedni komunikat, informację o wielkości paczek do pobrania i ich ew. objętość na dysku po instalacji. Opcja remove nie usunie zależności, wskaże jednak paczki, z którymi związane są te, które usuwacie. Opcja autoremove usunie natomiast wszystkie zbędne już paczki zainstalowane jako zależności.

Tak, jak z apt-cache, opcji w apt-get jest znacznie więcej niż tutaj opisuję. Rzućcie okiem na dokumentacje, jeśli chcecie się dowiedzieć jeszcze czegoś więcej o tych potężnych poleceniach.

Inne użyteczne narzędzia

Narzędzia te nie wchodzą w skład domyślnej instalacji Debiana (jak i Ubuntu – przyp. tłum.), najprawdopodobniej więc trzeba Wam będzie je zainstalować samodzielnie.

apt-show-versions

:~$ apt-show-versions gnumeric
:~$ apt-show-versions -u

Apt-show-versions jest przydatne do porównywania wersji paczki. Zwykle będzie to wersja paczki zainstalowanej i tej, która dostępna jest w repozytorium. Używając argumentu -u otrzymacie dodatkowo listę paczek zainstalowanych w Waszym systemie, dla których dostępne są aktualizacje.

apt-listbugs

Po instalacji apt-listbugs wywoływany jest automatycznie wraz z apt-get install. Przed pobraniem i instalacją żądanych paczek (i ich zależności) uzyska on listę krytycznych błędów w nich występujących. Jest to bardzo użyteczne w przypadku używania wersji rozwojowych. Możecie wówczas zobaczyć które błędy zostały poprawione, które są w trakcie łatania, etc.

apt-mirror

Jeśli korzystasz z kilku maszyn z zainstalowanym Debianem, możesz skorzystać z apt-mirror dla utworzenia lokalnego odzwierciedlenia zawartości wybranych repozytoriów celem zaoszczędzenia przepustowości swojego połączenia z Internetem. Może być on również użyteczny, gdy chcesz, aby wszystkie Twoje systemy używały określonych wersji paczek.

apt-proxy

Apt-proxy też może zostać wykorzystany do utrzymania przepustowości zużywanej przez kilka maszyn na niskim poziomie, dla odmiany działa jednak w oparciu o proxy, buforując aktualizacje repozytoriów wywoływanych przez klientów.

apt-listchanges

Apt-listchanges wypisze listę ostatnich zmian, którym poddana została paczka.

apt-zip

Jeśli Wasz system nie jest podłączony do sieci, utrzymywanie go aktualnym może być kłopotliwe. apt-zip ułatwia to zadanie, pozwalając na zapisanie na przenośnym napędzie potrzebnych systemowi paczek z innej, połączonej z siecią maszyny.

Wniosek

Podczas, gdy Synaptic i Aptitude mają swoje niezaprzeczalne zalety (np. aptitude usunie wszystkie osierocane zależności, usuwając paczkę), myślę, że wciąż wiele dobrego można powiedzieć o starych, dobrych narzędziach apta, zwłaszcza, gdy używa się tzw. minimalnej instalacji, bądź w przypadku, gdzie należy oszczędzać przepustowość łącza, itp. Nie uważam się w żadnym razie za eksperta od ich zastosowania i jestem pewien, że osoby z większym doświadczeniem mogłyby znacząco uzupełnić to, co tutaj powiedziałem. Jeśli dotąd używaliście jedynie Synaptica, dajcie szansę również aptowi.

Tłumaczenie na podstawie: “Beyond Synaptic – using apt for better package management
(C) 2008 Ryan Cartwright. Zezwala się na kopiowanie i rozpowszechnianie niniejszego artykułu poprzez dowolne medium bez obowiązku opłaty honorarium, pod warunkiem załączenia tej wiadomości, jak również odpowiedniego przypisu (autor, strona źródłowa, URL źródła).

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.

13 komentarzy do “Nie tylko Synaptic – lepsze zarządzanie oprogramowaniem z apt

  • kjur

    do sudo apt-get autoremove
    dodalbym jeszcze sudo apt-get autoclean
    pomaga utrzymywac lokalne repozytorium w przyzwoitym rozmiarze.
    no, ale jak rozumiem to tylko tlumaczenie tekstu na polski, wiec to raczej uwaga do autora niz do tlumacza 🙂

  • Llewelyn_MT

    aptitude zapewnia wszystkie funkcje apt-get używając dokładnie tych samych parametrów. Dodatkowo ma:
    * znacznie skuteczniejsze rozwiązywanie konfliktów,
    * świetny tryb interaktywny,
    * działające wstrzymywanie pakietów,
    * purge i download jako polecenia, a nie parametry (mniej pisania),
    * wyszukiwanie pakietów,
    * usuwa niepotrzebne automatycznie zainstalowane zależności.

    O saperze nawet nie wspomnę… Nie rozumiem więc dlaczego miałbym używać właśnie apt-get.

  • laybythesea

    [quote comment=”19709″]Nie rozumiem więc dlaczego miałbym używać właśnie apt-get.[/quote]
    Dla każdego coś miłego, jak to mawiają. Nikt do niczego nie zmusza przecież. Czujesz się lepiej z aptitudem, używaj go! 😉

  • lukas

    Ja już kilka razy złapałem aptitude na małej wpadce tj. nie wyszukiwał wszystkich paczek. Sprawdźcie sami wpisując

    aptitude search pulseaudio
    apt-cache search pulseaudio

  • PhysX

    Będąc już w tematach aptopodobnych: aptsh to całkiem fajne narzędzie. Troszkę przerost formy nad treścią, ale mimo wszystko ciekawe rozwiązanie

  • Azrael Nightwalker

    A jeszcze lepszym narzędziem jest wajig, bo ma ortogonalny zestaw komend, łatwo je zapamiętać, nie trzeba pamiętać o sudo (wajig sam zapyta o hasło), a pamiętać wystarczy 1 polecenie: wajig commands. Wajig jest nakładką na apta, która dodatkowo pozwala na częściowe zarządzanie systemem (np. uruchamianie i zatrzymywanie usług).