El sistema de paquetes se rompe después de actualizar a Ubuntu 17.04

11

ingrese la descripción de la imagen aquí

Después de actualizar mi Ubuntu a 17.04, el sistema de paquetes no funciona. Cuando ejecuto cualquiera de los siguientes comandos, recibo algún error.

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).

También probé las siguientes soluciones pero no funcionaron.

¿Alguien sabe cómo solucionarlo sin reinstalar Ubuntu?

Casper
fuente
1
Tengo el mismo problema. Intenté las soluciones propuestas aquí y aquí, pero nada funcionó.
guillaume8375

Respuestas:

8

Creo que encontré una solución, pero una gran advertencia: funciona, pero no puedo explicar por qué.

Primero fui a /var/lib/dpkg/info/:

cd /var/lib/dpkg/info/

Luego, eliminé las líneas pertenecientes a los paquetes que causaron los problemas. En mi caso, tuve que hacer:

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

Después de eso, escribí:

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

Después de esto,

sudo apt update

Y finalmente,

sudo apt dist-upgrade

que funcionó y actualizó mis paquetes. Todos los problemas de los paquetes parecen haber desaparecido.

guillaume8375
fuente
1
El comando apt purgevuelve E: Sub-process /usr/bin/dpkg returned an error code (1).
Casper
@Casper para cada paquete?
guillaume8375
Si. Así parece.
Casper el
También tuve que usar aptitude para purgar dependencias, el comando apt / apt-get no pudo hacerlo askubuntu.com/questions/1085665/…
baptx
7

Tuve el mismo problema después de actualizar a Ubuntu 17.04, esto funcionó para mí:

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

No estoy seguro de por qué (¿quizás la versión de clic de pip es diferente de la que Ubuntu depende?) Pero esto solucionó el problema.

Rens Oliemans
fuente
pip3 uninstall clickelimina el clickmódulo que se instaló a través de Pip para Python 3, lo que probablemente solucionaría la queja durante la instalación del paquete en la pregunta de OP, ya que es el método de instalación más común para los módulos de Python en Ubuntu fuera de Apt. Otra opción es que usaban easyinstallo algo así make install.
David Foerster
5

Primero elimine el paquete ' clic ' de Python usando pip:

pip uninstall click

Si usas python3 : pip3 uninstall click

Luego arregle los paquetes por apt :

sudo apt clean
sudo apt install -f 
Ghasem Pahlavan
fuente
1

Esto pareció resolver el problema para mí (al menos ya no recibo mensajes de error):

Hice un sudo apt autoremovey noté los paquetes con dependencias insatisfechas:

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).

Luego fui a http://packages.ubuntu.com/ y en la 'búsqueda' para ingresé los nombres siguientes 'Depende:' y seleccioné 'picante'. Luego descargué los archivos .deb para mi hardware.

Luego, moví todos los archivos .deb a / var / cache / apt / archives:

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

Por último hice:

sudo apt --fix-broken install

que ejecutó sin errores

HTH

Daan
fuente
El comando autoremoveno encontrado. Pero ahora no puedo usarlo apt-getpara instalarlo.
Casper
0
  • Opción 1: busque este paquete de clic externo:

    sudo updatedb
    locate -ir python.*click
    

    Luego elimínelo manualmente, agregue el resultado a la pregunta si tiene dudas.

  • Opción 2: si todavía está en el estado mencionado en la pregunta:

    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. Retire el paquete instalado

      cd /var/lib/dpkg/info/
      sudo mv click-apparmor:amd64.prerm click-apparmor:amd64.prerm.backup
      sudo dpkg --force-depends -r  click-apparmor
      
    2. Intente instalar el nuevo paquete usando:

      sudo apt -f install
      

      Agregue el nuevo error, si lo hay, a la pregunta.

user.dz
fuente