web-dev-qa-db-fra.com

Problème avec dpkg-preconfigure, comment corriger?

J'essayais d'installer TeamViewer et j'ai suivi les instructions ici même si elles spécifient 11.10 au lieu de 12.04 (ce que je cours).

En particulier, j'ai exécuté.

$ wget http://www.teamviewer.com/download/teamviewer_linux.deb
$ Sudo dpkg -i teamviewer_linux.deb

La commande dpkg a échoué et, à partir de ce moment, mon système de conditionnement a été endommagé. Le centre de logiciel me charge d'essayer:

$ Sudo apt-get -f install

qui conduit à

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages will be REMOVED:
  teamviewer7:i386
0 upgraded, 0 newly installed, 1 to remove and 17 not upgraded.
9 not fully installed or removed.
Need to get 89.0 kB of archives.
After this operation, 81.9 MB disk space will be freed.
Do you want to continue [Y/n]? y
Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main dash AMD64 0.5.7-2ubuntu2 [89.0 kB]
Fetched 89.0 kB in 1s (83.9 kB/s)
E: Sub-process /usr/sbin/dpkg-preconfigure --apt || true returned an error code (100)
E: Failure running script /usr/sbin/dpkg-preconfigure --apt || true

À ce stade, je suis perplexe.

3
Eric Wilson

Tout d’abord, supprimez Teamviewer avec:

Sudo dpkg -r teamviewer7

Puis courir

Sudo apt-get update && Sudo apt-get -f install
2
ish

Je viens de rencontrer ce problème et de le corriger tout à l'heure. J'ai commis trois erreurs:

Tout d'abord, je l'ai téléchargé, j'ai essayé de l'installer et j'ai réalisé que mon gestionnaire d'archives ne fonctionnait pas correctement. Ensuite, lorsque j'ai essayé de supprimer le paquet, l'utilisateur root ne pouvait pas accéder à dpkg, j'ai donc différé la désinstallation. Troisième était le pire: j'ai redémarré. En redémarrant Ubuntu 12.04, le système d'exploitation était bloqué au démarrage, comme vous le décrivez.

Heureusement, j'avais une copie de Finnix 103: http://www.finnix.org/ . Après quelques analyses sur la partition du disque dur, je me suis rendu compte que bash, dash et sh avaient été supprimés du répertoire /bin. Je les ai donc copiées depuis l'installation de Finnix:

# mount <ubuntu_partition> /mnt/linux
# cp /bin/bash /mnt/linux/bin/bash
# cp /bin/dash /mnt/linux/bin/dash
# cp /bin/sh /mnt/linux/bin/sh

À ce stade, je pourrais utiliser à nouveau dpkg tout en utilisant chroot sur ma partition Ubuntu. Cependant, j’ai remarqué à nouveau que apt-get insistait pour supprimer à nouveau dash à chaque commande. Donc, j'ai réinstallé dash:

# apt-get install dash

Enfin, j'ai redémarré mon ordinateur et démarré dans Ubuntu 12.04 parfaitement. J'ai inspecté l'historique des paquets et voici mes résultats:

http://sphotos-b.xx.fbcdn.net/hphotos-ash3/545946_10151063058008668_2004083202_n.jpg

Tous les événements à 5:28 PM étaient ceux où j'ai exécuté à l'aveuglette les commandes d'installation recommandées de TeamViewer 7 pour participer à une réunion en ligne:

$ Sudo dpkg -i teamviewer_linux.deb
$ Sudo apt-get -f install

À ce stade, je ne voulais plus de TeamViewer. Donc, pour nettoyer davantage, j'ai purgé teamviewer7:i386 en utilisant dpkg:

$ Sudo dpkg --purge teamviewer7:i386
$ Sudo apt-get remove teamviewer7:i386 

En conclusion, la version TeamViewer 7 i386 pour Linux supprime /bin/dash, qui est la racine de tous les symptômes de l'échec du terminal, jusqu'à l'échec de dpkg jusqu'à l'échec de l'amorçage.

1
Gio Borje