
                         Podręcznik użytkownika APT


-----------------------------------------------------------------------------
                                      
                               Jason Gunthorpe

                              <jgg@debian.org>

                                Version 3.2.0

-----------------------------------------------------------------------------

Copyright © 1998 Jason Gunthorpe

License Notice

    "APT" i ten dokument są oprogramowaniem wolnodostępnym, które można
    rozpowszechniać oraz zmieniać zgodnie z postanowieniami drugiej albo
    (wedle uznania) dowolnej późniejszej wersji "Ogólnej Licencji Publicznej
    GNU" (GNU General Public License) publikowanej przez "Fundację Wolnego
    Oprogramowania (Free Software Foundation).

    Więcej szczegółów można uzyskać, przeglądając plik zawierający pełen
    tekst licencji (w systemach Debian jest to plik /usr/share/
    common-licenses/GPL).

Abstrakt

Dokument zawiera opis używania menadżera pakietów APT.

-----------------------------------------------------------------------------

Spis treści

1. Ogólne
    1.1. Budowa systemu pakietów
2. apt-get
3. DSelect
4. Interfejs
    4.1. Uruchamianie
    4.2. Raport stanu
        4.2.1. Lista dodatkowych pakietów
        4.2.2. Pakiety przeznaczone do usunięcia
        4.2.3. Lista nowych pakietów
        4.2.4. Lista zatrzymanych pakietów
        4.2.5. Ostrzeżenie o zmianie zatrzymanych pakietów
        4.2.6. Podsumowanie
    4.3. Wyświetlanie stanu przetwarzania
    4.4. Dpkg

Rozdział 1. Ogólne

Spis treści

1.1. Budowa systemu pakietów

    Pakiet APT składa się z dwóch części: z metody APT programu dselect oraz
    z programu apt-get będącego interfejsem linii poleceń. Obie części
    pozwalają na instalowanie i usuwanie pakietów oraz na pobieranie nowych
    pakietów z Internetu.

1.1. Budowa systemu pakietów

    System pakietów Debiana zawiera sporą ilość informacji skojarzonych z
    każdym pakietem, zapewniających integralność pakietów w systemie.
    Najbardziej widoczną cechą systemu pakietów jest system zależności.

    System zależności pozwala poszczególnym programom używać wspólnych
    elementów systemu, takich jak biblioteki. Upraszcza także umieszczanie
    rzadko używanych części programów w oddzielnych pakietach, tak aby
    zmniejszyć liczbę pakietów instalowanych przez przeciętnego użytkownika.
    Pozwala także wybierać programy odpowiedzialne za dostarczanie poczty,
    serwery X-ów itp.

    Pierwszym krokiem potrzebnym do zrozumienia systemu zależności jest
    zrozumienie koncepcji prostej zależności. Prosta zależność oznacza, że
    dany pakiet do poprawnego działania wymaga zainstalowania innego pakietu.

    Na przykład mailcrypt jest rozszerzeniem edytora emacs, umożliwiającym
    szyfrowanie e-maili za pomocą programu GPG. Bez zainstalowanego pakietu
    GPG, mailcrypt jest bezużyteczny, dlatego mailcrypt zawiera prostą
    zależność od GPG. Ma także prostą zależność od pakietu emacs, ponieważ
    jest rozszerzeniem emacsa, więc i bez emacsa jest równie bezużyteczny.

    Inną ważną zależnością, którą należy zrozumieć, jest konflikt. Oznacza
    to, że dany pakiet może nie działać albo może być szkodliwy dla systemu,
    jeżeli razem z nim jest zainstalowany inny pakiet. Jako przykład rozważmy
    program odpowiedzialny za dostarczanie poczty (ang. "mail transport
    agent") taki jak sendmail, exim lub qmail. Nie jest możliwe jednoczesne
    zainstalowanie dwóch takich programów, ponieważ oba musiałyby nasłuchiwać
    na tym samym porcie sieciowym, żeby odebrać e-maile. Próba zainstalowanie
    obu poważnie uszkodzi system. Dlatego też wszystkie programy obsługi
    dostarczania poczty są w konflikcie ze wszystkimi innymi programami
    obsługującymi dostarczanie poczty.

    Dodatkową komplikacją jest możliwość, że dany pakiet może udawać inny
    pakiet. Proszę rozważyć jako przykład, że exim i sendmail praktycznie
    rzecz biorąc są identyczne - oba dostarczają pocztę, oba mają wspólny
    interfejs. Dlatego też system pakietów daje im możliwość zadeklarowania,
    że oba są programami obsługującymi dostarczanie poczty.Tak więc zarówno
    exim, jak i sendmail deklarują, że dostarczają pakiet o nazwie
    mail-transport-agent, od którego mogą zależeć pakiety, wymagające do
    swojego działania programu obsługi poczty. Może to być bardzo mylące
    podczas próby ręcznego naprawiania zależności pakietów.

    W dowolnym czasie pojedyncza zależność może być lub nie być spełniona
    przez obecnie zainstalowane pakiety. ATP próbuje rozwiązać zależności
    używając pewnej liczby algorytmów pomagających w wyborze pakietów do
    zainstalowania.

Rozdział 2. apt-get

    apt-get dostarcza prostego sposobu na zainstalowanie pakietów z linii
    poleceń. W przeciwieństwie do dpkg, apt-get nie posługuje się nazwami
    plików ".deb", lecz używa nazw pakietów i może zainstalować tylko archiwa
    ".deb" ze skonfigurowanych źródeł.

    Pierwszą rzeczą ^[1], którą należy zrobić przed użyciem apt-get jest
    pobranie listy pakietów (ze źródeł wymienionych w pliku sources.list(5)),
    tak żeby APT wiedział, jakie pakiety są dostępne. Robi się to za pomocą
    polecenia apt-get update. Na przykład:

    # apt-get update
    Pob: http://ftp.de.debian.org/debian/ stable/binary-i386/ Packages
    Pob: http://llug.sep.bnl.gov/debian/ testing/contrib Packages
    Czytanie list pakietów... Gotowe
    Budowanie drzewa zależności... Gotowe

    Po zaktualizowaniu można użyć następnych poleceń:

    upgrade

        Upgrade spróbuje delikatnie zaktualizować cały system. Upgrade nigdy
        nie zainstaluje nowego pakietu ani nie usunie istniejącego pakiety,
        ani też nie zaktualizuje pakietu do wersji powodującej, że inny
        pakiet przestanie działać. Można używać tego polecenia codziennie do
        w miarę bezpiecznych aktualizacji systemu. Upgrade wypisze listę
        pakietów, których nie potrafił zaktualizować, co zazwyczaj oznacza,
        że zależą one od nowych pakietów lub są w konflikcie z innymi
        pakietami. Można wymusić instalację takich pakietów, używając do tego
        dselect lub apt-get install.

    install

        Install jest używane do instalowania pakietów przez podanie ich
        nazwy. Pakiet jest automatycznie pobierany i instalowany. Może być to
        użyteczne, gdy już zna się nazwę pakietu do zainstalowania i nie chce
        się uruchamiać graficznego interfejsu wyboru pakietów. Można podać
        dowolną liczbę nazw pakietów do zainstalowania - wszystkie będą
        pobrane. Install próbuje automatycznie rozwiązać problemy z
        zależnościami w podanych pakietach, wypisze podsumowanie i poprosi o
        potwierdzenie, jeśli zamierza zmienić cokolwiek innego niż pakiety
        podane jako jego argumenty.

    dist-upgrade

        Dist-upgrade powoduje całkowitą aktualizację systemu i jest
        zaprojektowany do uproszczenia aktualizacji z jednego wydania Debiana
        do kolejnego. Używa wyrafinowanych algorytmów do określenia
        najlepszego zbioru pakietów do zainstalowania, aktualizacji lub
        usunięcia, tak aby zaktualizować jak najwięcej pakietów w systemie do
        nowszego wydania. W niektórych sytuacjach, może być prościej użyć
        dist-upgrade niż ręcznie rozwiązywać zależności w programie dselect.
        Kiedy dist-upgrade zakończy działanie, można użyć programu dselect do
        zainstalowania pominiętych pakietów.

        Jest ważne, aby dokładnie przyjrzeć się temu, co dist-upgrade
        zamierza zrobić, gdyż jego decyzje mogą czasami zdumiewać.

    Zachowanie programu apt-get można kontrolować za pomocą opcji linii
    poleceń szczegółowo opisanych w stronie podręcznika ekranowego apt-get(8)
    . Najbardziej użyteczną z nich jest -d, która nie instaluje pobranych
    plików. Jeśli system musi pobrać dużą liczbę pakietów, instalowanie ich
    może być niepożądane, jeśli coś pójdzie nie tak. Jeśli użyto -d, to
    pobrane archiwa można zainstalować, ponownie uruchamiając polecenie,
    które spowodowało ich pobranie, tym razem bez opcji -d.


-----------------------------------------------------------------------------

    ^[1] Aby używać serwera proxy, należy najpierw ustawić zmienną
    środowiskową http_proxy, proszę przeczytać sources.list(5)

Rozdział 3. DSelect

    Metoda APT dselect dostarcza kompletnego systemu APT w interfejsie
    użytkownika programu wyboru pakietów dselect. dselect może być użyty do
    wybrania pakietów przeznaczonych do zainstalowania lub usunięcia, a APT
    zainstaluje lub usunie te pakiety.

    Aby włączyć metodę APT należy wybrać opcję "[A] Dostęp" w programie 
    dselect , a następnie wybrać metodę APT. Użytkownik zostanie poproszony o
    skonfigurowanie listy źródeł, będących lokalizacjami, z których będą
    pobierane pakiety. Mogą być to strony internetowe, lokalne serwery
    lustrzane Debiana lub CD-ROM-y. Każde źródło może dostarczać tylko
    fragmentu pełnego archiwum Debiana, a APT automatycznie połączy je w
    kompletny zbiór pakietów. Jeśli używany jest CD-ROM, to dobrym pomysłem
    jest podanie najpierw jego, a potem podanie mirrorów umożliwiających
    dostęp do najnowszych wersji pakietów zawierających poprawki błędów. APT
    automatycznie użyje pakietów z CD-ROM-u zanim zacznie pobierać pakiety z
    Internetu.

      Ustawianie listy źródłowych lokalizacji dystrybucji

     Proszę podać bazowy URL dystrybucji Debiana.
     Obsługiwane schematy połączeń to: http ftp file

     Przykłady:
          file:/mnt/debian,
          https://deb.debian.org/debian,
          http://ftp.pl.debian.org/debian,


     URL [http://llug.sep.bnl.gov/debian]:

    Ustawianie źródeł zaczyna się od pytania o bazową lokalizację Debiana.
    Domyślną wartością jest mirror HTTP. Następnie użytkownik jest pytany o
    dystrybucję do pobrania.

     Proszę podać znacznik dystrybucji do pobrania lub ścieżkę do pliku
     pakietów kończącą się znakiem "/". Zazwyczaj znacznikiem dystrybucji
     jest coś w rodzaju: stable unstable testing

     Dystrybucja [stable]:

    The distribution refers to the Debian version in the archive, stable
    refers to the latest released version and unstable refers to the
    developmental version.

     Proszę podać komponenty do pobrania
     Zazwyczaj komponentem jest coś w rodzaju: main contrib non-free non-free-firmware

     Komponenty [main contrib non-free non-free-firmware]:

    Lista komponentów jest listą pod-dystrybucji do pobrania. Dystrybucja
    jest podzielona ze względu na licencje oprogramowania: main (główna)
    zawiera pakiety zgodne z DFSG ("Wytycznymi Debiana w sprawie Wolnego
    Oprogramowania"),contrib i non-free zawierają pakiety, które zawierają
    restrykcje związane z ich używaniem lub rozpowszechnianiem.

    Można dodać dowolną liczbę źródeł. Skrypt konfigurujący będzie
    kontynuował odpytywanie użytkownika dopóty, dopóki nie poda wszystkich
    źródeł, które chciał skonfigurować.

    Przed rozpoczęciem używania programu dselect należy w menu tego programu
    wybrać "[U] Aktualizacja", abyzaktualizować listę dostępnych pakietów. To
    polecenie jest nadzbiorem polecenia apt-get update, zapewniającym
    programowi dselect dostęp do pobranych informacji o pakietach. "[U]
    Aktualizacja" musi być wykonana, nawet jeśli wcześniej uruchomiono
    apt-get update.

    Następnie można wybrać pakiety do zainstalowania, używając opcji "[S]
    Wybór", a potem zainstalować te pakiety opcją "[I] Instalacja". Używanie
    metody APT czyni opcje "[C] Konfiguracja" i "[R] Usuwanie"
    bezużytecznymi, gdyż "[I] Instalacja" przeprowadza również te dwie
    operacje.

    Domyślnie APT automatycznie usunie pliki pakietów (.deb), gdy tylko
    zostaną zainstalowane. Aby zmienić to zachowanie, proszę umieścić
    Dselect::clean "prompt"; w /etc/apt/apt.conf.

Rozdział 4. Interfejs

Spis treści

4.1. Uruchamianie
4.2. Raport stanu
    4.2.1. Lista dodatkowych pakietów
    4.2.2. Pakiety przeznaczone do usunięcia
    4.2.3. Lista nowych pakietów
    4.2.4. Lista zatrzymanych pakietów
    4.2.5. Ostrzeżenie o zmianie zatrzymanych pakietów
    4.2.6. Podsumowanie
4.3. Wyświetlanie stanu przetwarzania
4.4. Dpkg

    Metoda APT programu dselect i program apt-get dzielą wspólny interfejs.
    Jest to prosty system, który najpierw informuje użytkownika, co będzie
    zrobione, a następnie to robi. ^[2] Po wyświetleniu podsumowania
    informującego o tym, co będzie zrobione, APT wyświetla komunikaty
    dotyczące postępu przeprowadzanych operacji, tak żeby można było
    oszacować czas pozostały do ich zakończenia.

4.1. Uruchamianie

    Przed każdą operacją, z wyjątkiem update, APT przeprowadza pewne akcje
    przygotowujące wewnętrzny stan. Sprawdza również stan systemu. Te same
    operacje można przeprowadzić w dowolnej chwili, uruchamiając apt-get
    check.

    # apt-get check
    Czytanie list pakietów... Gotowe
    Budowanie drzewa zależności... Gotowe

    Pierwszą rzeczą, którą robi, jest wczytanie wszystkich plików pakietów do
    pamięci. APT używa buforowania, tak żeby przyspieszyć tę operację przy
    następnym uruchomieniu. Jeśli nie znajdzie niektórych plików pakietów, to
    wypisze ostrzeżenie, a te pakiety zignoruje.

    Końcową operacją jest szczegółowa analiza zależności w systemie.
    Sprawdzana jest każda zależność każdego pakietu zainstalowanego lub
    rozpakowanego. W razie wykrycia problemów z zależnościami apt-get wypisze
    odpowiedni komunikat i odmówi dalszego działania.

    # apt-get check
    Czytanie list pakietów... Gotowe
    Budowanie drzewa zależności... Gotowe
    Należy uruchomić "apt --fix-broken install", aby je naprawić.
    Następujące pakiety mają niespełnione zależności:
      9fonts: Wymaga: xlib6g ale nie jest zainstalowany
      uucp: Wymaga: mailx ale nie jest zainstalowany
      blast: Wymaga: xlib6g (>= 3.3-5) ale nie jest zainstalowany
      adduser: Wymaga: perl-base ale nie jest zainstalowany
      aumix: Wymaga: libgpmg1 but ale nie jest zainstalowany
      debiandoc-sgml: Wymaga: sgml-base ale nie jest zainstalowany
      bash-builtins: Wymaga: bash (>= 2.01) but 2.0-3 is installed
      cthugha: Wymaga: svgalibg1 but it is not installed
               Wymaga: xlib6g (>= 3.3-5) ale nie jest zainstalowany
      libreadlineg2: Jest w konflikcie z: libreadline2 (<< 2.1-2.1)

    Powyższy przykład przedstawia system mający wiele problemów, włączając to
    poważny problem z libreadlineg2. Każdy pakiet mający niespełnione
    zależności jest wypisywany w osobnej linii razem z niespełnionymi
    zależnościami. Podane jest również krótkie wyjaśnienie dotyczące
    przyczyny problemu.

    Są dwie przyczyny, z których powodu system może być zepsuty w powyższy
    sposób. Pierwszą jest to, że dpkg podczas aktualizacji systemu nie
    zauważył jakiejś subtelnej relacji między pakietami^[3]. Drugą przyczyną
    jest wystąpienie błędu w czasie instalowania pakietu. W takim przypadku
    pakiet może być rozpakowany, mimo że pakiety od niego zależące nie są
    zainstalowane.

    Druga przyczyna jest o wiele mniej poważna niż pierwsza, ponieważ APT
    wymusza pewne więzy integralności dotyczące kolejności instalowania
    pakietów. W obu przypadkach przekazanie programowi apt-get opcji -f
    wymusi na APT znalezienie rozwiązania umożliwiającego mu kontynuowanie
    działania. Metoda APT programu dselect zawsze przekazuje opcję -f, aby
    móc kontynuować po wystąpieniu błędu w skryptach opiekunów pakietów.

    Jednak gdy opcja -f jest używana do poprawienia zależności w poważnie
    uszkodzonym systemie (pierwsza z opisanych wyżej przyczyn), możliwe jest
    że albo od razu zwróci błąd, albo nie powiedzie się sekwencja
    instalowania pakietów. W obu przypadkach należy poprawić zależności
    ręcznie, używając do tego dpkg (być może przekazując mu opcje wymuszające
    "--force-..."), w takim stopniu, aby umożliwić działanie systemowi APT.

4.2. Raport stanu

    Przed rozpoczęciem przetwarzania apt-get wyświetli raport zawierający
    informacje o tym, co będzie zrobione. W ogólności raport ten zależy od
    typu wykonywanej operacji, jednakże występuje w nim kilka elementów
    wspólnych dla wszystkich typów. We wszystkich wypadkach wyświetlane są
    informacje o końcowym stanie, brana jest pod uwagę opcja -f, a także
    wszystkie istotne działania wykonywanego polecenia.

4.2.1. Lista dodatkowych pakietów

    Zostaną zainstalowane następujące dodatkowe pakiety:
      libdbd-mysql-perl xlib6 zlib1 xzx libreadline2 libdbd-msql-perl
      mailpgp xdpkg fileutils pinepgp zlib1g xlib6g perl-base
      bin86 libgdbm1 libgdbmg1 quake-lib gmp2 bcc xbuffy
      squake pgp-i python-base debmake ldso perl libreadlineg2
      ssh

    Lista dodatkowych pakietów wyświetla wszystkie pakiety, które będą
    zainstalowane lub zaktualizowane oprócz tych wymienionych w linii
    poleceń. Jest generowana tylko dla polecenia install. Wymienione pakiety
    są najczęściej wynikiem automatycznej instalacji.

4.2.2. Pakiety przeznaczone do usunięcia

    Następujące pakiety zostaną USUNIĘTE:
      xlib6-dev xpat2 tk40-dev xkeycaps xbattle xonix
      xdaliclock tk40 tk41 xforms0.86 ghostview xloadimage xcolorsel
      xadmin xboard perl-debug tkined xtetris libreadline2-dev perl-suid
      nas xpilot xfig

    Lista pakietów przeznaczonych do usunięcia wyświetla wszystkie pakiety,
    które zostaną usunięte z systemu. Może być pokazana dla każdej operacji i
    powinna być szczegółowo przeanalizowana, aby zapewnić, że żaden istotny
    pakiet nie będzie usunięty. W szczególności opcja -f może wygenerować
    sporo pakietów do usunięcia, także w przypadku jej użycia należy
    szczególnie dokładnie przeanalizować wyświetlany raport. Lista może
    zawierać pakiety usuwane z powodu ich tylko częściowego zainstalowania,
    wynikającego być może z przerwania wcześniejszej instalacji.

4.2.3. Lista nowych pakietów

    Zostaną zainstalowane następujące NOWE pakiety:
      zlib1g xlib6g perl-base libgdbmg1 quake-lib gmp2 pgp-i python-base

    Lista nowych pakietów to proste przypomnienie o tym, co się stanie.
    Wypisane pakiety nie są obecnie zainstalowane w systemie, ale będą, kiedy
    APT skończy działanie.

4.2.4. Lista zatrzymanych pakietów

    Następujące pakiety zostały zatrzymane:
      compface man-db tetex-base msql libpaper svgalib1
      gs snmp arena lynx xpat2 groff xscreensaver

    Jeśli aktualizowany jest cały system, to jest możliwe, że nowe wersje
    pakietów nie będą mogły być zainstalowane, ponieważ wymagają nowych
    pakietów lub są w konflikcie z już zainstalowanymi pakietami. W takim
    wypadku pakiet pojawi się na liście pakietów zatrzymanych. Najlepszym
    sposobem na zainstalowanie takich pakietów jest użycie apt-get install
    lub rozwiązanie problemów z zależnościami za pomocą programu dselect.

4.2.5. Ostrzeżenie o zmianie zatrzymanych pakietów

    Zostaną zmienione następujące zatrzymane pakiety:
      cvs

    Czasami można poprosić APT o zainstalowanie pakietu, który jest
    zatrzymany. W takim przypadku wypisywane jest ostrzeżenie o zmianie
    zatrzymanego pakietu. Może się to zdarzyć tylko podczas dist-upgrade lub
    install.

4.2.6. Podsumowanie

    APT zakończy raport podsumowaniem wszystkich zmian, które przeprowadzi.

    206 aktualizowanych, 8 nowo instalowanych, 25 usuwanych i 51 nieaktualizowanych.
    12 nie w pełni zainstalowanych lub usuniętych.
    Konieczne pobranie 65.7M/66.7M archiwów. Po rozpakowaniu zostanie użyte 26.5M.

    Pierwsza linia podsumowania jest uproszczoną wersją powyższych list i
    zawiera liczbę aktualizacji - to jest pakietów już zainstalowanych,
    których nowsze wersje są dostępne. W drugiej linii wyświetlono liczbę nie
    do końca skonfigurowanych pakietów, prawdopodobnie w wyniku przerwania
    poprzedniej instalacji. Ostatnia linia zawiera dane dotyczące miejsca na
    dysku. Pierwsza para liczb odnosi się do rozmiaru plików archiwum:
    pierwsza liczba oznacza liczbę bajtów, które muszą zostać pobrane ze
    zdalnych serwerów, a druga - całkowity rozmiar wszystkich żądanych
    archiwów. Kolejna liczba oznacza różnicę rozmiarów pomiędzy obecnie
    zainstalowanymi pakietami, a nowo instalowanymi pakietami. W przybliżeniu
    odpowiada przestrzeni dysku, która będzie zajęta w /usr po zakończeniu
    instalacji. Wartość ta może wskazywać na zwolnienie miejsca na dysku,
    jeśli usuwana jest duża liczba pakietów.

    Używając opcji -u, można wygenerować raport pokazujący pakiety
    przeznaczone do aktualizacji, podobny do tego pokazanego w poprzednim
    przykładzie.

4.3. Wyświetlanie stanu przetwarzania

    Podczas pobierania archiwów i plików pakietów APT wyświetla serię
    komunikatów o stanie.

    # apt-get update
    Pob:1 http://ftp.de.debian.org/debian/ stable/main Packages
    Pob:2 http://llug.sep.bnl.gov/debian/ testing/contrib Packages
    Traf http://llug.sep.bnl.gov/debian/ testing/main Packages
    Pob:4 http://ftp.de.debian.org/debian/ unstable/binary-i386/ Packages
    Pob:5 http://llug.sep.bnl.gov/debian/ testing/non-free Packages
    11% [5 testing/non-free `Oczekiwane na nagłówki' 0/32.1k 0%] 2203b/s 1m52s

    Linie zaczynające się od Pob: są wypisywane, kiedy APT zaczyna pobierać
    plik, a ostatnia linia oznacza postęp pobierania. Pierwsza wartość podana
    w procentach określa całkowity procent pobierania wszystkich plików.
    Niestety rozmiar plików Package nie jest znany, tak więc apt-get update
    estymuje procent wykonanego pobierania, co powoduje pewne nieścisłości.

    Następna sekcja linii statusu powtarza się dla każdego wątku pobierania,
    oznacza przeprowadzanie operacji i podaje kilka użytecznych informacji na
    temat tego, co się dzieje. Czasem sekcja ta zawiera komunikat Tworzenie
    procesu potomnego, co oznacza, że system operacyjny ładuje moduł
    pobierania. Pierwszym słowem po znaku "[" jest liczba pobrań, dokładnie
    taka jaka jest pokazana liczba linii historii pobrań. Następnie w
    skróconej formie wyświetlana jest nazwa pobieranego obiektu. W przypadku
    archiwów nazwa ta będzie zawierać nazwę pobieranego pakietu.

    W pojedynczych cudzysłowach podawany jest komunikat wskazujący na postęp
    tworzenia połączenia pobierania danych. Zazwyczaj postęp ten jest
    sekwencją zdarzeń od Podłączanie przez Oczekiwanie na nagłówki do 
    Pobieranie lub Wznawianie. Końcową wartością jest liczba bajtów pobranych
    ze zdalnego serwera. Kiedy tylko pobieranie się rozpocznie, wartość ta
    jest wyświetlana jw formacie typu 102/10.2k, co oznacza, że pobrano 102
    bajty, a oczekuje się jeszcze pobrania 10.2 kilobajtów. Aby zaoszczędzić
    miejsce, całkowity rozmiar jest zawsze wyświetlany jako w postaci
    4-znakowej. Po rozmiarze następuje procentowy wskaźnik postępu pobierania
    danego pliku. Przedostatnim elementem jest bieżąca średnia prędkość
    pobierania, która jest aktualizowane co każde 5 sekund i odzwierciedla
    tempo pobierania w tym okresie. W końcu wyświetlany jest estymowany czas
    pobierania, regularnie aktualizowany i odzwierciedlający czas pozostały
    do zakończenia pobierania przy założeniu utrzymania się pokazanego tempa
    pobierania.

    Linia stanu jest aktualizowana co każde pół sekundy, aby na bieżąco
    informować użytkownika o postępie pobierania, podczas gdy linie "Pob:" są
    przesuwane w dół, gdy tylko zacznie się pobieranie nowego pliku. Ponieważ
    linia stanu jest ciągle zmieniana, wyjście programu nie jest odpowiednie
    do przekierowania do pliku. Aby usunąć linie stanu, należy użyć opcji -q.

4.4. Dpkg

    APT używa programu dpkg do instalowania archiwów i przełączy się do
    interfejsu dpkg, gdy tylko zakończy pobieranie plików. dpkg może również
    zadawać pytania podczas przetwarzania pakietów, a same pakiety także mogą
    zadawać pytania. Każde pytanie zazwyczaj jest poprzedzone opisem, a same
    pytania są zbyt zróżnicowane, by je tutaj opisać.


-----------------------------------------------------------------------------

    ^[2] Metoda programu dselect jest tak naprawdę zbiorem skryptów
    wywołujących apt-get. Metoda ta ma jednakże większą funkcjonalność niż
    sam program apt-get.

    ^[3] APT rozważa wszystkie znane zależności i próbuje nie dopuścić do
    zepsucia pakietów.

