11 votes

Le système de paquets est cassé après la mise à jour vers Ubuntu 17.04

enter image description here

Après avoir mis à niveau mon Ubuntu vers la version 17.04, le système de paquets est cassé. Lorsque j'exécute l'une des commandes suivantes, j'obtiens une erreur.

sudo apt-get --fix-broken install

$ sudo apt-get --fix-broken install
...
...
ubuntuone-credentials-common unity-plugin-scopes unity-scope-
mediascanner2
  unity-webapps-qml url-dispatcher usermetricsservice vbetool vlc-nox
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  click-apparmor
The following packages will be upgraded:
  click-apparmor
1 upgraded, 0 newly installed, 0 to remove and 3 not upgraded.
Need to get 0 B/10.7 kB of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue? [Y/n] y
(Reading database ... 625249 files and directories currently installed.)
Preparing to unpack .../click-apparmor_0.3.18_amd64.deb ...
Cannot start click due to a conflict with a different locally-installed Python 'click' package.  Remove it using Python packaging tools and try again.
dpkg: warning: subprocess old pre-removal script returned error exit status 1
dpkg: trying script from the new package instead ...
Cannot start click due to a conflict with a different locally-installed Python 'click' package.  Remove it using Python packaging tools and try again.
dpkg: error processing archive /var/cache/apt/archives/click-apparmor_0.3.18_amd64.deb (--unpack):
 subprocess new pre-removal script returned error exit status 1
Errors were encountered while processing:
 /var/cache/apt/archives/click-apparmor_0.3.18_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

sudo apt-get full-upgrade

$ sudo apt-get full-upgrade
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 click-apparmor : Depends: python3-apparmor-click (= 0.3.17) but 0.3.18 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

J'ai également essayé les solutions suivantes, mais elles n'ont pas fonctionné.

Quelqu'un sait-il comment le réparer sans réinstaller Ubuntu ?

8voto

Ronald Nepsund Points 97

Je pense avoir trouvé une solution, mais avec un gros bémol : ça marche, mais je ne peux pas expliquer pourquoi.

D'abord, je suis allé à /var/lib/dpkg/info/ :

cd /var/lib/dpkg/info/

Ensuite, j'ai supprimé les lignes relatives aux paquets qui posaient problème. Dans mon cas, j'ai dû le faire :

sudo rm -r python3-apparmor-click.*
sudo rm -r click-apparmor.*
sudo rm -r click.*
sudo rm -r ubuntu-app-launch.* 
sudo rm -r url-dispatcher-tools.*
sudo rm -r url-dispatcher:amd64.*
sudo rm -r libunity-scopes1.0:amd64

Après ça, j'ai tapé :

sudo apt purge python3-apparmor-click
sudo apt purge click-apparmor    
sudo apt purge click
sudo apt purge ubuntu-app-launch
sudo apt purge url-dispatcher-tools
sudo apt purge url-dispatcher:amd64
sudo apt purge libunity-scopes1.0

Après ça,

sudo apt update

Et enfin,

sudo apt dist-upgrade

qui a fonctionné et mis à jour mes paquets. Tous les problèmes liés aux paquets semblent avoir disparu.

7voto

Rens Oliemans Points 106

J'ai eu le même problème après la mise à jour vers Ubuntu 17.04, ceci a fonctionné pour moi :

sudo -H pip3 uninstall click
sudo apt install python3-click-package
sudo apt upgrade
sudo apt autoremove

Je ne sais pas trop pourquoi (peut-être que la version de pip pour le clic est différente de celle dont Ubuntu dépend ?) mais cela a réglé le problème.

5voto

Ghasem Pahlavan Points 1717

Supprimez d'abord le Python ' cliquez sur en utilisant le paquet pip :

pip uninstall click

Si vous utilisez python3 : pip3 uninstall click

Fixez ensuite les paquets en apt :

sudo apt clean
sudo apt install -f

1voto

Daan Points 11

Cela semble avoir résolu le problème pour moi (au moins, je ne reçois plus de messages d'erreur) :

J'ai fait un sudo apt autoremove et a noté les paquets avec des dépendances non satisfaites :

Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt --fix-broken install' to correct these.
The following packages have unmet dependencies:
 bind9-host : Depends: libdns162 (= 1:9.10.3.dfsg.P4-10.1ubuntu4) but 1:9.10.3.dfsg.P4-10.1ubuntu1.4 is installed
 dnsutils : Depends: libdns162 (= 1:9.10.3.dfsg.P4-10.1ubuntu4) but 1:9.10.3.dfsg.P4-10.1ubuntu1.4 is installed
 gnome-software : Depends: gnome-software-common (= 3.22.7-0ubuntu3) but 3.20.1+git20170208.0.a34b091-0ubuntu1 is installed
 gvfs : Depends: gvfs-daemons (>= 1.30.4-0ubuntu1)
 gvfs-backends : Depends: gvfs-daemons (= 1.30.4-0ubuntu1)
 gvfs-daemons : Depends: gvfs-libs (= 1.28.2-1ubuntu2) but 1.30.4-0ubuntu1 is installed
                Depends: gvfs-common (= 1.28.2-1ubuntu2) but 1.30.4-0ubuntu1 is installed
E: Unmet dependencies. Try 'apt --fix-broken install' with no packages (or specify a solution).

Ensuite, je suis allé à http://packages.ubuntu.com/ et dans le paragraphe 'recherche', j'ai entré les noms suivant 'Depends:' et sélectionné 'zesty'. J'ai ensuite téléchargé les fichiers .deb pour mon matériel.

Ensuite, j'ai déplacé tous les fichiers .deb vers /var/cache/apt/archives :

sudo mv *.deb /var/cache/apt/archives

Enfin, je l'ai fait :

sudo apt --fix-broken install

qui s'est exécuté sans erreur

HTH

0voto

user.dz Points 45060
  • Option 1 : Recherchez le paquet de clics étrangers :

    sudo updatedb
    locate -ir python.*click

    Ensuite, supprimez-le manuellement, ajoutez la sortie à la question si vous avez un doute.

  • Option 2 : Si vous êtes toujours dans l'état mentionné dans la question :

    Preparing to unpack .../click-apparmor_0.3.18_amd64.deb ...
    Cannot start click due to a conflict with a different 
      locally-installed Python 'click' package.  Remove it 
      using Python packaging tools and try again.
    dpkg: warning: subprocess old pre-removal script returned error exit status 1
    1. Retirer le paquet installé

      cd /var/lib/dpkg/info/
      sudo mv click-apparmor:amd64.prerm click-apparmor:amd64.prerm.backup
      sudo dpkg --force-depends -r  click-apparmor
    2. Essayez d'installer le nouveau paquet en utilisant :

      sudo apt -f install

      Ajoutez la nouvelle erreur, le cas échéant, à la question.

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