Provided by: dpkg_1.21.1ubuntu2.6_amd64 

NOME
dpkg - gestor de pacotes para Debian
SINOPSE
dpkg [option...] action
AVISO
este manual destina-se a utilizadores que desejam compreender as opções de linha de comandos do dpkg e
estados de pacotes em mais detalhe do que aquele fornecido por dpkg --help.
Não deverá ser usado por maintainers de pacotes que desejem compreender como o dpkg irá instalar os seus
pacotes. A descrição do que o dpkg faz quando instala ou remove pacotes é particularmente inadequada.
DESCRIÇÃO
dpkg is a medium-level tool to install, build, remove and manage Debian packages. The primary and more
user-friendly front-end for dpkg as a CLI (command-line interface) is apt(8> and as a TUI (terminal user
interface) is aptitude(8). dpkg itself is controlled entirely via command line parameters, which consist
of exactly one action and zero or more options. The action-parameter tells dpkg what to do and options
control the behavior of the action in some way.
O dpkg pode também ser usado como front-end para dpkg-deb(1) e dpkg-query(1). A lista de acções
suportadas pode ser encontrada mais tarde na secção ACÇÕES. Se qualquer tal acção for encontrada, o dpkg
apenas corre dpkg-deb ou dpkg-query com os parâmetros dados a ele, mas nenhuma opção especifica é
presentemente passada para eles, para se qualquer tal opção, os back-ends precisam de ser chamados
directamente.
INFORMAÇÃO ACERCA DE PACOTES
O dpkg mantém alguma informação utilizável sobre pacotes disponíveis. A informação é dividida em três
classes: states, selection states e flags. Estes valores destinam-se a serem alterados principalmente com
o dselect.
Estados de pacote
not-installed
Este pacote não está instalado no seu sistema.
config-files
Apenas os ficheiros de configuração ou o script postrm e os dados que precisa para remoção do pacote
existem no sistema.
half-installed
A instalação do pacote foi iniciada, mas não foi acabada por alguma razão.
unpacked
O pacote está desempacotado mas não configurado.
half-configured
O pacote está desempacotado e a configuração foi iniciada, mas ainda não está acabada por alguma
razão.
triggers-awaited
O pacote espera o processamento de trigger por outro pacote.
triggers-pending
O pacote foi despoletado
installed
O pacote está actualmente desempacotado e configurado.
Estados de selecção de pacote
install
O pacote está seleccionado para instalação.
hold
Um pacote marcado para estar em hold é mantido na mesma versão, isto é, não serão executadas nenhumas
novas instalações, actualizações ou remoções automáticas nele, a menos que estas acções sejam
requisitadas explicitamente, ou sejam permitidas serem feitas automaticamente com a opção
--force-hold.
deinstall
O pacote está seleccionado para desinstalação (isto é, queremos remover todos os ficheiros, excepto
os ficheiros de configuração).
purge
O pacote está seleccionado para ser purgado (isto é, queremos remover tudo dos directórios do
sistema, até os ficheiros de configuração).
unknown
A selecção de pacote é desconhecida. Um pacote que também está nu estado not-installed, e com uma
bandeira ok irá ser esquecido no próximo armazenamento da base de dados.
Bandeiras (flags) do pacote
ok Um pacote marcado com ok está num estado conhecido, mas pode precisar de mais processamento.
reinstreq
Um pacote marcado com reinstreq está quebrado e requer reinstalação. Estes pacotes não podem ser
removidos, a menos que tal seja forçado com a opção --force-remove-reinstreq.
ACÇÕES
-i, --install package-file...
Instala o pacote. Se a opção --recursive ou -R for especificada, ficheiro-pacote tem que se referir a
um directório em vez de um ficheiro.
A instalação consiste nos seguintes passos:
1. Extrai os ficheiros de controle do novo pacote.
2. Se outra versão do mesmo pacote foi instalada antes da nova instalação, executa o script prerm do
pacote antigo.
3. Corre o script preinst, se disponibilizado pelo pacote.
4. Desempacota os novos ficheiros, e aos mesmo tempo salvaguarda os ficheiros antigos, para que se
algo correr mal, eles possam ser restaurados.
5. Se outra versão do mesmo pacote foi instalada antes da nova instalação, executa o script postrm do
pacote antigo. Note que este script é executado depois do script preinst do novo pacote, porque novos
ficheiros são escritos ao mesmo tempo que ficheiros antigos são removidos.
6. Configura o pacote. Veja --configure para informação detalhada sobre como isto é feito.
--unpack package-file...
Desempacota o pacote, mas não o configura. Se a opção --recursive ou -R for especificada, package-
file deverá então referir-se a um directório.
--configure package...|-a|--pending
Configura um pacote que foi desempacotado mas ainda não configurado. Se for fornecido -a ou --pending
em vez de package, todos os pacotes desempacotados mas não configurados são configurados.
Para reconfigurar um pacote que já foi instalado, tente usar o comando dpkg-reconfigure(8).
A configuração consiste dos seguintes passos:
1. Desempacota os conffiles, e ao mesmo tempo faz salvaguardas dos conffiles antigos, para que possam
ser restaurados se algo correr mal.
2. Corre o script postinst, se fornecido pelo pacote.
--triggers-only package...|-a|--pending
Processa apenas gatilhos (desde dpkg 1.14.17). Todos os gatilhos pendentes serão processados. Se
forem fornecidos nomes de pacotes, apenas os gatilhos desses pacotes serão processados, exactamente
uma vez onde necessário. O uso desta opção pode deixar pacotes em estados triggers-awaited e
triggers-pending impróprios. Isto pode ser corrigido mais tarde ao correr: dpkg --configure
--pending.
-r, --remove package...|-a|--pending
Remove um pacote instalado. Isto remove tudo excepto conffiles e outros dados limpos pelo script
postrm, o qual pode evitar de ter que reconfigurar o pacote se for reinstalado mais tarde (conffiles
são ficheiros de configuração que estão listados no ficheiro de controle DEBIAN/conffiles). Se não
existir um ficheiro de controlo DEBIAN/conffiles nem script DEBIAN/postrm, este comando é equivalente
a chamar --purge. Se for fornecido -a ou --pending em vez de um nome de pacote , então são removidos
todos os pacotes desempacotados mas marcados para serem removidos no ficheiro /var/lib/dpkg/status.
Remover um pacote consiste nos seguintes passos:
1. Corre o script prerm
2. Remove os ficheiros instalados
3. Corre o script postrm
-P, --purge package...|-a|--pending
Purga um pacote instalado ou já removido.Isto remove tudo, incluindo conffiles, e tudo o resto limpo
a partir do postrm. Se for fornecido -a ou --pending em vez do nome de pacote, então todos os
pacotes desempacotados ou removidos, mas marcados para serem purgados no ficheiro
/var/lib/dpkg/status, serão purgados.
Nota: Alguns ficheiros de configuração podem ser desconhecidos para o dpkg porque eles são criados e
manuseados separadamente através dos scripts de configuração. Nesse caso, o dpkg não irá remove-los
sozinho, mas o script postrm do pacote (que é chamado pelo dpkg), tem de fazer a sua remoção durante
a purga. Claro que, isto só se aplica a ficheiros em directórios do sistema, e não a ficheiros de
configuração escritos nos directórios home de utilizadores individuais.
Purgar um pacote consiste nos seguintes passos:
1. Remover o pacote, se não estiver já removido. Veja --remove para informação detalhada acerca de
como isto é feito.
2. Correr o script postrm.
-V, --verify [package-name...]
Verifica a integridade de package-name ou todos os pacotes se omitido, ao comparar informação dos
ficheiros instalados com a informação de metadados de ficheiros guardada na base de dados do dpkg
(desde dpkg 1.17.2). A origem da informação de metadados de ficheiros na base de dados é os próprios
pacotes binários. Esses metadados são colecionados ao desempacotar os ficheiros durante o processo de
instalação.
Presentemente a única verificação funcional executada é uma verificação de md5sum do conteúdo dos
ficheiros contra o valor armazenado na base de dados dos ficheiros. Só serão verificados se a base de
dados conter o md5sum dos ficheiros. Para verificar por quaisquer metadados em falta na base de
dados, pode ser usado o comando --audit.
O formato do resultado é seleccionável com a opção --verify-format, que por predefinição usa o
formato rpm, mas isso pode mudar no futuro, e como tal, os programas que analisam resultado de
comando devem estar explícitos acerca do formato que esperam.
-C, --audit [package-name...]
Executa testes de sanidade e consistência para package-name ou todos os pacotes se omitido
(verificações por pacote desde dpkg 1.17.10). Por exemplo, procura por pacote que foram instalados
apenas parcialmente no seu sistema ou têm ficheiros ou dados de controle em falta, errados ou
obsoletos. O dpkg irá sugerir o que fazer com eles para os corrigir.
--update-avail [Packages-file]
--merge-avail [Packages-file]
Actualiza o conhecimento de dpkg's e dselect de quais pacotes estão disponíveis. Com a acção
--merge-avail, a informação antiga é combinada com informação de Packages-file. Com a acção
--update-avail, informação antiga é substituída pela informação de Packages-file. O Packages-file
distribuído com Debian é simplesmente chamado «Packages». Se o argumento Packages-file estiver em
falta ou for chamado «-» então será lido a partir da entrada standard (desde dpkg 1.17.7). dpkg
mantém o seu registo de pacotes disponíveis em /var/lib/dpkg/available.
Um comando único mais simples de obter e actualizar o ficheiro available é dselect update. Note que
este ficheiro é maioritariamente inútil se você não usar o dselect mas um frontend baseado no APT: O
APT tem o seu próprio sistema para acompanhar os pacotes disponíveis.
-A, --record-avail package-file...
Actualiza o conhecimento de dpkg's e dselect de quais pacotes estão disponíveis com informação a
partir do pacote package-file. Se forem especificadas as opções --recursive ou -R, então package-file
deve referir-se a um directório.
--forget-old-unavail
Agora obsoleto e uma não-opção pois o dpkg irá esquecer automaticamente os pacotes não instalados e
não disponíveis (desde dpkg 1.15.4), mas apenas aqueles que não contêm informação de utilizador tal
como selecções de pacotes.
--clear-avail
Apaga a informação existente sobre que pacotes estão disponíveis.
--get-selections [package-name-pattern...]
Obtém lista de selecções de pacotes, e escreve-a no stdout. Sem um padrão, os pacotes não-instalados
(isto é, aqueles que foram previamente purgados) não serão mostrados.
--set-selections
Define selecções de pacotes usando um ficheiro a partir de stdin. Este ficheiro deve estar no formato
“package state”, onde state é um de install, hold, deinstall ou purge. São também permitidas linhas
vazias e linhas de comentários começando com ‘#’.
O ficheiro available precisa de estar actualizado para que este comando seja útil, caso contrário os
pacotes desconhecidos serão ignorados com um aviso. Veja os comandos --update-avail e --merge-avail
para mais informação.
--clear-selections
Define o estado requerido de todos os pacotes não-essenciais para "desinstalar" (desde dpkg 1.13.18).
Isto destina-se a ser usado imediatamente antes de --set-selections, para desinstalar quaisquer
pacotes que não estejam na lista fornecida ao --set-selections.
--yet-to-unpack
Procura por pacotes selecionados para instalação, mas que por alguma razão ainda não foram
instalados.
Nota: Este comando faz uso de ambos o ficheiro disponível e das selecções do pacote.
--predep-package
Escreve um pacote único que é o alvo de uma ou mais pré-dependências relevantes e tem ele próprio
pré-dependências não satisfeitas.
Se tal pacote estiver presente, escreve-o como uma entrada no ficheiro Packages, o qual pode ser
tratado como apropriado.
Nota: Este comando faz uso de ambos o ficheiro disponível e das selecções do pacote.
Retorna 0 quando um pacote é escrito, 1 quando nenhum pacote apropriado está disponível e 2 em caso
de erro.
--add-architecture architecture
Adiciona architecture à lista de arquitecturas para quais pacotes podem ser instalados sem se usar
--force-architecture (desde dpkg 1.16.2). A arquitectura para qual o dpkg é compilado (isto é, o
resultado de --print-architecture) faz sempre parte dessa lista.
--remove-architecture architecture
Remove architecture da lista de arquitecturas para quais pacotes podem ser instalados sem se usar
--force-architecture (desde dpkg 1.16.2). Se a arquitectura estiver presentemente em uso na base de
dados então a operação será recusada, excepto se --force-architecture for especificado. A
arquitectura para qual o dpkg é compilado (isto é, o resultado de --print-architecture) nunca pode
ser removida dessa lista.
--print-architecture
Escreve a arquitectura dos pacotes que o dpkg instala (por exemplo , “i386”).
--print-foreign-architectures
Escreve uma lista, com separação por novas linhas, de arquitecturas extra que o dpkg tem configurado
para permitir instalar pacotes para elas (desde dpkg 1.16.2).
--assert-help
Give help about the --assert-feature options (since dpkg 1.21.0).
--assert-feature
Afirma que o dpkg suporta a funcionalidade requerida. Retorna 0 se a funcionalidade é totalmente
suportada. 1 se a funcionalidade é conhecida mas o dpkg ainda não pode suporta-la, e 2 se a
funcionalidade é desconhecida. A lista actual de funcionalidades afirmáveis é:
support-predepends
Suporta o campo Pre-Depends (desde dpkg 1.1.0).
working-epoch
Suporta épocas em strings de versão (desde dpkg 1.4.0.7).
long-filenames
Suporta nomes de ficheiros longos em arquivos deb(5) (desde dpkg 1.4.1.17).
multi-conrep
Suporta múltiplos Conflicts e Replaces (desde dpkg 1.4.1.19).
multi-arch
Suporta campos multi-arch e semânticas (desde dpkg 1.16.2).
versioned-provides
Suporta Provides com versão (desde dpkg 1.17.11).
protected-field
Suporta o campo Protected (desde dpkg 1.20.1).
--validate-thing string
Valida que a thing string tem a sintaxe correcta (desde dpkg 1.18.16). Retorna 0 se a string for
válida, 1 se a string é inválida mas pode ser aceite em contextos lax, e 2 se a string é inválida. A
lista actual de thing validáveis é:
pkgname
Valida o nome de pacote fornecido (desde dpkg 1.18.16).
trigname
Valida o nome de gatinho fornecido (desde dpkg 1.18.16).
archname
Valida o nome de arquitectura fornecido (desde dpkg 1.18.16).
version
Valida a versão fornecida (desde dpkg 1.18.16).
--compare-versions ver1 op ver2
Compara números de versão, onde op é um operador binário. dpkg retorna verdadeiro (0) se a condição
especificada for satisfeita, e falso (1) caso contrário. Existe dois grupos de operadores, que
diferem em como eles tratam um ver1 ou ver2 vazio. Estes tratam uma versão vazia mais cedo que
qualquer versão: lt le eq ne ge gt. Estes tratam uma versão vazia mais tarde que qualquer versão: lt-
nl le-nl ge-nl gt-nl. Estes são fornecidos apenas para compatibilidade com sintaxe de ficheiros de
controle: < << <= = >= >> >. Os operadores < e > estão obsoletos e não devem ser usados, devido a
semânticas confusas. Para ilustrar: 0.1 < 0.1 avalia para verdadeiro.
-?, --help
Mostra uma mensagem de ajuda breve.
--force-help
Oferece ajuda acerca das opções --force-qualquer-coisa.
-Dh, --debug=help
Oferece ajuda acerca de opções de depuração.
--version
Mostra informação de versão do dpkg.
Quando usado com --robot, o resultado será o número de versão de programa num formato numérico
pontuado, sem nenhuma nova linha.
dpkg-deb actions
Veja dpkg-deb(1) para mais informações acerca das seguintes acções, e outras acções e opções não
expostas pelo front-end do dpkg.
-b, --build directory [archive|directory]
Compila um pacote deb.
-c, --contents archive
Lista o conteúdo de um pacote deb.
-e, --control archive [directory]
Extrai informação-controle de um pacote.
-x, --extract archive directory
Extrai os ficheiros contidos por um pacote.
-X, --vextract archive directory
Extrai e mostra os nomes de ficheiros contidos por um pacote.
-f, --field archive [control-field...]
Mostra campo(s) de controle de um pacote.
--ctrl-tarfile archive
Resulta o ficheiro tar de controle contido num pacote Debian.
--fsys-tarfile archive
Resulta o ficheiro tar de sistema de ficheiros contido num pacote Debian.
-I, --info archive [control-file...]
Mostra informação acerca de um pacote.
dpkg-query actions
Veja dpkg-query(1) para mais informações acerca das seguintes acções, e outras acções e opções não
expostas pelo front-end do dpkg.
-l, --list package-name-pattern...
Lista pacotes que correspondem ao padrão dado.
-s, --status package-name...
Reporta estado do pacote especificado.
-L, --listfiles package-name...
Lista ficheiros instalados no seu sistema a partir de package-name.
-S, --search filename-search-pattern...
Procura por um nome de ficheiro a partir de pacotes instalados.
-p, --print-avail package-name...
Mostra detalhes acerca de package-name, como encontrado em /var/lib/dpkg/available. Os
utilizadores de frontends baseados no APT devem usar apt show package-name em vez disto.
OPÇÕES
Todas as opções pode ser especificadas em ambos linha de comandos e no ficheiro de configuração do dpkg
/etc/dpkg/dpkg.cfg ou em ficheiros fragmento (com nomes a corresponder a este padrão de shell
"[0-9a-zA-Z_-]*') no directório de configuração /etc/dpkg/dpkg.cfg.d/. Cada linha no ficheiro de
configuração é ou uma opção (exatamente igual a uma opção de linha de comandos mas sem os hífens
iniciais) ou um comentário (se começar com ‘#’).
--abort-after=number
Altera o após quantos erros o dpkg irá abortar. A predefinição é 50.
-B, --auto-deconfigure
Quando um pacote é removido, existe a possibilidade que outro pacote instalado dependa do pacote
removido. Especificar esta opção irá provocar a desconfiguração automática do pacote que dependia do
pacote removido.
-Doctal, --debug=octal
Liga a depuração. octal é formado por valores bitwise-ORing desejados juntos da lista em baixo (note
que estes valores podem mudar em lançamentos futuros). -Dh ou --debug=help mostram estes valores de
depuração.
Número Descrição
1 Informação de progresso geralmente útil
2 Invocação e estado dos scripts do maintainer
10 Resultado de cada ficheiro processado
100 Montes de resultados de cada ficheiro processado
20 Resultado para cada ficheiro de configuração
200 Montes de resultados de cada ficheiro de configuração
40 Dependências e conflitos
400 Montes de resultados de dependências/conflitos
10000 Activação de gatilhos e processamento
20000 Montes de resultados relativos a gatilhos
40000 Quantidades tolas de resultados relativos a gatilhos
1000 Lotes acerca de drivel ex. o directório dpkg/info
2000 Lotes tolos de drivel
--force-things
--no-force-things, --refuse-things
Força ou recusa (no-force e refuse significa a mesma coisa) para fazer algumas coisas. things é uma
lista separada por vírgulas de coisas especificadas em baixo. --force-help mostra uma mensagem que as
descreve. Coisas marcadas com (*) são forçadas por predefinição.
Aviso: Estas opções são maioritariamente destinadas a serem usadas apenas por experts. Usá-las sem
total conhecimento dos seus efeitos pode danificar todo o seu sistema.
all: Liga (ou desliga) todas as opções de forçar.
downgrade(*): Instala um pacote, mesmo que já esteja instalada uma versão dele mais recente.
Aviso: Presentemente o dpkg não efetua nenhuma verificação de dependência em downgrades e por isso
não irá avisa-lo se o downgrade quebrar a dependência de algum outro pacote. Isto pode ter sérios
efeitos secundários, o downgrade de componentes essenciais do sistema pode até inutilizar todo o seu
sistema. Use com cuidado.
configure-any: Configura também quaisquer pacotes desempacotados mas não configurados nos quais o
pacote actual depende.
hold: Permite instalações, actualizações e remoções automáticas mesmo quando marcado para estar em
“hold”. Nota: Isto não previne estas acções quando requisitadas explicitamente.
remove-reinstreq: Remove um pacote, mesmo se estiver quebrado e marcado a requerer reinstalação. Isto
pode, por exemplo, causar que partes do pacote fiquem no sistema, que serão depois esquecidos pelo
dpkg.
remove-protected: Remove, mesmo se o pacote for considerado protegido (desde dpkg 1.20.1). Os
pacotes protegidos contêm maioritariamente a importante infraestrutura de arranque do sistema.
Removê-los pode causar que todo o sistema seja incapaz de arrancar, portanto use com muito cuidado.
remove-essential: Remove, mesmo se o pacote for considerado essencial Os pacotes essenciais contêm
maioritariamente comandos Unix mais básicos. Removê-los pode causar que todo o sistema pare de
funcionar, por isso use com cuidado.
depends: Torna todos os problemas de dependências em avisos. Isto afecta os campos Pre-Depends and
Depends.
depends-version: Não se interessa pelas versões quando verifica as dependências. Isto afecta os
campos Pre-Depends and Depends.
breaks: Instala, mesmo que isto danifique outro pacote (desde dpkg 1.14.6). Isto afecta o campo
Breaks.
conflicts: Instala, mesmo que fique em conflito com outro pacote. Isto é perigoso, pois geralmente
causa a sobreposição de alguns ficheiros. Isto afecta o campo Conflicts.
confmiss: Instala sempre o ficheiro de configuração em falta sem avisar. Isto é perigoso, pois isto
significa não preservar uma alteração feita no ficheiro de configuração (removendo-a).
confnew: Se um ficheiro de configuração foi modificado e a versão do pacote mudou, instala sempre a
nova versão sem avisar, a menos que seja também especificado --force-confdef, que neste caso é
preferida a acção predefinida.
confold: Se um ficheiro de configuração foi modificado e a versão do pacote mudou, mantém sempre a
versão antiga sem avisar, a menos que seja também especificado --force-confdef, que neste caso é
preferida a acção predefinida.
confdef: Se um conffile foi modificado e a versão no pacote alterou, escolhe sempre a acção
predefinida sem perguntar. Se não existir acção predefinida irá parar para pedir ao utilizador a
menos que --force-confnew ou --force-confold sejam também fornecidos, nesse caso irá usar isso para
decidir a acção final.
confask: Se um conffile foi modificado oferece-se sempre para o substituir pela versão no pacote,
mesmo que a versão no pacote não tenha mudado (desde dpkg 1.15.8). Se algum de --force-confnew,
--force-confold, ou --force-confdef forem também fornecidos, será usado para decidir a acção final.
overwrite: Sobrescreve um ficheiro de um pacote por um ficheiro de outro.
overwrite-dir: Sobrepõe um directório de um pacote com ficheiros de outro.
overwrite-diverted: Sobrescreve a ficheiro divergido com uma versão não-divergida.
statoverride-add: Sobrescreve uma sobreposição de estatística existente quando a adiciona (desde dpkg
1.19.5).
statoverride-remove: Ignora uma sobreposição de estatística em falta quando a remove (desde dpkg
1.19.5).
security-mac(*): Usa segurança baseada em Mandatory Access Controls (MAC) específica da plataforma
quando instala ficheiros no sistema de ficheiros (desde dpkg 1.19.5). Em sistemas Linux a
implementação usa SELinux.
unsafe-io: Não executa operações I/O seguras quando desempacota (desde dpkg 1.15.8.6). Actualmente
isto implica não executar sincronismos do sistema antes de renomear ficheiros, o que é conhecido por
causar uma degradação substancial de performance em alguns sistemas de ficheiros, infelizmente são
esses que requerem o I/O seguro em primeiro lugar devido ao seu comportamento não fiável que provoca
ficheiros de comprimento-zero em crashes abruptos do sistema.
Nota: Para ext4, o principal ofensor, considere usar a opção de montagem nodelalloc, o que irá
corrigir ambos a degradação de performance e os problemas de segurança de dados, o último ao tornar o
sistema de ficheiros não produtor de ficheiros de zero-tamanho em crashes abruptos do sistema com
qualquer software que não faça sincronismos antes de renomeações atómicas.
Aviso: Usar esta opção pode melhorar a performance a custo de perda de dados, use com cuidado.
script-chrootless: Corre os scripts de maintainer sem fazer chroot(2) em instdir mesmo que o pacote
não suporte este modo de operação (desde dpkg 1.18.5).
Aviso: Isto pode destruir o seu sistema, use com extremo cuidado.
architecture: Processa pacotes mesmo da arquitectura errada ou sem nenhuma.
bad-version: Processa pacotes mesmo com versões erradas (desde dpkg 1.16.1).
bad-path: PATH tem em falta programas importantes, portanto é provável haver problemas.
not-root: Tenta (des)instalar coisas mesmo não sendo root.
bad-verify: Instala um pacote mesmo que este falhe no teste de autenticidade.
--ignore-depends=package,...
Ignora verificação de dependências para pacotes específicos (na verdade, a verificação é executada,
mas são apenas dados avisos sobre conflitos, nada ,mais). Isto afecta os campos Pre-Depends, Depends
e Breaks.
--no-act, --dry-run, --simulate
Faz tudo o que é suposto ser feito, mas não escreve quaisquer alterações. Isto é usado para se ver o
que acontecia com uma acção específica, sem modificar nada na realidade.
Certifique-se de fornecer --no-act antes do parâmetro da acção, ou poderá acabar com resultados não
desejáveis. (ex. dpkg --purge foo --no-act irá primeiro purgar o pacote "foo" e depois tentará purgar
o pacote "--no-act", mesmo pensando que provavelmente não vai fazer nada).
-R, --recursive
Lida recursivamente com todos os ficheiros regulares que correspondem ao padrão *.deb encontrados em
directórios especificados e em todos os seus sub-directórios. Isto pode ser usado com as acções -i,
-A, --install, --unpack e --record-avail.
-G Não instala um pacote se uma versão mais recente do mesmo pacote já estiver instalada. Isto é um nome
alternativo de --refuse-downgrade.
--admindir=dir
Define o directório administrativo para directory. Este directório contem muitos ficheiros que
fornecem informação acerca do estado de pacotes instalados ou desinstalados, etc. A predefinição é
«/var/lib/dpkg».
--instdir=dir
Define o directório de instalação, o que se refere ao directório onde os pacotes vão ser instalados.
instdir é também o directório passado ao chroot(2) antes de correr scripts de instalação dos pacotes,
o que significa que os vêm instdir como o directório raiz. A predefinição é «/».
--root=dir
Define o directório raiz para directory, o que define o directório de instalação para «dir» e o
directório administrativo para «dir/var/lib/dpkg».
-O, --selected-only
Apenas processa os pacotes que estão selecionados para instalação. A marcação real é feita com
dselect ou pelo dpkg, quando lida com pacotes. Por exemplo, quando um pacote é removido, será marcado
selecionado para desinstalação.
-E, --skip-same-version
Não instala o pacote se a mesma versão do pacote já estiver instalada.
--pre-invoke=command
--post-invoke=command
Define um command hook de invocação para ser corrido via “sh -c” antes ou depois de o dpkg correr
para as acções unpack, configure, install, triggers-only, remove, purge, add-architecture e remove-
architecture dpkg (desde dpkg 1.15.4; acções add-architecture e remove-architecture desde dpkg
1.17.19). Esta opção pode ser especificada várias vezes. A ordem que as opções são especificadas é
preservada, com aquelas dos ficheiros de configuração a tomar precedência. A variável de ambiente
DPKG_HOOK_ACTION é definida para os hooks para a acção actual do dpkg.
Nota: Front-ends podem chamar dpkg várias vezes por invocação, o que pode fazer correr os hooks mais
vezes do que o esperado.
--path-exclude=glob-pattern
--path-include=glob-pattern
Define glob-pattern como um filtro de caminho, seja por excluir ou re-incluir caminhos previamente
excluídos que correspondem aos padrões especificados durante a instalação (desde dpkg 1.15.8).
Aviso: Tenha em conta que ao depender de caminhos excluídos você pode danificar completamente o seu
sistema, use com cuidado.
The glob patterns use the same wildcards used in the shell, were ‘*’ matches any sequence of
characters, including the empty string and also ‘/’. For example, «/usr/*/READ*» matches
«/usr/share/doc/package/README». As usual, ‘?’ matches any single character (again, including ‘/’).
And ‘[’ starts a character class, which can contain a list of characters, ranges and
complementations. See glob(7) for detailed information about globbing. Note: The current
implementation might re-include more directories and symlinks than needed, in particular when there
is a more specific re-inclusion, to be on the safe side and avoid possible unpack failures; future
work might fix this.
Isto pode ser usado para remover todos os caminhos excepto alguns particulares; um caso típico é:
--path-exclude=/usr/share/doc/*
--path-include=/usr/share/doc/*/copyright
para remover todos os ficheiros de documentação excepto os ficheiros de copyright.
Estas duas opções pode ser especificadas várias vezes, e intercaladas entre elas. Ambas são
processadas na ordem fornecida, com a última regra corresponde a um nome de ficheiro a marcar a
decisão.
Os filtros são aplicados quando se desempacota os pacotes binários, e como tal apenas têm
conhecimento do tipo de objecto actualmente a ser filtrado (ex. um ficheiro normal num directório) e
não têm visibilidade dos outros objetos que virão a seguir. Porque estes filtros têm efeitos
secundários (em contraste aos filtros find(1)), excluir um nome de caminho exacto que acontece ser um
objecto directório como /usr/share/doc não irá ter o resultado desejado, e apenas esse nome de
caminho será excluído (que poderá ser automaticamente re-incluído se o código vir a necessidade).
Quaisquer ficheiros subsequentes contidos dentro desse directório irão falhar ao desempacotar.
Dica: certifique-se que os globs não são expandidos pela sua shell.
--verify-format format-name
Define o formato dos resultados para o comando --verify (desde dpkg 1.17.2).
The only currently supported output format is rpm, which consists of a line for every path that
failed any check. These lines have the following format:
missing [c] pathname [(error-message)]
??5?????? [c] pathname
The first 9 characters are used to report the checks result, either a literal missing when the file
is not present or its metadata cannot be fetched, or one of the following special characters that
report the result for each check:
‘?’ Implies the check could not be done (lack of support, file permissions, etc).
‘.’ Implies the check passed.
‘A-Za-z0-9’
Implies a specific check failed. The following positions and alphanumeric characters are
currently supported:
1 ‘?’
These checks are currently not supported, will always be ‘?’.
2 ‘M’
The file mode check failed (since dpkg 1.21.0). Because pathname metadata is currently not
tracked, this check can only be partially emulated via a very simple heuristic for pathnames
that have a known digest, which implies they should be regular files, where the check will
fail if the pathname is not a regular file on the filesystem. This check will currently
never succeed as it does not have enough information available.
3 ‘5’
The digest check failed, which means the file contents have changed.
4-9 ‘?’
These checks are currently not supported, will always be ‘?’.
The line is followed by a space and an attribute character. The following attribute character is
supported:
‘c’ The pathname is a conffile.
Finally followed by another space and the pathname.
In case the entry was of the missing type, and the file was not actually present on the filesystem,
then the line is followed by a space and the error message enclosed within parenthesis.
--status-fd n
Envia o estado do pacote em linguagem de máquina e informação de progresso para o descritor de
ficheiro n. Esta opção pode ser especificada várias vezes. A informação é geralmente um registo por
linha, em um dos seguintes formatos:
status: package: status
Status do pacote alterado; status está como no ficheiro de status.
status: package : error : extended-error-message
Ocorreu um erro. Quaisquer possíveis novas linhas em extended-error-message irão ser convertidas
para espaços antes do resultado.
status: file : conffile-prompt : 'real-old' 'real-new' useredited distedited
Está a ser perguntado ao utilizador uma questão de ficheiro de configuração.
processing: stage: package
Enviado apenas antes de um estado de processamento começar. stage é um de upgrade, install (ambos
enviados antes do desempacotamento), configure, trigproc, disappear, remove, purge.
--status-logger=command
Envia o estado do pacote em linguagem de máquina e informação de progresso para a entrada standard de
command de shell, para ser corrido via “sh -c” (desde dpkg 1.16.0). Esta opção pode ser especificada
várias vezes. O formato de resultados usado é o mesmo que em --status-fd.
--log=filename
Regista actualizações de alteração de estado e acções em filename, em vez da predefinição
/var/log/dpkg.log. Se esta opção for dada várias vezes, é usado o último nome de ficheiro. As
mensagens registadas estão no formato:
YYYY-MM-DD HH:MM:SS startup type command
Para cada invocação do dpkg onde type é archives (com um command de unpack ou install) ou
packages (com um command de configure, triggers-only, remove ou purge).
YYYY-MM-DD HH:MM:SS status state pkg installed-version
Par actualizações de mudança de estado.
YYYY-MM-DD HH:MM:SS action pkg installed-version available-version
Para acções onde action é um de install, upgrade, configure, trigproc, disappear, remove ou
purge.
YYYY-MM-DD HH:MM:SS conffile filename decision
Para alterações de conffile onde decision ou é install ou é keep.
--robot
Usa um formato de resultados em linguagem máquina. Este fornece uma interface para programas que
precisam de analisar os resultados de alguns dos comandos que de outro modo não emitem um formato de
resultados em linguagem máquina. Nenhuma localização será usada, e os resultados serão modificados
para os tornar mais fácil de analisar.
O único comando actualmente suportado é --version.
--no-pager
Desactiva o uso de qualquer paginador quando mostra informação (desde dpkg 1.19.2).
--no-debsig
Não tenta verificar as assinaturas dos pacotes.
--no-triggers
Não corre nenhum gatilho nesta execução (desde dpkg 1.14.17), mas as activações serão na mesma
gravadas. Se usado com --configure package ou --triggers-only package então o postinst do pacote
nomeado irá mesmo assim ser corrido mesmo que apenas seja necessário correr um gatilho. O uso desta
opção pode deixar pacotes em estados triggers-awaited e triggers-pending impróprios. Isto pode ser
corrigido mais tarde ao correr: dpkg --configure --pending.
--triggers
Cancela um --no-triggers anterior (desde dpkg 1.14.17).
ESTADO À SAÍDA
0 A acção requisitada foi executada com sucesso. Ou uma verificação ou comando de afirmação retornou
verdadeiro.
1 Uma verificação ou comando de afirmação retornou falso.
2 Erro fatal ou irrecuperável devido a utilização de linha de comandos inválida, ou interações com o
sistema, tais como acesso à base de dados, alocações de memória, etc.
AMBIENTE
Ambiente externo
PATH
Esta variável é esperada estar definida no ambiente e apontar para os caminhos do sistema onde vários
programas requeridos se encontram. Se não estiver definida, ou os programas não forem encontrados, o
dpkg irá abortar.
HOME
Se definido, o dpkg irá usá-lo como o directório de onde ler o ficheiro de configuração específico do
utilizador.
TMPDIR
Se definido, o dpkg irá usá-lo como o directório onde criar os ficheiros e directórios temporários.
SHELL
O programa que o dpkg irá executar quando iniciar uma nova shell interactiva, ou quando multiplica um
comando via shell.
PAGER
DPKG_PAGER
O programa que o dpkg irá executar quando correr um paginador, o qual será executado com «$SHELL -c»,
por exemplo quando mostrar as diferenças do conffile. Se SHELL não estiver definida, será usado «sh»
em vez deste. O DPKG_PAGER sobrepõe a variável de ambiente PAGER (desde dpkg 1.19.2).
DPKG_COLORS
Define o modo de cor (desde dpkg 1.18.5). Os valores actualmente aceites são: auto (predefinido),
always e never.
DPKG_FORCE
Define as bandeiras de forçar (desde dpkg 1.19.5). Quando esta variável está presente, nenhuma
predefinição de forçar embutida será aplicada. Se a variável esta presente mas vazia, todas as
bandeiras de forçar serão desactivadas.
DPKG_ADMINDIR
Se definido e as opções --admindir ou --root não foram especificadas, será usado como o directório
administrativo do dpkg (desde dpkg 1.20.0).
DPKG_FRONTEND_LOCKED
Definido pelo frontend de gestão de pacotes para notificar o dpkg que não deve adquirir o bloqueio do
frontend (desde dpkg 1.19.1).
Ambiente interno
LESS
Definido pelo dpkg para “-FRSXMQ”, Se não já definido, quando cria um paginador (desde dpkg 1.19.2).
Para modificar o comportamento predefinido, esta variável por ser pré-ajustada para qualquer outro
valor incluindo uma string vazia, ou as variáveis PAGER ou DPKG_PAGER podem ser definidas para
desactivar opções específicas com «-+», por exemplo DPKG_PAGER="less -+F".
DPKG_ROOT
Definido pelo dpkg no ambiente de scripts do maintainer para indicar em qual instalação devem actuar
(desde 1.18.5). O valor destina-se a ser adicionado ao inicio de qualquer caminho em que os scripts
de maintainer operam. Durante uma operação normal, esta variável está vazia. Ao instalar pacotes numa
instdir diferente, o dpkg normalmente invoca scripts do maintainer usando chroot(2) e deixa esta
variável vazia, mas se --force-script-chrootless for especificado então a chamada chroot(2) é saltada
e instdir fica não-vazia.
DPKG_ADMINDIR
Definido pelo dpkg no ambiente de scripts do maintainer para indicar o directório administrativo do
dpkg a usar (desde dpkg 1.16.0). Esta variável está sempre definida para o valor actual --admindir.
DPKG_FORCE
Definido pelo dpkg no ambiente de sub-processos para todos os nomes de opções de forçar, actualmente
activos, separados por vírgulas (desde dpkg 1.19.5).
DPKG_SHELL_REASON
Definido pelo dpkg na shell criada no incitar do conffile para examinar a situação (desde dpkg
1.15.6). Valor válido actual: conffile-prompt.
DPKG_CONFFILE_OLD
Definido pelo dpkg na shell criada no incitar do conffile para examinar a situação (desde dpkg
115.6). Contém o caminho do conffile antigo.
DPKG_CONFFILE_NEW
Definido pelo dpkg na shell criada no incitar do conffile para examinar a situação (desde dpkg
115.6). Contém o caminho do conffile novo.
DPKG_HOOK_ACTION
Definido pelo dpkg na shell criada quando executa uma acção hook (desde dpkg 1.15.4). Contém a acção
actual do dpkg.
DPKG_RUNNING_VERSION
Definido pelo dpkg no ambiente de scripts do maintainer para a versão da instância do dpkg
actualmente a correr (desde dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE
Definido pelo dpkg no ambiente de scripts do maintainer para o nome do pacote
(qualificado-não-arquitectura) a ser manuseado (desde dpkg 1.14.17).
DPKG_MAINTSCRIPT_PACKAGE_REFCOUNT
Definido pelo dpkg no ambiente de scripts do maintainer para a contagem de referência de pacotes,
isto é, o número de instâncias de pacotes com um estado maior que not-installed (desde dpkg 1.17.2).
DPKG_MAINTSCRIPT_ARCH
Definido pelo dpkg no ambiente de scripts do maintainer para a arquitectura que o pacote foi
compilado (desde dpkg 1.15.4).
DPKG_MAINTSCRIPT_NAME
Definido pelo dpkg no ambiente de scripts do maintainer para o nome do script a correr, um de
preinst, postinst, prerm or postrm (desde dpkg 1.15.7).
DPKG_MAINTSCRIPT_DEBUG
Definido pelo dpkg no ambiente de scripts do maintainer para um valor (‘0’ ou ‘1’) que indica se a
depuração foi requisitada (com a opção --debug) para os scripts do maintainer (desde dpkg 1.18.4).
FICHEIROS
/etc/dpkg/dpkg.cfg.d/[0-9a-zA-Z_-]*
Ficheiros de fragmentos de configuração (desde dpkg 1.15.4).
/etc/dpkg/dpkg.cfg
Ficheiro de configuração com as opções predefinidas.
/var/log/dpkg.log
Ficheiro de relatório predefinido (veja /etc/dpkg/dpkg.cfg e a opção --log).
Os outros ficheiros listados em baixo estão nos seus directórios predefinidos, veja a opção --admindir
para saber como modificar as localizações destes ficheiros.
/var/lib/dpkg/available
Lista dos pacotes disponíveis.
/var/lib/dpkg/status
Estados dos pacotes disponíveis. Este ficheiro contem informação acerca de se um pacote está marcado
para remoção ou não, se está instalado ou não, etc. Veja a secção INFORMAÇÃO ACERCA DE PACOTES para
mais informação.
The status file is backed up daily in /var/backups. It can be useful if it's lost or corrupted due to
filesystems troubles.
O formato e conteúdo de um pacote binário está descrito em deb(5).
BUGS
--no-act geralmente dá menos informação do que poderia ser útil.
EXEMPLOS
Para listar pacotes instalados relacionados com o editor vi(1) (note que dpkg-query já não carrega o
ficheiro available por predefinição, e para isso deve ser usada a opção dpkg-query --load-avail):
dpkg -l '*vi*'
Para ver as entradas em /var/lib/dpkg/available de dois pacotes:
dpkg --print-avail elvis vim | less
Para procurar você próprio na listagem de pacotes:
less /var/lib/dpkg/available
Para remover um pacote elvis instalado:
dpkg -r elvis
Para instalar um pacote, primeiro você precisa de encontrá-lo num arquivo ou CDROM. O ficheiro available
mostra que o pacote vim está na secção editors:
cd /media/cdrom/pool/main/v/vim
dpkg -i vim_4.5-3.deb
Para fazer uma cópia local do estado de selecção de pacotes:
dpkg --get-selections> myselections
Você poderá transferir este ficheiro para outro computador, e depois de ter actualizado lá o ficheiro
available com o seu frontend elegido de gestão de pacotes (veja <https://wiki.debian.org/Teams/Dpkg/FAQ>
para mais detalhes), por exemplo:
apt-cache dumpavail | dpkg --merge-avail
ou com o dpkg 1.17.6 e anteriores:
avail=$(mktemp)
apt-cache dumpavail> "$avail"
dpkg --merge-avail "$avail"
rm "$avail"
você pode instala-lo com:
dpkg --clear-selections
dpkg --set-selections <myselections
Note que isto não irá realmente instalar ou remover nada, mas apenas definir o estado de selecção nos
pacotes requeridos. Você irá precisar de alguma outra aplicação para realmente descarregar e instalar os
pacotes requeridos. Por exemplo, correr apt-get dselect-upgrade.
Normalmente, você irá descobrir que o dselect(1) fornece um método mais conveniente de modificar os
estados de selecção de pacotes.
FUNCIONALIDADES ADICIONAIS
Podem ser ganhas funcionalidades adicionais ao instalar qualquer um dos seguintes pacotes: apt, aptitude
e debsums.
VEJA TAMBÉM
aptitude(8), apt(8), dselect(1), dpkg-deb(1), dpkg-query(1), deb(5), deb-control(5), dpkg.cfg(5), e dpkg-
reconfigure(8).
AUTORES
Veja /usr/share/doc/dpkg/THANKS para a lista de pessoas que contribuíram para o dpkg.
TRADUÇÃO
Américo Monteiro
Se encontrar algum erro na tradução deste documento, por favor comunique para Américo Monteiro
<a_monteiro@gmx.com>.
1.21.1 2025-09-09 dpkg(1)