SKŁADNIA
dpkg [opcja...] działanieUWAGA
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]>, 1999Bartosz Feński <[email protected]>, 2004-2005
Robert Luberda <[email protected]>, 2006-2008
Wiktor Wandachowicz <[email protected]>, 2008
Michał Kułach <[email protected]>, 2012