Perdido / excluído dpkg (gerenciador de pacotes para o Debian). Como faço para recuperá-la?

8

Sistema operacional: Ubuntu 12.04

Excluído acidentalmente dpkg. Agora, os pacotes não podem ser instalados. Então, precisa de um dpkginstalador que instale pacotes.

Raghu G
fonte

Respostas:

2

Faça o download do pacote complementar à versão da sua distribuição. https://launchpad.net/ubuntu/+source/dpkg/1.16.1.2ubuntu7

Descompacte o arquivo.

cd para a raiz do diretório de origem dpkg.

./configure

make

sudo make install

Pode ser necessário fazer o download de alguns pacotes se ./configurefalhar

j0h
fonte
quando eu digito "./configure", ele diz algo e no final deles: "configure: error: nenhuma biblioteca de maldições encontrada" ...
Mohammad Mahdi Naderi
Na verdade, isso não explica nada e não funciona atualmente. ./configure requer várias coisas e não está claro o que exatamente ele quer.
G_V
1
@G_V Se você tiver uma nova pergunta, tenho certeza de que alguém gostaria de fornecer uma explicação longa. Poste seus erros de configuração na sua nova pergunta. Parece que você precisa instalar alguns pacotes para que o dpkg funcione.
j0h
@ j0h Acabei fazendo uma instalação de reparo da minha partição do sistema operacional, menos problemas. Eu realmente não entendi o que ./configure era ou o que o make realmente fazia, pois nunca havia instalado nada via make antes. Esse link ajudou a entender o que realmente estava acontecendo.
G_V 27/10/17
9

Dependendo exatamente do que você removeu, você poderá recuperar a situação extraindo as partes necessárias de um .debarquivo baixado manualmente . O truque, é claro, é encontrar uma maneira de descompactar o .debarquivo sem funcionar dpkg- felizmente, há uma solução aqui

Como extrair e instalar .deb sem o comando dpkg?


Primeiro, vá para packages.ubuntu.com e baixe o .debarquivo apropriado para a versão e a arquitetura do seu SO, por exemplo

mkdir debroot && cd debroot
wget http://mirrors.kernel.org/ubuntu/pool/main/d/dpkg/dpkg_1.18.4ubuntu1_amd64.deb

Agora descompacte o arquivo deb usando arno lugar do usualdpkg -x

ar -x dpkg_1.18.4ubuntu1_amd64.deb

(substitua dpkg_1.18.4ubuntu1_amd64.debpelo nome da deb atual que você baixou). Agora você deve ter o seguinte conteúdo

control.tar.gz  data.tar.gz  debian-binary  dpkg_1.18.4ubuntu1_amd64.deb

Os arquivos do pacote devem estar localizados no diretório data.tar.gzpara extrair o dpkgarquivo binário localmente

tar xf data.tar.gz ./usr/bin/dpkg

Se isso funcionou, você deve ter um arquivo no ./usr/bin/dpkg qual possa copiar para o /usr/bindiretório

sudo cp ./usr/bin/dpkg /usr/bin/

[Observe que você pode descompactar o arquivo diretamente em relação ao /uso, sudo tar -C ...mas fazê-lo em duas etapas parece um pouco mais seguro.]


Se isso funcionar, eu recomendo reinstalar tudo do repositório para obter consistência, ou seja

sudo apt-get update
sudo apt-get install --reinstall dpkg

(em sistemas mais novos, você pode substituir apt-getpor apt).

chave de aço
fonte