47 votes

Comment corriger un paquetage défectueux lorsque "apt-get install -f" ne fonctionne pas ?

J'ai essayé d'installer Scala avec la pile typesafe et s'est attiré des ennuis. Maintenant je ne peux pas faire grand chose avec apt (sauf mettre à jour), le paquet cassé semble être impossible à supprimer/nettoyer :

Voici le résultat de apt-get -f install :

$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  gstreamer0.10-fluendo-mp3:i386 scala-library liboil0.3:i386
Use 'apt-get autoremove' to remove them.
The following extra packages will be installed:
  scala
The following NEW packages will be installed:
  scala
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
4 not fully installed or removed.
Need to get 21.5 MB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? Y
Get:1 http://apt.typesafe.com/ unicorn/main scala all 2.9.2-400 [21.5 MB]
Fetched 21.5 MB in 13s (1,567 kB/s)                                                                          
(Reading database ... 329381 files and directories currently installed.)
Unpacking scala (from .../scala_2.9.2-400_all.deb) ...
dpkg: error processing /var/cache/apt/archives/scala_2.9.2-400_all.deb (--unpack):
 trying to overwrite '/usr/share/java/scala-partest.jar', which is also in package scala-library 2.9.1.dfsg-3
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:
 /var/cache/apt/archives/scala_2.9.2-400_all.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Voici ma tentative de autoremove :

$ apt-get autoremove
E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?
phdp@desktop:~/work/manuscripts/ideas/ibm_food_webs$ sudo apt-get autoremove
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
 typesafe-stack : Depends: scala but it is not installed
E: Unmet dependencies. Try using -f.

48voto

dzgeek Points 589

J'ai résolu mon problème en utilisant cette commande :

sudo dpkg -i --force-overwrite path-to-the-deb-file

Si --force-overwrite ne fonctionne pas, essayez :

sudo dpkg -i --force-overwrite-all path-to-the-deb-file

Dans votre cas :

sudo dpkg -i --force-overwrite /var/cache/apt/archives/scala_2.9.2-400_all.deb

15voto

premal Points 1413

La commande suivante a fonctionné.

sudo rm -rf /var/lib/dpkg/updates/*
sudo rm -rf /var/lib/apt/lists/*
sudo rm /var/cache/apt/*.bin
sudo apt-get clean
sudo apt-get autoremove
sudo apt-get update
sudo dpkg --configure -a
sudo apt-get install -f

Si vous obtenez toujours la même erreur, essayez

sudo dpkg --remove --force-remove-reinstreq package_name 

Après avoir supprimé le paquet, mettez à jour votre système et redémarrez-le une fois.

13voto

Eliah Kagan Points 111731

Il semble que la suppression du scala-library et reconfigurer ensuite pourrait fonctionner. Vous êtes donc sur la bonne voie. Les commandes correctes sont, dans l'ordre, les suivantes :

sudo apt-get autoremove
sudo apt-get install -f

Votre autoremove n'a pas abouti parce que vous ne l'avez pas exécutée en tant que root (en utilisant sudo ).

8voto

Bob Points 1

Dans mon cas, cela a fonctionné :

sudo dpkg -P package_name 

(pas de nom de débit)

4voto

La façon la plus simple d'ouvrir synaptique . Il vous indiquera que des paquets cassés ont été trouvés. Vous devez donc localiser les paquets cassés et les supprimer, puis vous pouvez faire ce que vous voulez.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X