Dpkg perdu / supprimé (gestionnaire de paquets pour Debian). Comment est-ce que je le récupère?

8

OS: Ubuntu 12.04

Accidentellement supprimé dpkg. Désormais, les packages ne peuvent pas être installés. Donc, a besoin d'un programme d' dpkginstallation qui installe les packages.

Raghu G
la source

Réponses:

2

Téléchargez le package complémentaire à la version de votre distribution. https://launchpad.net/ubuntu/+source/dpkg/1.16.1.2ubuntu7

Décompressez le fichier.

cd à la racine du répertoire source de dpkg.

./configure

make

sudo make install

Vous devrez peut-être télécharger certains packages en cas d' ./configureéchec

j0h
la source
quand je tape "./configure" ça dit quelque chose et à la fin d'eux: "configure: erreur: aucune bibliothèque de malédictions trouvée" ...
Mohammad Mahdi Naderi
Cela n'explique en fait rien et cela ne fonctionne pas actuellement. ./configure nécessite un tas de choses et on ne sait pas exactement ce qu'il veut.
G_V
1
@G_V Si vous avez une nouvelle question, je suis sûr que quelqu'un aimerait fournir une longue explication. Postez vos erreurs de configuration à votre nouvelle question. Il semble que vous devez installer certains packages pour que dpkg fonctionne.
j0h
@ j0h J'ai fini par faire une installation de réparation de ma partition OS, moins de tracas. Je ne comprenais pas vraiment à quoi servait ./configure ou ce que faisait vraiment puisque je n'avais jamais rien installé via make auparavant. Ce lien a aidé à comprendre ce qui se passait réellement.
G_V
9

Selon exactement ce que vous avez supprimé, vous pourrez peut- être sauver la situation en extrayant les pièces nécessaires d'un .debfichier téléchargé manuellement . L'astuce, bien sûr, consiste à trouver un moyen de décompresser le .debfichier sans travail dpkg- heureusement, il existe une solution ici

Comment extraire et installer .deb sans la commande dpkg?


Rendez-vous d'abord sur packages.ubuntu.com et téléchargez le .debfichier approprié pour la version et l'architecture de votre système d'exploitation, par exemple

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

Décompressez maintenant le fichier deb en utilisant arà la place de l'habitueldpkg -x

ar -x dpkg_1.18.4ubuntu1_amd64.deb

(remplacez dpkg_1.18.4ubuntu1_amd64.debpar le nom du deb réel que vous avez téléchargé). Vous devriez maintenant avoir le contenu suivant

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

Les fichiers du package doivent être situés dans le data.tar.gzafin d'extraire le dpkgfichier binaire localement

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

Si cela a fonctionné, vous devriez avoir un fichier dans ./usr/bin/dpkg lequel vous pouvez copier dans votre /usr/binrépertoire

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

[Notez que vous pouvez décompresser le fichier directement par rapport à l' /utilisation, sudo tar -C ...mais le faire en deux étapes semble un peu plus sûr.]


Si cela fonctionne, je recommanderais de réinstaller le tout à partir du référentiel pour la cohérence, c'est-à-dire

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

(sur les systèmes plus récents, vous pouvez remplacer apt-getpar apt).

tournevis
la source