dpkg(1) menedżer pakietów Debiana

SKŁADNIA

dpkg [opcja...] działanie

UWAGA

Ten podręcznik jest przeznaczony dla użytkowników, którzy chcą poznać opcje programu dpkg oraz chcą dowiedzieć się o pakietach więcej niż podaje to dpkg --help.

Ten podręcznik nie wyjaśnia technicznych szczegółów, np. w jaki sposób dpkg instaluje lub usuwa swoje pakiety, gdyż jest to dla przeciętnego użytkownika zupełnie nieistotne.

OPIS

dpkg jest narzędziem do instalowania, tworzenia, usuwania pakietów systemu Debian oraz do zarządzania nimi. Podstawowym i bardziej przyjaznym użytkownikowi narzędziem-nakładką dpkg jest aptitude(1). Sam dpkg jest obsługiwany z linii komend, przez podanie dokładnie jednego działania oraz dodatkowych, nieobowiązkowych opcji. Parametr działanie określa, co dpkg ma zrobić, a dodatkowe opcje modyfikują to działanie.

dpkg może również zostać użyty jako interfejs do dpkg-deb(1) i dpkg-query(1). Listę obsługiwanych działań można znaleźć dalej, w rozdziale DZIAŁANIA. W takim przypadku dpkg wywołuje dpkg-deb lub dpkg-query z podanymi parametrami, ale nie przekazuje żadnych charakterystycznych dla tych programów opcji - aby użyć taką opcję, należy wywołać dany program bezpośrednio.

INFORMACJE O PAKIETACH

dpkg zarządza informacjami o dostępnych pakietach. Informacje zostały podzielone na trzy klasy: stan bieżący, stan wyboru oraz flagę. Wartości te mogą zostać zmienione za pomocą programu dselect.

STAN BIEŻĄCY PAKIETÓW

not-installed (niezainstalowany)
Pakiet nie jest zainstalowany w systemie.
config-files (pliki-konfiguracyjne)
Tylko pliki konfiguracyjne pakietu zostały w systemie.
half-installed (wpółzainstalowany)
Instalacja pakietu została rozpoczęta, ale niedokończona z pewnych powodów.
unpacked (rozpakowany)
Pakiet jest rozpakowany, ale nie skonfigurowany.
half-configured (wpółskonfigurowany)
Pakiet jest rozpakowany, a konfiguracja została rozpoczęta, ale niedokończona z pewnych powodów.
triggers-awaited
Pakiet oczekuje przetworzenia wyzwalaczy przez inny pakiet.
triggers-pending
Pakiet został pobudzony.
installed (zainstalowany)
Pakiet jest rozpakowany i poprawnie skonfigurowany.

STAN WYBORU PAKIETÓW

install (instalacja)
Pakiet został wybrany do zainstalowania.
hold (wstrzymanie)
Pakiet oznaczony jako wstrzymany nie jest obsługiwany przez dpkg, chyba że użyje się opcji --force-hold.
deinstall (deinstalacja)
Pakiet został wybrany do odinstalowania (to znaczy, że chcemy skasować wszystkie pliki pakietu oprócz plików konfiguracyjnych).
purge (wyczyszczenie)
Pakiet został wybrany do wyczyszczenia (to znaczy, że chcemy skasować wszystko z katalogów systemowych, włącznie z plikami konfiguracyjnymi).

FLAGI PAKIETÓW

reinst-required (konieczna-reinstalacja)
Pakiet oznaczony jako konieczna-reinstalacja jest uszkodzony i wymaga reinstalacji. Taki pakiet nie może zostać usunięty, chyba że użyje się opcji --force-remove-reinstreq.

AKCJE

-i, --install plik-pakietu...
Instalacja pakietu. Jeśli została użyta opcja --recursive lub -R, plik-pakietu musi oznaczać wybrany katalog.

Instalacja składa się z następujących kroków:

1. Rozpakowanie plików kontrolnych nowego pakietu.

2. Jeśli inna wersja tego samego pakietu jest już zainstalowana, uruchomienie skryptu prerm starego pakietu.

3. Uruchomienie skryptu preinst, jeśli pakiet go zawiera.

4. Rozpakowanie nowych plików, ale przechowanie starych na wypadek, gdyby instalacja się nie powiodła i trzeba by je odzyskać.

5. Jeśli inna wersja tego samego pakietu była poprzednio zainstalowana, uruchomienie skryptu postrm starego pakietu. Proszę zauważyć, że ten skrypt jest uruchamiany po skrypcie preinst nowego pakietu, ponieważ nowe pliki są zapisywane w tym samym czasie, gdy stare są kasowane.

6. Konfiguracja pakietu. Bardziej szczegółowe informacje zawarto przy opisie parametru --configure.

--unpack plik-pakietu...
Rozpakowanie pakietu, ale bez konfigurowania go. Jeśli została użyta opcja --recursive lub -R, plik-pakietu musi oznaczać wybrany katalog.
--configure pakiet...|-a|--pending
Skonfigurowanie pakietu, który został rozpakowany, ale jeszcze nie skonfigurowany. Jeśli zamiast nazwy pakietu została podana opcja -a lub --pending, rekonfiguracja obejmie wszystkie pakiety rozpakowane, ale jeszcze nie skonfigurowane.

Aby skonfigurować ponownie pakiet, który został wcześniej skonfigurowany, należy użyć polecenia dpkg-reconfigure(8).

Konfigurowanie składa się z następujących kroków:

1. Rozpakowanie nowych plików konfiguracyjnych, ale przechowanie starych na wypadek, gdyby konfigurowanie się nie powiodło i trzeba by je odzyskać.

2. Uruchomienie skryptu postinst, jeśli pakiet go zawiera.

--triggers-only pakiet...|-a|--pending
Przetwarzanie samych wyzwalaczy. Wszystkie zaplanowane wyzwalacze zostaną przetworzone. Jeśli podane są nazwy pakietów, tylko ich wyzwalacze zostaną przetworzone - każdy dokładnie raz, tam gdzie to potrzebne. Użycie tej opcji może pozostawić pakiety w niewłaściwym stanie triggers-awaited lub triggers-pending. Może to być później naprawione przez wywołanie: dpkg --configure --pending.
-r, --remove, -P, --purge pakiet...|-a|--pending
Usuwanie zainstalowanych pakietów. Parametr -r lub --remove powoduje usunięcie wszystkich plików oprócz plików konfiguracyjnych. Pozwala to uniknąć powtórnej konfiguracji, gdyby pakiet był znów instalowany później. (Pliki konfiguracyjne są wymienione w pliku kontrolnym DEBIAN/conffiles pakietu). Parametr -P lub --purge usuwa wszystko, łącznie z plikami konfiguracyjnymi. Jeśli zamiast nazwy pakietu została podana opcja -a lub --pending, usunięte lub wyczyszczone zostaną wszystkie pakiety rozpakowane i wybrane w pliku /var/lib/dpkg/status do usunięcia lub wyczyszczenia. Uwaga: niektóre pliki konfiguracyjne mogą być nieznane dla dpkg ponieważ są oddzielnie tworzone i zarządzane przez skrypty konfiguracyjne. W takim przypadku dpkg nie usunie ich samodzielnie, ale skrypt postrm pakietu (wywoływany przez dpkg) musi zatroszczyć się o ich usunięcie podczas czyszczenia. Oczywiście odnosi się to wyłącznie do plików w katalogach systemowych, a nie do plików konfiguracyjnych zapisywanych do katalogów domowych poszczególnych użytkowników.

Usunięcie pakietu składa się z następujących kroków:

1. Uruchomienie skryptu prerm

2. Usunięcie zainstalowanych plików

3. Uruchomienie skryptu postrm

--update-avail, --merge-avail plik-pakietów
Zaktualizowanie bazy danych programu dpkg oraz dselect o dostępnych pakietach. Opcja --merge-avail powoduje, że poprzednie informacje są łączone z nowymi z pliku_pakietów. Opcja --update-avail powoduje zastąpienie starych informacji nowymi z pliku_pakietów. Plik_pakietów dystrybuowany razem z systemem Debian nazywa się po prostu Packages. dpkg przechowuje informacje o dostępnych pakietach w pliku /var/lib/dpkg/available.

Prostszym poleceniem, którego można użyć w celu pobrania i odświeżenia pliku available, jest dselect update. Proszę zauważyć, że plik ten jest zasadniczo nieużyteczny, jeśli nie używa się dselect tylko nakładki bazującej na APT. Przyczyną tego jest fakt, że APT posiada własny system określania dostępności pakietów.

-A, --record-avail plik-pakietu...
Zaktualizowanie bazy danych programów dpkg oraz dselect o dostępnych pakietach, uwzględniając informacje zawarte w pakiecie plik-pakietu. Jeśli została użyta opcja --recursive lub -R, plik-pakietu musi oznaczać wybrany katalog.
--forget-old-unavail
Aktualnie przestarzałe i nie daje żadnego efektu, ponieważ dpkg automatycznie zapomina o niezainstalowanych, niedostępnych pakietach.
--clear-avail
Skasowanie informacji o dostępnych pakietach.
-C, --audit
Wyszukanie pakietów, które zainstalowane są w systemie tylko częściowo. dpkg zasugeruje, co można zrobić z tymi pakietami, aby w pełni działały.
--get-selections [wzorzec-nazwy-pakietu...]
Pobranie listy wybranych pakietów i wypisanie jej na stdout. Jeżeli nie podano wzorca, pakiety niezainstalowane (czyli takie, które nie zostały uprzednio wyczyszczone) nie zostaną wyświetlone.
--set-selections
Ustawia wybór pakietów używając pliku przeczytanego ze standardowego wejścia. Plik ten powinien być w następującym formacie "pakiet stan", gdzie stan jest jednym z install, hold, deinstall lub purge. Dozwolone są także linie puste i linie komentarza - zaczynające się od "#".

The available database needs to be up-to-date for this command to be useful, otherwise unknown packages will be ignored with a warning. See the --update-avail and --merge-avail commands for more information.

--clear-selections
Oznacza wszystkie pakiety nie będące pakietami niezbędnymi (essential) jako przeznaczone do usunięcia. Opcja ta powinna być użyta bezpośrednio przed --set-selections, aby usunąć wszystkie pakiety niewymienione w --set-selections.
--yet-to-unpack
Wyszukanie pakietów przeznaczonych do zainstalowania, które z pewnych powodów nie mogły zostać zainstalowane.
--add-architecture architektura
Dodaje architekturę do list architektur, z którym pakiety mogą zostać zainstalowane nie używając --force-architecture. Architektura, do której dpkg został zbudowany (tzn. wynik --print-architecture) jest zawsze częścią tej listy.
--remove-architecture architektura
Usuwa architekturę z listy architektur, dla których pakiety mogą być instalowane bez użycia --force-architecture. Jeśli architektura jest obecnie w użyciu przez bazę danych, to ta operacja nie zostanie przeprowadzona, z wyjątkiem użycia opcji --force-architecture. Architektura, do której dpkg został zbudowany (tzn. wynik --print-architecture) nie może zostać usunięta z tej listy.
--print-architecture
Podanie architektury pakietów instalowanych przez dpkg (na przykład "i386").
--print-foreign-architectures
Wypisuje listę dodatkowych architektur (w kolejnych wierszach), z których dpkg może instalować pakiety, dzięki odpowiedniej konfiguracji.
--compare-versions wersja1 op wersja2
Porównanie numerów wersji, gdzie op jest operatorem binarnym. dpkg zwróci prawdę (rezultat zerowy) - gdy warunek jest spełniony, lub zwróci fałsz (rezultat niezerowy) - w przeciwnym razie. Istnieją dwie grupy operatorów, w zależności od tego, w jaki sposób traktuje się pusty numer wersji1 lub wersji2. Operatory, dla których pusty numer wersji oznacza wersję wcześniejszą niż dowolna: lt le eq ne ge gt. Operatory, dla których pusty numer wersji oznacza wersję późniejszą niż dowolna: lt-nl le-nl ge-nl gt-nl. Operatory istniejące, aby zachować kompatybilność z plikiem kontrolnym: < << <= = >= >> >.
-?, --help
Wyświetlenie krótkiego komunikatu pomocy.
--force-help
Wyświetlenie opisu opcji --force-działanie.
-Dh, --debug=help
Wyświetlenie opisu opcji debuggera.
--version
Wyświetlenie informacji o wersji dpkg.
akcje dpkg-deb
Proszę zajrzeć do dpkg-deb(1), aby poznać pełny opis następujących działań.

-b, --build katalog [archiwum|katalog]
    Zbudowanie pakietu deb.
-c, --contents archiwum
    Podanie zawartości pakietu deb.
-e, --control nazwa-pliku [katalog]
    Rozpakowanie plików kontrolnych z pakietu.
-x, --extract archiwum katalog
     Rozpakowanie plików zawartych w pakiecie.
-X, --vextract archiwum katalog
    Rozpakowanie pakietu i podanie nazw plików, które
    zawiera pakiet.
-f, --field archiwum [pole-kontrolne...]
    Podanie informacji z pól kontrolnych pakietu.
--fsys-tarfile archiwum
    Podanie na stdout archiwum tar, które zawiera pakiet
    Debiana.
-I, --info archiwum [plik-kontrolny...]
     Podanie informacji o pakiecie.

akcje dpkg-query
Proszę przeczytać dpkg-query(8), aby uzyskać szczegółowe informacje o następujących działaniach.

-l, --list wzorzec-nazw-pakietów...
    Wyświetla pakiety pasujące do wzorca.
-s, --status nazwa-pakietu...
    Wyświetla informacje o stanie danego pakietu.
-L, --listfiles nazwa-pakietu...
    Wyświetla listę plików zainstalowanych w systemie przez pakiet nazwa-pakietu.
-S, --search wzorzec-wyszukiwania-nazw-plików...
    Wyszukuje nazwy plików w zainstalowanych pakietach.
-p, --print-avail nazwa-pakietu...
    Wyświetla szczegółowe informacje na temat pakietu nazwa-pakietu,
    pochodzące z pliku /var/lib/dpkg/available. Użytkownicy nakładek
    opartych o APT powinni używać apt-cache show package-name zamiast
    tej opcji.

OPCJE

Wszystkie opcje mogą być podane zarówno w linii poleceń, jak i w pliku konfiguracyjnym /etc/dpkg/dpkg.cfg programu dpkg lub w plikach (o nazwach pasujących do wzorca powłoki "[0-9a-zA-z_-]*") w katalogu konfiguracyjnym /etc/dpkg/dpkg.cfg.d/. Każda linia pliku konfiguracyjnego jest albo opcją (dokładnie taką samą jak opcja linii poleceń, ale bez początkowych myślników), albo komentarzem (jeżeli zaczyna się od #).
--abort-after=liczba
Zmiana liczby błędów, po których dpkg zaprzestanie działania. Domyślna wartość to 50.
-B, --auto-deconfigure
Gdy pakiet jest usuwany, możliwe jest, że inny zainstalowany pakiet zależy od tego usuwanego. Podanie tej opcji spowoduje automatyczne dekonfigurowanie pakietów, które są zależne od usuwanego.
-Dósemkowo, --debug=ósemkowo
Włączenie trybu debuggera. ósemkowo jest liczbą ósemkową będącą sumą logiczną bitów opcji debuggera z poniższej listy (te wartości mogą się zmienić w przyszłości). Parametr -Dh lub --debug=help wyświetla te wartości.


      numer  opis
         1   Ogólnie przydatne informacje o postępie
         2   Wywołanie i stan skryptów kontrolnych
        10   Informacje o każdym przetwarzanym pliku
       100   Więcej informacji o każdym przetwarzanym pliku
        20   Informacje o każdym pliku konfiguracyjnym
       200   Więcej informacji o każdym pliku konfiguracyjnym
        40   Zależności i konflikty
       400   Więcej informacji o zależnościach i konfliktach
     10000   Informacje o aktywacji i przetwarzaniu wyzwalaczy
     20000   Więcej informacji dotyczących wyzwalaczy
     40000   Szczegółowe informacje dotyczące wyzwalaczy
      1000   Mnóstwo informacji m.in. o plikach info z bazy danych dpkg
      2000   Reszta szczegółowych informacji

--force-działania, --no-force-działania, --refuse-działania

Wymuś (--force-) wykonanie pewnych działań lub pozostaw domyślny sposób (no-force i refuse oznaczają to samo) wykonania działań. działania to rozdzielona przecinkami lista działań. --force-help wyświetla opis tych działań. Działania oznaczone przez (*) są domyślnie wymuszone.

Ostrzeżenie: Te opcje są zwykle przeznaczone wyłącznie dla doświadczonych użytkowników. Użycie ich bez pełnego zrozumienia efektu działania może spowodować uszkodzenie systemu.

all: Włącza (lub wyłącza) wszystkie opcje typu "force".

downgrade(*): Zainstalowanie pakietu, nawet gdy nowsza jego wersja jest już zainstalowana.

Ostrzeżenie: W chwili obecnej dpkg nie sprawdza zależności podczas instalowania starszej wersji pakietu i dlatego nie wypisze ostrzeżenia, jeżeli zainstalowanie starszej wersji popsuje zależności innych pakietów. Instalowanie starszych wersji niezbędnych (essential) pakietów może spowodować - i jest to poważny skutek uboczny - że Twój system nie będzie się nadawał do użytku. Proszę używać tej opcji ostrożnie.

configure-any: Skonfigurowanie wszystkich rozpakowanych ale nieskonfigurowanych pakietów, od których zależy bieżący pakiet.

hold: Działanie obejmie także pakiety oznaczone jako "wstrzymane" (hold).

remove-reinstreq: Usunięcie pakietu, nawet wtedy gdy jest uszkodzony i wymaga przeinstalowania. Może to spowodować pozostawienie części pakietu w systemie, gdyż dpkg zapomni o niej.

remove-essential: Usunięcie pakietu, nawet wtedy gdy jest on uznany za niezbędny (essential). Pakiety niezbędne zawierają podstawowe polecenia Uniksa. Usunięcie ich może spowodować, że system przestanie działać. Należy zachować szczególną ostrożność przy użyciu tej opcji.

depends: Zamiana wszystkich problemów z zależnościami na ostrzeżenia.

depends-version: Zignorowanie problemów z numerami wersji przy sprawdzaniu zależności.

breaks: Instalacja, nawet jeśliby to popsuło inny pakiet.

conflicts: Instalacja, nawet gdy pakiet powoduje konflikt z innym. Powstać może niebezpieczeństwo nadpisania plików z innego pakietu, dlatego należy zachować ostrożność przy użyciu tej opcji.

confmiss: Zawsze będą instalowane brakujące pliki konfiguracyjne, jeśli zmieniła się wersja pakietu. Używanie tej opcji może być niebezpieczne, ponieważ nie zachowuje to zmiany dokonanej na pliku (czyli jego usunięcia).

confnew: Jeśli plik konfiguracyjny został zmodyfikowany i zmieniła się wersja pakietu, zainstalowana zostanie jego nowa wersja bez pytania, chyba że użyto również opcji --force-confdef, co spowoduje wykonanie domyślnej akcji.

confold: Jeśli plik konfiguracyjny został zmodyfikowany i zmieniła się wersja pakietu, stara wersja zostanie zachowana bez pytania, chyba że użyto również opcji --force-confdef, co spowoduje wykonanie domyślnej akcji.

confdef: Jeśli plik konfiguracyjny został zmodyfikowany i zmieniła się wersja pakietu, wybrane zostanie domyślne działanie. Jeżeli nie określono domyślnej akcji, użytkownik zostanie poproszony o dokonanie wyboru. Podanie dodatkowo opcji --force-confnew lub --force-confold zdecyduje o dalszym działaniu.

confask: Jeśli plik konfiguracyjny został zmodyfikowany, zaoferowana zostanie zawsze opcja zastąpienia go z wersją z pakietu, nawet jeśli wersja pakietu nie zmieniła się. Jeśli użyto którejś z opcji --force-confmiss, --force-confnew, --force-confold lub --force-confdef, to zdecyduje ona o dalszym działaniu.

overwrite: Nadpisanie plików z innych pakietów, w przypadku gdy dany plik występuje także w innym pakiecie.

overwrite-dir Nadpisanie katalogów z innych pakietów, w przypadku gdy dany katalog występuje także w innym pakiecie.

overwrite-diverted: Nadpisanie plików ominiętych plikami nieominiętymi.

unsafe-io: Nie przeprowadza bezpiecznych operacji wejścia/wyjścia podczas wypakowywania. Obecnie oznacza to, że system plików nie będzie przeprowadzał synchronizacji przed zmianami nazw plików, powodującej znaczny spadek wydajności w niektórych systemach plików. Niestety te systemy wymagają bezpiecznego wejścia/wyjścia, z powodu ich niepewnego zachowania, powodującego powstawanie plików o zerowej długości przy nagłej awarii systemu.

Uwaga: W przypadku ext4 - głównej przyczyny problemów - proszę rozważyć użycie w zamian opcji montowania nodelalloc, która rozwiązuje zarówno problemy z wydajnością jak i z bezpieczeństwem danych, to ostatnie dzięki nietworzeniu przez system plików o zerowej długości przy nagłej awarii systemu, przez oprogramowanie nie wykonujące synchronizacji pomiędzy zmianami nazw.

Uwaga: Użycie tej opcji może zwiększyć wydajność kosztem utraty danych, proszę używać ostrożnie.

architecture: Działanie obejmie pakiety z niepoprawną lub nieokreśloną architekturą.

bad-version: Przetwarza nawet pakiety z nieprawidłowymi wersjami.

bad-path: Zignorowanie braku pewnych programów w ścieżce zmiennej systemowej PATH.

not-root: Próba (de)instalacji, gdy dpkg nie jest uruchamiany z konta administratora.

bad-verify: Instalowanie pakietu, nawet jeżeli nie powiedzie się sprawdzenie jego autentyczności.

--ignore-depends=pakiet,...
Zignorowanie sprawdzania zależności od podanych pakietów (a ściślej rzecz biorąc, sprawdzanie się odbywa, ale w przypadku konfliktów wyświetlane jest tylko ostrzeżenie).
--no-act, --dry-run, --simulate
Podejmowane działania nie powodują żadnych zmian. Ta opcja jest użyteczna, gdy potrzeba sprawdzić, czy działanie się wykona, ale bez powodowania zmian czegokolwiek.

Opcję --no-act należy podać jako pierwszy parametr, gdyż w przeciwnym razie można otrzymać niespodziewane efekty. (np. dpkg --purge bla --no-act wyczyści pakiet bla, a następnie spróbuje wyczyścić pakiet o nazwie --no-act, mimo że najprawdopodobniej spodziewałeś się, że takie polecenie nic nie zrobi).

-R, --recursive
Działanie obejmie wszystkie pliki *.deb z podanego katalogu, wraz z podkatalogami tego katalogu. Ta opcja może zostać użyta wraz z -i, -A, --install, --unpack oraz --avail.
-G
Nieinstalowanie pakietu, jeśli jego nowsza wersja jest już zainstalowana. Jest to dokładnie to samo, co --refuse-downgrade.
--admindir=katalog
Zmiana domyślnego katalogu administracyjnego, zawierającego wiele plików dostarczających informacji o stanie zainstalowanych i niezainstalowanych pakietów itp. (Wartość domyślna to /var/lib/dpkg).
--instdir=katalog
Zmiana domyślnego katalogu instalacyjnego, czyli katalogu, w którym pakiety są instalowane. instdir jest także katalogiem przekazywanym do chroot(2) przed uruchomieniem skryptów dostarczonyhc przez opiekuna pakietu, co oznacza, że skrypty te widzą instdir jako główny katalog hierarchii. (Wartość domyślna to /).
--root=katalog
Zmiana root zmienia instdir na katalog i admindir na katalog/var/lib/dpkg.
-O, --selected-only
Działanie obejmuje wyłącznie pakiety wybrane do instalacji. Wybór może zostać dokonany przez polecenie dselect lub dpkg, gdy wykonuje operacje na pakietach. Na przykład pakiet usuwany jest zaznaczany jako wybrany do odinstalowania.
-E, --skip-same-version
Nieinstalowanie pakietu, jeśli o tej samej wersji jest już zainstalowany w systemie.

--pre-invoke=polecenie
--post-invoke=polecenie

Określa dodatkowe polecenie, które będzie wywołane przez "sh -c" przed lub po wykonaniu przez dpkg akcji: unpack, configure, install, triggers-only, remove oraz purge. Opcja ta może być podana wielokrotnie. Zachowywana jest kolejność podawania opcji, poprzedzane są one jeszcze opcjami z plików konfiguracyjnych. Zmienna środowiska DPKG_HOOK_ACTION jest ustawiana dla dodatkowych poleceń na wartość odpowiadającą bieżącej akcji dpkg. Uwaga: nakładki mogą uruchamiać dpkg kilka razy w ciągu jednego wywołania, co może spowodować uruchomienie dodatkowych poleceń więcej razy niż oczekiwano.

--path-exclude=wzorzec-glob
--path-include=wzorzec-glob

Ustawia wzorzec-glob jako filtr ścieżki, przez wyłączenie, lub ponowne włączenie poprzednio wyłączonych ścieżek, pasujących do podanych wzorców, podczas instalacji.

Uwaga: proszę wziąć pod uwagę, że poleganie na wyłączonych ścieżkach może całkowicie zepsuć system, proszę używać z rozwagą.

Wzorce glob używają tych samych masek, co powłoka, gdzie "*" dopasowuje dowolną sekwencje znaków, w tym łańcuch pusty i "/". Na przykład '/usr/*/READ*' dopasuje '/usr/share/doc/package/README'. Jak zwykle, "?" dopasowuje dowolny pojedynczy znak (w tym "/"). "[" rozpoczyna klasę znakową, która zawiera listę znaków, przedziałów i uzupełnień. Szczegółowa informacja znajduje się w podręczniku glob(7). Uwaga: obecna implementacja może włączać ponownie więcej katalogów i dowiązań symbolicznych niż to konieczne, aby zapewnić bezpieczeństwo i zapobiec możliwym problemom z rozpakowanie, przyszłe wersje mogą naprawić ten problem.

Można użyć tej opcji do usunięcia wszystkich ścieżek z wyjątkiem podanych, typowym przypadkiem jest:

--path-exclude=/usr/share/doc/*
--path-include=/usr/share/doc/*/copyright

aby usunąć wszystkie pliki z dokumentacją, z wyjątkiem plików z informacjami o prawach autorskich.

Te dwie opcje można podać wiele razy mogą się również przeplatać. Obie są przetwarzane w podanej kolejności, a ostatnia reguła, która pasuje do nazwy pliku jest ostatecznie rozstrzygająca.

--status-fd n
Wysłanie "czytelnego dla maszyny" statusu pakietu i informacji o postępie do deskryptora pliku n. Ta opcja może być podana wielokrotnie. Informacja jest ogólnie zapisywana po jednym wpisie w linii, w jednej z następujących form:
status: pakiet: status
Nastąpiła zmiana statusu pakietu, status jest taki jak w pliku statusu pakietu.
status: pakiet : error : rozszerzony-komunikat-błędu
Wystąpił błąd. Wszystkie nowe wiersze w rozszerzonym-komunikacie-błędu będą przekonwertowane na spacje przed wyświetleniem.
status: plik : conffile-prompt : 'prawdziwy-stary' 'prawdziwy-nowy' zmiany-użytkownika zmiany-dystrybucyjne
Użytkownikowi zostanie przedstawione pytanie odnośnie pliku konfiguracyjnego.
processing: etap: pakiet
Wysyłane tuż przez rozpoczęciem etapu przetwarzania. etap jest jednym z upgrade, install (oba wysyłane przed rozpakowaniem), configure, trigproc, disappear, remove, purge.
--status-logger=polecenie
Wysłanie "czytelnego dla maszyny" statusu pakietu i informacji o postępie na standardowe wejście polecenia. Ta opcja może być podana wielokrotnie. Format wyjściowy jest taki sam jak w --status-fd.
--log=nazwa-pliku
Zapisuje informacje o zmianach stanu i akcjach do pliku logu nazwa-pliku, zamiast do domyślnego pliku /var/log/dpkg.log. Jeżeli tę opcję podano kilka razy, brany jest pod uwagę plik podany w ostatniej opcji. Komunikaty logu są w postaci"YYYY-MM-DD HH:MM:SS status pakiet wersja-zainstalowana" dla zmian stanu; "YYYY-MM-DD HH:MM:SS akcja pakiet wersja-instalowana wersja-dostępna" dla akcji, gdzie akcja jest jedną z install (instalacja), upgrade (aktualizacja), remove (usuwanie), purge (czyszczenie) oraz "YYYY-MM-DD HH:MM:SS conffile nazwa-pliku decyzja" dla zmian plików konfiguracyjnych, gdzie decyzja to albo install (instalacja nowej wersji), albo keep (zachowanie poprzedniej wersji).
--no-debsig
Nie próbuje weryfikować sygnatur pakietu.
--no-triggers
Nie uruchamiaj żadnych wyzwalaczy w tym przebiegu (aktywacje nadal będą zarejestrowane). Przy użyciu wraz z --configure pakiet lub --triggers-only pakiet skrypt "postinst" wskazanego pakietu nadal zostanie uruchomiony, nawet jeśli wymagane jest tylko uruchomienie wyzwalaczy. Użycie tej opcji może pozostawić pakiety w niewłaściwym stanie triggers-awaited lub triggers-pending. Może to być później naprawione przez wywołanie: dpkg --configure --pending.
--triggers
Anuluje poprzednie --no-triggers.

PLIKI

/etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
Fragmentaryczne pliki konfiguracyjne.
/etc/dpkg/dpkg.cfg
Plik konfiguracyjny zawierający domyślne opcje.
/var/log/dpkg.log
Domyślny plik logu (patrz /etc/dpkg/dpkg.cfg(5) i opcja --log).

Pozostałe pliki wymienione poniżej odnoszą się do swoich domyślnych katalogów. Opcja --admindir może zmienić lokalizację tych plików.

/var/lib/dpkg/available
Lista dostępnych pakietów.
/var/lib/dpkg/status
Stan dostępnych pakietów. Ten plik zawiera informacje o tym, czy dany pakiet jest wybrany do skasowania, czy jest zainstalowany itp. Te informacje są opisane w sekcji INFORMACJE O PAKIETACH.

Kopia zapasowa pliku statusu jest tworzona w /var/backups każdego dnia. Może to być przydatne jeśli zostanie on utracony lub uszkodzony z powodu kłopotów z systemami plików.

Poniższe pliki są częścią składową pakietów binarnych. Więcej informacji o nich można znaleźć w deb(5).

control
conffiles
preinst
postinst
prerm
postrm

ŚRODOWISKO

HOME
Jeśli jest ustawiona, to dpkg będzie jej używał jako katalogu z którego odczytuje plik konfiguracyjny użytkownika.
TMPDIR
Jeśli jest ustawiona, dpkg będzie jej używał jako katalogu do tworzenia plików i katalogów tymczasowych.
PAGER
Program uruchamiany przez dpkg do wyświetlania plików konfiguracyjnych (conffiles).
SHELL
Program uruchamiany przez dpkg, gdy trzeba uruchomić nową sesję powłoki.
COLUMNS
Ustawia liczbę kolumn używanych przez dpkg w czasie wyświetlania sformatowanego tekstu. Obecnie używane tylko przez opcję -l.
DPKG_SHELL_REASON
Definiowana przez dpkg w powłoce tworzonej do rozeznania się w sytuacji przy plikach konfiguracyjnych (conffile). Obecnie, prawidłową wartością jest conffile-prompt.
DPKG_CONFFILE_OLD
Definiowana przez dpkg w powłoce tworzonej do rozeznania się w sytuacji przy plikach konfiguracyjnych (conffile). Zawiera ścieżkę do starego pliku konfiguracyjnego (conffile).
DPKG_CONFFILE_NEW
Definiowana przez dpkg w powłoce tworzonej do rozeznania się w sytuacji przy plikach konfiguracyjnych (conffile). Zawiera ścieżkę do nowego pliku konfiguracyjnego (conffile).
DPKG_RUNNING_VERSION
Zdefiniowana przez dpkg w środowisku skryptu opiekuna pakietu, jako wersja aktualnie uruchomionej instancji programu dpkg.
DPKG_MAINTSCRIPT_PACKAGE
Zdefiniowana przez dpkg w środowisku skryptu opiekuna pakietu, jako nazwa przetwarzanego pakietu.
DPKG_MAINTSCRIPT_ARCH
Zdefiniowana przez dpkg w środowisku skryptu opiekuna pakietu, jako architektura dla której budowano pakiet.
DPKG_MAINTSCRIPT_NAME
Zdefiniowana przez dpkg w środowisku skryptu opiekuna pakietu, jako nazwa działającego skryptu (preinst, postinst, prerm, postrm).

PRZYKŁADY

Aby wypisać zainstalowane pakiety związane z edytorem vi(1) (proszę zauważyć, że dpkg-query nie ładuje już domyślnie dostępnych plików - w tym celu powinny się używać opcji dpkg-query --load-avail):

    dpkg -l '*vi*'

Wyświetlenie informacji z pliku /var/lib/dpkg/available o dwóch pakietach:

     dpkg --print-avail elvis vim | less

Samodzielne przeszukanie informacji o pakietach:

     less /var/lib/dpkg/available

Wykasowanie zainstalowanego pakietu elvis:

     dpkg -r elvis

Aby zainstalować pakiet, należy wpierw znaleźć go w archiwum lub na CDROM. Plik "available" pokazuje, że pakiet vim jest w sekcji "editors":

     cd /media/cdrom/pool/main/v/vim
     dpkg -i vim_4.5-3.deb

Aby stworzyć kopię lokalnie wybranych pakietów:

     dpkg --get-selections >mojepakiety

You might transfer this file to another computer, and after having updated the available database there with your package manager frontend of choice (see https://wiki.debian.org/Teams/Dpkg/FAQ for more details), for example:

     avail=`mktemp`
     apt-cache dumpavail >"$avail"
     dpkg --merge-avail "$avail"
     rm "$avail"
you can install it with:

     dpkg --clear-selections
     dpkg --set-selections <mojepakiety

Należy zauważyć, że ta opcja nie powoduje zainstalowania lub usunięcia czegokolwiek, ale tylko zaznacza wskazane pakiety do zainstalowania bądź usunięcia. Do pobrania i zainstalowania tych pakietów trzeba użyć innego programu. Na przykład można w tym celu użyć polecenia apt-get dselect-upgrade.

Zwyczajowo do wyboru pakietów służy dselect(1), który daje większe możliwości zmiany ich stanu.

DODATKOWA FUNKCJONALNOŚĆ

Dodatkową funkcjonalność można uzyskać, instalując którykolwiek z następujących pakietów: apt, aptitude oraz debsums.

BŁĘDY

--no-act podaje raczej zbyt mało pomocnych informacji.

AUTORZY

Patrz plik /usr/share/doc/dpkg/THANKS.gz zawierający listę osób, które przyczyniły się do rozwoju programu dpkg.

TŁUMACZE

Piotr Roszatycki <[email protected]>, 1999
Bartosz Feński <[email protected]>, 2004-2005
Robert Luberda <[email protected]>, 2006-2008
Wiktor Wandachowicz <[email protected]>, 2008
Michał Kułach <[email protected]>, 2012