Scroll to navigation

dpkg-divert(1) dpkg suite dpkg-divert(1)

NOME

dpkg-divert - sobrepõe a versão de pacote de um ficheiro

SINOPSE

dpkg-divert [option...] command

DESCRIÇÃO

dpkg-divert é o utilitário usado para definir e actualizar a lista de desvios.

diversions de ficheiros são um modo de forçar o dpkg(1) a não instalar um ficheiro na sua localização, mas numa localização desviada. Estes desvios podem ser usados através dos scripts de pacote Debian para afastar um ficheiro quando este causa um conflito. Os administradores de sistemas também o podem usar para sobrepor ficheiros de configuração de alguns pacotes, ou sempre que alguns ficheiros (que não sejam marcados como “conffiles”) precisam de ser conservados pelo dpkg, quando instala uma versão mais recente do pacote que contém esses ficheiros.

COMANDOS

[--add] file
Adiciona um desvio para file. Este ficheiro é actualmente não renomeado, veja --rename.
--remove file
Remove um desvio para file. Este ficheiro é actualmente não renomeado, veja --rename.
--list glob-pattern
Lista desvios que correspondem a glob-pattern.
--listpackage file
Escreve o nome do pacote que desvia file (desde dpkg 1.15.0). Escreve LOCAL se file é desviado localmente e nada se file não é desviado.
--truename file
Escreve o nome real para um ficheiro desviado.

OPÇÕES

--admindir directory
Define o directório administrativo para directory. A predefinição é «/var/lib/dpkg».
--instdir directory
Define o directório de instalação, o qual se refere ao directório onde os pacotes são instalados (desde dpkg 1.19.2). A predefinição é «/».
--root directory
Define o directório raiz para directory, o que define o directório de instalação para «directory» e o directório administrativo apara «directory/var/lib/dpkg» (desde dpkg 1.19.2).
--divert divert-to
divert-to é a localização para onde as versões de file, como fornecido por outros pacotes, serão desviadas.
--local
Especifica que todas as versões de pacotes deste ficheiro são desviadas. Isto significa, que não há excepções, e seja em que pacote esteja instalado, o ficheiro é desviado. Isto pode ser usado pro uma administrador para instalar uma versão modificada localmente.
--package package
package é o nome do pacote cuja cópia de file não será desviada. Isto é, file será desviado para todos os pacotes excepto package.
--quiet
Modo silencioso, isto é, não há resultados detalhados.
--rename
Actualmente mete o ficheiro de lado (ou para trás). dpkg-divert irá abortar a operação no caso do ficheiro de destino já existir. Este é o comportamento comum usado para desvios de ficheiros de um conjunto de pacotes não-Essential (veja --no-rename para mais detalhes).
--no-rename
Especifica que o ficheiro não deve ser renomeado enquanto se adiciona ou remove o desvio na base de dados (desde dpkg 1.19.1). Isto destina-se a desvios de ficheiros do conjunto de pacotes Essential, onde o desaparecimento temporário do ficheiro original não é aceitável, pois pode tornar o sistema não-funcional. Este é o comportamento predefinido, mas isso irá mudar no ciclo dpkg 1.20.x.
--test
Modo de teste, isto é, não faz realmente nenhumas alterações, apenas uma demonstração.
-?, --help
Mostra a mensagem de utilização e termina.
--version
Mostra a versão e termina.

ESTADO À SAÍDA

0
A acção requisitada foi executada com sucesso.
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

DPKG_ROOT
Se definido e as opções --instdir ou --root não foram especificadas, será usado como o directório raiz do sistema de ficheiros (desde dpkg 1.19.2).
DPKG_ADMINDIR
Se definido e as opções --admindir ou --root não foram especificadas, será usado como o directório de dados do dpkg.
DPKG_MAINTSCRIPT_PACKAGE
Se definido e as opções --local e --package não foram especificadas, dpkg-divert irá usá-lo como o nome do pacote.
DPKG_COLORS
Define o modo de cor (desde dpkg 1.18.5). Os valores actualmente aceites são: auto (predefinido), always e never.

FICHEIROS

/var/lib/dpkg/diversions
Ficheiro que contém a lista actual das divergências do sistema. Está localizado no directório de administração do dpkg, juntamente com outros ficheiros importantes para o dpkg, tais como <estado> ou disponível.

Nota: O dpkg-divert preserva uma cópia antiga deste ficheiro, com a extensão -old, antes do o substituir pelo novo.

NOTAS

Quando adiciona, a predefinição é --local e --divert original.distrib. Quando remove, --package ou --local e --divert tem de corresponder se for especificado.

Os directórios não podem ser desviados com dpkg-divert.

Deve tomar-se cuidado ao desviar bibliotecas partilhadas, ldconfig(8) cria um link simbólico baseado no campo DT_SONAME embebido na biblioteca. Devido a ldconfig não honrar desvios (apenas dpkg o faz), o link simbólico pode acabar a apontar para a biblioteca desviada, se uma biblioteca desviada tiver o mesmo SONAME que a não desviada.

EXEMPLOS

Para desviar todas as cópias de um /usr/bin/example para /usr/bin/example.foo, isto é, direcciona todos os pacotes que fornecem /usr/bin/example para o instalar como /usr/bin/example.foo, executando a mudança de nome caso necessário:

 dpkg-divert --divert /usr/bin/example.foo --rename /usr/bin/example

Para remover esse desvio:

 dpkg-divert --rename --remove /usr/bin/example

Para desviar qualquer pacote que tente instalar /usr/bin/example para /usr/bin/example.foo, excepto o seu próprio pacote wibble:

 dpkg-divert --package wibble --divert /usr/bin/example.foo \
    --rename /usr/bin/example

Para remover esse desvio:

 dpkg-divert --package wibble --rename --remove /usr/bin/example

VEJA TAMBÉM

dpkg(1).

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>.

2021-04-13 1.20.9