other sections
dpkg(1) | Dpkg-sviten | dpkg(1) |
NAMN¶
dpkg - en mellannivåpakethanterare för DebianSYNOPS¶
dpkg [flagga...] åtgärdVARNING¶
Manualen är avsedd för användare som vill få en mer detaljerad förståelse för dpkgs kommandoradsflaggor och pakettillstånd än vad som berättas med dpkg --help.BESKRIVNING¶
dpkg är ett verktyg för att installera, bygga, ta bort och hantera Debianpaket. Det primära och mer användarvänliga skalet runt dpkg är aptitude(1). dpkg kontrolleras helt och hållet via kommandoradsparametrar, vilka består av exakt en åtgärd och noll eller fler flaggor. Åtgärdsparametern talar om för dpkg vad som skall göras, och flaggorna styr på vilket sätt åtgärden skall utföras.INFORMATION OM PAKET¶
dpkg upprätthåller viss användbar information om tillgängliga paket. Informationen delas in i tre klasser: tillstånd, markeringstillstånd och flaggor. Dessa värden är avsedda att huvudsakligen ändras via dselect.PAKETTILLSTÅND¶
- ej installerat ("not-installed")
- Paketet är inte installerat på ditt system.
- konfigurationsfiler ("config-files")
- Endast konfigurationsfilerna för paketet finns på systemet.
- halvt installerat ("half-installed")
- Installationen av paketet har påbörjats, men av någon orsak inte slutförts.
- uppackat ("unpacked")
- Paketet är uppackat, men inte konfigurerat.
- halvt konfigurerat ("half-configured")
- Paketet är uppackat och konfigurationen har påbörjats, men av någon orsak inte slutförts.
- väntar på utlösare ("triggers-awaited")
- Paketet väntar på hantering av utlösare av ett annat paket.
- utlösare väntar ("triggers-pending")
- Paketet har utlösts.
- installerat (installed)
- Paketet är uppackat och korrekt inställt.
MARKERINGSTILLSTÅND FÖR PAKET¶
- installera ("install")
- Paketet är markerat för installation.
- håll ("hold")
- Ett paket som är markerat med håll hanteras inte av dpkg såvida inte det framtvingas med flaggan --force-hold.
- ta bort ("deinstall")
- Paketet är markerat för avinstallation (dvs. vi vill ta bort alla filer förutom konfigurationsfilerna).
- rensa ("purge")
- Paketet är markerat för rensning (dvs. vi vill ta bort allting från systemkataloger, även konfigurationsfiler).
PAKETFLAGGOR¶
- ominstallation krävs ("reinst-required")
- Ett paket markerat ominstallation krävs är trasigt och kräver ominstallation. Dessa paket kan inte tas bort, såvida inte det framtvingas med flaggan --force-remove-reinstreq.
ÅTGÄRDER¶
- -i, --install paketfil...
- Installera paketet. Om flaggan --recursive eller
-R anges måste paketfil istället vara en katalog.
- --unpack paketfil ...
- Packa upp paketet, men konfigurera det inte. Om flaggan --recursive eller -R anges måste paketfil istället vara en katalog.
- --configure paket...|-a|--pending
- Konfigurera ett paket som har packats upp men ännu
inte konfigurerats. Om -a eller --pending anges
istället för paket konfigureras alla paket som har
packats upp men ännu inte konfigurerats.
- --triggers-only paket...|-a|--pending
- Hanterar bara utlösare. Alla avvaktande utlösare kommer att hanteras. Om paketnamn anges kommer endast dessa pakets utlösare att hanteras, precis en gång, om nödvändigt. Om du använder denna flagga kan det hända att paket hamnar i felaktiga väntar på utlösare- och utlösare väntar-tillstånd. Detta kan rättas senare genom att köra: dpkg --configure --pending.
- -r, --remove, -P, --purge paket...| -a|--pending
- Ta bort ett installerat paket. -r eller
--remove tar bort allting förutom konfigurationsfiler, vilket
gör att du kan undvika att konfigurera om paketet om du senare
installerar om det. (Konfigurationsfiler är de filer som listas i
styrfilen debian/conffiles). -P eller --purge tar
bort allting, inklusive konfigurationsfiler. Om -a eller
--pending anges istället för ett paketnamn kommer alla
installerade uppackade paket som är markerade att tas bort eller
rensas i filen /var/lib/dpkg/status att tas bort respektive rensas.
Observera: fet är möjligt att dpkg inte känner till
vissa konfigurationsfiler på grund av att de skapas och hanteras
separat via konfigurationsskript. I så fall kommer inte dpkg
självt ta bort dem, utan paketets postrm-skript (som anropas
av dpkg) måste ta hand om att de tas bort när paketet tas
bort med --purge. Detta gäller naturligtvis endast för
filer i systemkatalogerna, inte konfigurationsfiler som skrivs i enstaka
användares hemkataloger.
- --update-avail, --merge-avail Packages-fil
- Uppdatera dpkgs och dselects lista över
vilka paket som finns tillgängliga. Med --merge-avail
kombineras den gamla informationen med informationen från
Packages-filen. Med --update-avail ersätts den gamla
informationen med informationen från Packages-filen.
Packages-filerna som medföljer Debian heter helt enkelt
Packages. dpkg behåller sin lista över
tillgängliga paket i /var/lib/dpkg/available.
- -A, --record-avail paketfil ...
- Uppdatera dpkgs och dselects lista över vilka paket som finns tillgängliga med information från paketet paketfil. Om flaggan --recursive eller -R anges måste paketfil istället vara en katalog.
- --forget-old-unavail
- En numera föråldrad flagga som inte utför någonting, då dpkg automatiskt glömmer ej installerade och ej tillgängliga paket.
- --clear-avail
- Radera existerande information om vilka paket som är tillgängliga.
-
-C, --audit - Söker efter paket som endast installerats delvis på ditt system. dpkg kommer att föreslå vad som behöver göras för att få dem att fungera.
- --get-selections [paketnamnsmönster...]
- Hämta en lista över paketval och skriv den till standard ut. Paket som inte är installerats (dvs. de som tidigare helt har tagits bort) kommer inte att visas om inte ett mönster anges.
- --set-selections
- Sätt paketvalslistan med den fil som läses
från standard in. Filen måste vara på formatet "
paket status", där status är en av
install, hold, deinstall eller purge. Tomrader
och kommentarsrader som börjar med "#" är också
tillåtna.
- --clear-selections
- Sätt det önskade tillståndete för varje icke-grundläggande paket till avinstallera. Detta är avsett att användas direkt före --set-selections, för att avinstallera alla paket som inte finns med i listan som anges av --set-selections.
- --yet-to-unpack
- Söker efter paket som markerats för installation men som av någon anledning ännu inte har installerats.
- --add-architecture arkitektur
- Lägg till arkitektur i listan över arkitekturer för vilka paket kan installeras utan att använda --force-architecture. Arkitekturen dpkg har byggts för (dvs. utdata från --print-architecture) är alltid en del av listan.
- --remove-architecture arkitektur
- Ta bort arkitektur från listan över arkitekturer för vilka paket kan installeras utan att använda --force-architectures. Om arkitekturen för närvarande används i databasen kommer operationen att vägras, såvida inte --force-architectures anges. Arkitekturen dpkg byggs för (dvs. utdata från --print-architecture) kan aldrig tas bort från listan.
- --print-architecture
- Visa arkitektur för paketen dpkg installerar (till exempel "i386").
- --print-foreign-architectures
- Visa en lista, avdelad med nyradstecken, över extraarkitekturer dpkg har konfigurerats att tillåta installation av paket för.
- --compare-versions ver1 op ver2
- Jämför versionsnummer, där op är en binär operator. dpkg returnerar framgång (noll) om det angivna värdet uppfylls, och misslyckande (icke-noll) i annat fall. Det finns två grupper operatorer, vilka endast skiljer sig i hur de hanterar när ver1 eller ver2 är tom. Dessa hanterar tom version som om den är tidigare än alla andra versioner: lt le eq ne ge gt. Dessa hanterar tom version som om den är senare än alla andra versioner: lt-nl le-nl ge-nl gt-nl. Dessa tillhandahålls endast för kompatibilitet med styrfilssyntaxen: < << <= = >= >> >.
- -?, --help
- Visar en kortfattad hjälptext.
- --force-help
- Get hjälp om --force-nånting-flaggorna.
- -Dh, --debug=help
- Ger hjälp om felsökningsflaggorna.
- --version
- Visar dpkgs versionsinformation.
- dpkg-deb-åtgärder
- Se dpkg-deb(1) för ytterligare information om
följande åtgärder:
-b, --build katalog [arkiv|filnamn] Bygg ett deb-paket. -c, --contents arkiv Visar innehållet i ett deb-paket. -e, --control filnamn [katalog] Extraherar styrinformation från ett paket. -x, --extract arkivkatalog Extraherar filerna från ett paket. -X, --vextract arkivkatalog Extraherar och visar filnamnen i ett paket. -f, --field arkiv [control-fält] ... Visar fält från paketets styrfil (control). --fsys-tarfile arkiv Visar filsystems-tarfilen i Debianpaketet. -I | --info arkiv [control-fil] Visa information om ett paket.
- dpkg-query-åtgärder
- Se dpkg-query(1) för ytterligare information om
följande åtgärder:
-l, --list paketnamnsmönster ... Lista paket som matchar det givna mönstret. -s, --status paketnamn ... Rapportera status om det angivna paketet. -L, --listfiles paketnamn ... Lista filer som installerats på ditt system från paketnamn. -S, --search filnamnssökmönster ... Sök efter filnamnet bland de installerade paketen. -p, --print-avail paketnamn Visa detaljer om paketnamn, som i /var/lib/dpkg/available/. De som använder APT-baserade skal bör i stället använda apt-cache show paketnamn.
FLAGGOR¶
Alla flaggorna kan ges både på kommandoraden och i dpkgs konfigurationsfil /etc/dpkg/dpkg.cfg eller fragmentfilerna (vars namn motsvarar skalmönstret '[0-9a-zA-Z_-]*') i konfigurationskatalogen /etc/dpkg/dpkg.cfg.d/. En rad i konfigurationsfilen är antingen en flagga (precis samma som på kommandoraden, men utan inledande bindestreck) eller en kommentar (om den börjar med ett #).- --abort-after=antal
- Ställer in efter hur många fel dpkg skall avbryta. Förvalet är 50.
- -B, --auto-deconfigure
- När ett paket tas bort är det möjligt att ett annat paket beror på det borttagna paketet. Om du anger flaggan kommer de paket som beror på det borttagna paketet automatiskt att avkonfigureras.
- -Doktalvärde, --debug=oktalvärde
- Aktiverar felsökning. oktalvärdet skapas
genom att utföra bitvis logisk "eller" av de önskade
värdena från listan nedan (observera att dessa värden kan
ändras i framtida versioner). -Dh eller --debug=help
visar dessa felsökningsvärden.
Tal Beskrivning
1 Allmänt hjälpsam förloppsinformation
2 Anrop och status för utvecklarskript
10 Utdata för varje fil som hanteras
100 Massvis med utdata för varje fil som hanteras
20 Utdata för varje konfigurationsfil
200 Massvis med utdata för varje konfigurationsfil
40 Beroenden och konflikter
400 Massvis av beroende-/konfliktutdata
10000 Aktivering och hantering av utlösare
20000 Massvis av utdata om utlösare
40000 Dumma mängder utdata om utlösare
1000 Massvis av pladder om bl.a dpkg/info-katalogen
2000 Knäppa mängder pladder
- --force-saker | --no-force-saker | --refuse-saker
-
- --ignore-depends=paket,...
- Ignorera beroendekontroll för angivna paket (i verkligheten utförs kontrollen, men det ges endast varningar, ingenting annat).
- --no-act, --dry-run, --simulate
- Gör allting som efterfrågas, men skriv inte
några ändringar. Detta används för att se vad som
skulle ha hänt med åtgärden utan att faktiskt ändra
något.
- -R, --recursive
- Hantera alla vanliga filer som matchar sökmönstret *.deb rekursivt i de kataloger som anges, med alla sina underkataloger. Flaggan kan användas tillsammans med -i, -A, --install, --unpack och --avail.
- -G
- Installera inte paketet om en nyare version av samma paket redan är installerat. Detta är ett alias för --refuse-downgrade.
- --admindir=kat
- Ändra förvald administrationskatalog, vilken innehåller flera filer som beskriver status för installerade eller avinstallerade paket, osv. (standardvärde är /var/lib/dpkg)
- --instdir=katalog
- Ändra standardinstallationskatalog, vilket anger katalogen där paket skall installeras. instdir är även katalogen som skickas som argument till chroot(2) innan paketets installationsfiler körs, vilket betyder att skripten ser instdir som rotkatalog. (Förval är /)
- --root=katalog
- Genom att ändra rot så ändras installationskatalog till katalog och administrationskatalog till katalog/var/lib/dpkg.
- -O, --selected-only
- Hantera endast paket som markerats för installation. Själva markeringen utförs med dselect eller av dpkg när paketen hanteras. Till exempel kommer paket som tas bort att markeras för installation.
- -E, --skip-same-version
- Installera inte paketet om samma version av paketet redan är installerat.
Sätter en anropshake kommando som
körs via "sh -c" före eller efter dpkg körs för
åtgärderna unpack, configure, instal,
triggers-only, remove och purge. Flaggan kan anges flera
gånger. Ordningen på flaggorna som anges behålls och de som
anges i konfigurationsfilen har företräde. Miljövariabeln
DPKG_HOOK_ACTION sätts för hakar i den nuvarande
dpkg-åtgärden. Observera: Skal kan anropa dpkg flera gånger per
körning, vilket kan göra att hakarna körs fler gånger
än förväntat.
--path-exclude=filnamnsmönster
Sätt filnamnsmönster som ett
sökvägsfilter, antingen genom att exkludera eller åter
inkludera tidigare exkluderade sökvägar som motsvarar det angivna
mönstret under installationen.
Varning: tänk på att du kan totalt ödelägga ditt system,
beroende på vilka sökvägar du exkluderar, så
använd med tillförsikt.
Filnamnsmönstrena använder samma sorts jokertecken som skalet,
där "*" motsvarar en sekvens av valfritt antal tecken,
inklusive den tomma strängen och även "/". Till exempel
på motsvarar "/usr/*/READ*"
"/usr/share/doc/paket/README". "?" motsvarar som
vanligt ett ensamt tecken (även här ingår "/"). Och
"[" inleder en teckenklass, som kan innehålla en lista
över tecken, intervall och komplement. Se glob(7) för
detaljerad information om filnamnsmönster. Observera: den nuvarande
implementationen kan återinkludera fler kataloger och symboliska
länkar än nödvändigt, för att vara på den
säkra sidan och undvika möjliga uppackningsfel, framtida
ändringar kan komma att rätta detta.
Detta kan användas för att ta bort alla sökvägar
förutom några specifika; ett typiskt användningsområde
är:
för att ta bort alla dokumentationsfiler förutom
upphovsrättsinformation.
Dessa två flaggor kan anges flera gånger, och kan interfolieras med
varandra. De hanteras båda i den givna ordningen och det är den
sista regeln som motsvarar ett filnamn som fäller avgörandet.
--path-exclude=/usr/share/doc/* --path-include=/usr/share/doc/*/copyright
- --status-fd n
- Sänd maskinläsbar paketstatus och förloppsinformation till filhandtag n. Flaggan kan anges flera gånger. Informationen lagras vanligtvis rad för rad, i följande format:
- status: paket: status
- Paketstatus ändrad; status är som i statusfilen.
- status: paket : error : utökat-felmeddelande
- Ett fel uppstod. Eventuella nyradstecken i utökat-felmeddelanden kommer ersättas med blanksteg innan de skrivs ut.
- status: fil : conffile-prompt : 'riktig-gammal ' 'riktig-ny' användarredigerad distredigerad
- Användaren får en fråga om konfigurationsfiler.
- processing: skede: paket
- Sänds precis innan ett hanteringsskede påbörjas. Skede är något av upgrade, install (båda sänds innan paketet packas upp), configure, trigproc, disappear, remove, purge.
- --status-logger=kommando
- Sänd maskinläsbar paketstatus och förloppsinformation till skal- kommandots standard in. Flaggan kan anges flera gånger. Utdataformatet som används är detsamma som för --status-fd.
- --log=filnamn
- Logga statusändringsmeddelanden och kommandon till filnamn, istället för förvalet /var/log/dpkg.log. Om flaggan ges flera gånger används det sista filnamnet. Loggmeddelanden är på formen "ÅÅÅÅ-MM-DD HH:MM:SS status tillstånd paket installerad-version" för statusändringar; "ÅÅÅÅ-MM-DD HH:MM:SS åtgärd paket installerad-versiont tillgänglig-version" för åtgärder där åtgärd är ett av install, upgrade, remove, purge; samt "ÅÅÅÅ-MM-DD HH:MM:SS conffile filnamn val" för konfigurationsfilsändringar där val antingen är install eller keep.
- --no-debsig
- Försök inte verifiera paketsignaturer.
- --no-triggers
- Utför inte utlösare i denna körning (aktiveringar kommer fortfarande att antecknas). Om det används tillsammans med --configure paket eller --triggers-only paket kommer det namngivna paketets postinst fortfarande att köras även om det enda som behövdes var en körning av utlösare. Om du använder denna flagga kan det hända att paket hamnar i felaktiga väntar på utlösare- och utlösare väntar-tillstånd. Detta kan rättas senare genom att köra: dpkg --configure --pending.
- --triggers
- Överstyr ett tidigare --no-triggers.
FILER¶
- /etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
- Konfigurationsfragmentfiler.
- /etc/dpkg/dpkg.cfg
- Konfigurationsfil med förvalda inställningar.
- /var/log/dpkg.log
- Förvald loggfil (se /etc/dpkg/dpkg.cfg(5) och flaggan --log).
- /var/lib/dpkg/available
- Lista över tillgängliga paket.
- /var/lib/dpkg/status
- Status för tillgängliga paket. Filen
innehåller information om huruvida ett paket är markerat
för borttagning eller ej, om det är installerat eller ej, osv.
Se sektionen INFORMATION OM PAKET för ytterligare information.
- control
- conffiles
- preinst
- postinst
- prerm
- postrm
MILJÖVARIABLER¶
- HOME
- Om satt så kommer dpkg att använda det som den katalog från vilken det skall läsa den användarspecifika konfigurationsfilen.
- TMPDIR
- Om satt så kommer dpkg att använda det som den katalog där det skapar temporära filer och kataloger.
- PAGER
- Programmet dpkg kommer att exekveras för att visa konfigurationsfiler.
- SHELL
- Programmet dpkg kommer att exekveras när ett nytt skal startas.
- COLUMNS
- Sätter antalet kolumner dpkg skall använda när formaterad text visas. Används för närvarande enbart av -l.
- DPKG_SHELL_REASON
- Definieras av dpkg i skalet som startas för att undersöka situationen efter konfigurationsfilsfrågan. Tillåtna värden är för närvarande: conffile-prompt.
- DPKG_CONFFILE_OLD
- Definieras av dpkg i skalet som startas för att undersöka situationen efter konfigurationsfilsfrågan. Innehåller sökvägen till den gamla konfigurationsfilen.
- DPKG_CONFFILE_NEW
- Definieras av dpkg i skalet som startas för att undersöka situationen efter konfigurationsfilsfrågan. Innehåller sökvägen till den nya konfigurationsfilen.
- DPKG_RUNNING_VERSION
- Definieras av dpkg i utvecklarskriptets miljö till versionen av den instans av dpkg som körs för tillfället.
- DPKG_MAINTSCRIPT_PACKAGE
- Definieras av dpkg i utvecklarskriptets miljö till namnet på paketet som hanteras.
- DPKG_MAINTSCRIPT_ARCH
- Definieras av dpkg i utvecklarskriptets miljö till arkitekturen paketet byggdes för.
- DPKG_MAINTSCRIPT_NAME
- Definieras av dpkg i utvecklarskriptets miljö till namnet på det skript som körs (preinst, postinst, prerm, postrm).
EXEMPEL¶
För att lista paket relaterade till textredigeringsprogrammet vi(1) (observera att dpkg-query inte längre läser in available-filen som standard, och att flaggan dpkg-query --load-avail istället bör användas för det):dpkg -l '*vi*'
dpkg --print-avail elvis vim | less
less /var/lib/dpkg/available
dpkg -r elvis
cd /media/cdrom/pool/main/v/vim
dpkg -i vim_4.5-3.deb
dpkg --get-selections >mitturval
avail=`mktemp`
apt-cache dumpavail >"$avail"
dpkg --merge-avail "$avail"
rm "$avail"
dpkg --clear-selections
dpkg --set-selections <mitturval
YTTERLIGARE FUNKTIONER¶
Ytterligare funktioner kan erhållas genom att installera något av följande paket: apt, aptitude och debsums.SE ÄVEN¶
aptitude(1), apt(1), dselect(1), dpkg-deb(1), dpkg-query(1), deb(5), deb-control(5), dpkg.cfg(5) och dpkg-reconfigure(8).PROGRAMFEL¶
--no-act ger oftast mindre information än vad som vore hjälpsamt.FÖRFATTARE¶
Se /usr/share/doc/dpkg/THANKS för listan över personer som har bidragit till dpkg.ÖVERSÄTTNING¶
Peter Krefting och Daniel Nylander.2013-07-28 | Debianprojektet |