No se pudo calcular la actualización, ¿qué pasó?

67

Estoy corriendo sudo update-manager -de inicio el proceso de actualización. Selecciono la opción de actualización y cuando el administrador ingresa Setting new software channels, arroja un error.

No se pudo calcular la actualización.

Se produjo un problema irresoluble al calcular la actualización.

 Esto puede ser causado por:
 * Actualización a una versión preliminar de Ubuntu
 * Ejecución de la versión actual de prelanzamiento de Ubuntu
 * Paquetes de software no oficiales no proporcionados por Ubuntu

Si nada de esto aplica, informe este error utilizando el comando 'ubuntu-bug ubuntu-release-Updader-core' en un terminal.

He desactivado todos los paquetes no oficiales y de terceros, no estoy ejecutando una versión preliminar ya que estoy en 13.04 y estoy tratando de actualizar a beta 2, que no es una versión preliminar. Antes de completar un informe de error, dado que le está sucediendo a mis dos sistemas, me gustaría saber si alguien más tuvo los mismos problemas.

EDITAR : salida agregada para comentario.

$ sudo dpkg -l | grep -w "rc"`
rc google-chrome-beta 31.0.1650.16-1 amd64 The web browser from Google
ii sysv-rc 2.88dsf-13.10ubuntu15 all System-V-like runlevel change mechanism

$ cat /etc/apt/sources.list

deb http://dk.archive.ubuntu.com/ubuntu/ raring main restricted
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring main restricted

deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates main restricted
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates main restricted

deb http://dk.archive.ubuntu.com/ubuntu/ raring universe
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring universe
deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates universe
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates universe

deb http://dk.archive.ubuntu.com/ubuntu/ raring multiverse
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring multiverse
deb http://dk.archive.ubuntu.com/ubuntu/ raring-updates multiverse
deb-src http://dk.archive.ubuntu.com/ubuntu/ raring-updates multiverse

deb http://security.ubuntu.com/ubuntu raring-security main restricted
deb-src http://security.ubuntu.com/ubuntu raring-security main restricted
deb http://security.ubuntu.com/ubuntu raring-security universe
deb-src http://security.ubuntu.com/ubuntu raring-security universe
deb http://security.ubuntu.com/ubuntu raring-security multiverse
deb-src http://security.ubuntu.com/ubuntu raring-security multiverse

deb http://extras.ubuntu.com/ubuntu raring main
deb-src http://extras.ubuntu.com/ubuntu raring main
deb http://dk.archive.ubuntu.com/ubuntu/ raring-proposed multiverse universe restricted main

$ lsb_release -c
Codename:   raring

$ sudo apt-get -y install aptitude && \
      sudo rename 's/\.list$/.list.disable/' /etc/apt/sources.list.d/*.list && \
      sudo aptitude update && \
      aptitude search '?narrow(?installed, !?archive(raring))'`

i   dropbox                       - cloud synchronization engine - CLI and Nautilus extension                      
i   google-chrome-stable          - The web browser from Google                                                    
i   google-talkplugin             - Google Talk Plugin                                                             
i   libdrm-intel1                 - Userspace interface to intel-specific kernel DRM services -- runtime           
i   libdrm-nouveau2               - Userspace interface to nouveau-specific kernel DRM services -- runtime         
i   libdrm-radeon1                - Userspace interface to radeon-specific kernel DRM services -- runtime          
i   libdrm2                       - Userspace interface to kernel DRM services -- runtime                          
i   libegl1-mesa                  - free implementation of the EGL API -- runtime                                  
i   libegl1-mesa-drivers          - free implementation of the EGL API -- hardware drivers                         
i   libgbm1                       - generic buffer management API -- runtime                                       
i   libgl1-mesa-dri               - free implementation of the OpenGL API -- DRI modules                           
i   libgl1-mesa-glx               - free implementation of the OpenGL API -- GLX runtime                           
i   libglapi-mesa                 - free implementation of the GL API -- shared library                            
i A libgles2-mesa                 - free implementation of the OpenGL|ES 2.x API -- runtime                        
i   libllvm3.3                    - Low-Level Virtual Machine (LLVM), runtime library                              
i   libopenvg1-mesa               - free implementation of the OpenVG API -- runtime                               
i   libxatracker1                 - X acceleration library -- runtime                                              
i   nodejs                        - Node.js event-based server-side javascript engine                              
id  nvidia-persistenced           - Load the NVIDIA kernel driver and create device files                          
id  nvidia-settings-331           - Tool for configuring the NVIDIA graphics driver                                
i   simplescreenrecorder          - A feature-rich screen recorder that supports X11 and OpenGL.                   
i A simplescreenrecorder-lib      - A feature-rich screen recorder that supports X11 and OpenGL.                   
i   sublime-text                  - Sublime Text is a sophisticated text editor for code, markup and prose         
i   vokoscreen                    - easy to use screencast creator                                                 
i   xserver-common                - common files used by various X servers                                         
i   xserver-xorg-core             - Xorg X server - core server                                                    
i   xserver-xorg-input-synaptics  - Synaptics TouchPad driver for X.Org server                                     
i   xserver-xorg-video-ati        - X.Org X server -- AMD/ATI display driver wrapper                               
i   xserver-xorg-video-cirrus     - X.Org X server -- Cirrus display driver                                        
i   xserver-xorg-video-intel      - X.Org X server -- Intel i8xx, i9xx display driver                              
i   xserver-xorg-video-mach64     - X.Org X server -- ATI Mach64 display driver                                    
i   xserver-xorg-video-nouveau    - X.Org X server -- Nouveau display driver                                       
i   xserver-xorg-video-r128       - X.Org X server -- ATI r128 display driver                                      
i   xserver-xorg-video-radeon     - X.Org X server -- AMD/ATI Radeon display driver                                
i   xserver-xorg-video-vmware     - X.Org X server -- VMware display driver        
top-less
fuente
Parece que es causado por controladores de video de propiedad.
topless
Ejecute este comando y publique el resultado en su respuesta después de la edición:sudo dpkg -l | grep -w "rc"
Saurav Kumar
@Braiam He agregado el resultado que solicitó, apt-get check es Construir árbol de dependencia e Leer información de estado ... Hecho, y dpkg no da un resultado.
topless
¿Podría hacer lo siguiente: sudo apt-get -y install aptitude && sudo rename 's/\.list$/.list.disable/' /etc/apt/sources.list.d/*.list && sudo aptitude update && aptitude search '?narrow(?installed, !?archive(raring))'y pegar los resultados? El primer comando instalará aptitude, el segundo deshabilitará todos los PPA, el tercero actualizará su lista y el cuarto listará todos los paquetes que no provienen del repositorio.
Braiam

Respuestas:

47

Lo que funcionó para mí fue eliminar los paquetes rotos, ya que impedían la actualización.

Primero descubra qué paquetes están rotos:

grep Broken /var/log/dist-upgrade/apt.log

Luego quítelos:

sudo apt-get remove <packages to remove>

Algunos pueden reinstalarse durante la actualización, otros puede que tenga que reinstalarlo usted mismo.

DaShaun
fuente
3
Parece que tengo una gran lista de paquetes de xserver-xorg-video- * que están rotos. No estoy realmente seguro, pero siento que si empiezo a eliminarlos, mi sistema se romperá. ¿Lograste eliminarlos con éxito? ¿Qué tipo de paquetes te estaban causando problemas?
topless
2
Tuve que quitar lo mismo. Las versiones "buenas" volvieron cuando se completó la actualización. Mi actualización fue un éxito.
DaShaun
1
Tengo los mismos problemas con los paquetes xserver-xorg-video- *. ¿Cómo los eliminaste? sudo apt-get remove xserver-xorg-video-*? Tengo una pregunta aquí con más detalles.
modulitos
3
Eso es exactamente lo que hice 'sudo apt-get remove xserver-xorg-video- *'
DaShaun
8
grep Broken grep Broken /var/log/dist-upgrade/apt.logme da más de 700 filas. Definitivamente no puedo eliminarlos a todos.
pasha.zhukov
29

Después de que su sistema no se actualice, verifique el archivo /var/log/dist-upgrade/main.log

Encontré la línea:

2013-10-17 15:00:30,543 ERROR Dist-upgrade failed: 'The package 'xubuntu-desktop' is marked for removal but it is in the removal blacklist.'

Eliminé manualmente xubuntu-desktop. La actualización luego continuó sin problemas.

Jake
fuente
2
¿Hay alguna forma de mantener este paquete y aún actualizarlo? Tengo postgresql-9.2y no quiero eliminarlo.
Abdulsattar Mohammed
1
simplemente puede reinstalarlo una vez que se complete la actualización.
ImaginaryRobots
Después de eliminar el único ERROR presente, recibí un segundo ERROR diferente cuando volví a ejecutarlo, do-release-upgradeasí que tuve que eliminarlo manualmente también. Es posible que tenga que hacer esto varias veces si tiene la mala suerte. También es posible que uno de los otros métodos también los haya resaltado, como retener o interrumpir, pero no los probé.
northern-bradley
Postgres parecía ser lo que me frenaba. ¡Gracias por señalar eso @AbdulsattarMohammed!
jocull
5

Problema similar aquí. Las últimas líneas en el archivo "main.log" indicadas en la publicación anterior fueron:

2013-10-17 23:44:38,233 DEBUG blacklist expr 'unity$' matches 'unity'
2013-10-17 23:44:38,233 DEBUG The package 'unity' is marked for removal but it's in the removal blacklist
2013-10-17 23:44:43,585 ERROR Dist-upgrade failed: 'The package 'unity' is marked for removal but it is in the removal blacklist.'
2013-10-17 23:44:43,586 DEBUG abort called
2013-10-17 23:44:43,592 DEBUG openCache()
2013-10-17 23:44:43,592 DEBUG failed to SystemUnLock() (E:Not locked) 
2013-10-17 23:44:46,786 DEBUG /openCache(), new cache size 41453
2013-10-17 23:44:46,786 DEBUG enabling apt cron job

Ahora se desinstala manualmente la unidad y la actualización. No estoy seguro de qué causa este problema en primer lugar y si esta es realmente una buena "solución", pero supongo que lo descubriré después de que se complete la actualización.

Maarten Jacobs
fuente
4

Si está utilizando los controladores de video fglrx AMD / ATI patentados, la eliminación de los paquetes fglrx y el controlador de video xorg probablemente lo reparará:

sudo apt-get remove fglrx fglrx-amdcccle-updates
sudo apt-get remove xserver-xorg-video-ati:amd64

En mi caso, tenía los controladores fglrx instalados desde el PPA xorg-edgers, y la eliminación de esos paquetes borró mi actualización. Una vez que se completa la actualización, puede volver a realizar el proceso de configuración de los controladores propietarios.

Robots imaginarios
fuente
¡Esto fue lo que funcionó para mí!
Nick Grealy
fglrx-coreaún quedaba en mi sistema después de hacer esto. Otros también pueden necesitar eliminarlo.
Michael Hoffmann
4

En mi caso, el problema fue causado por un paquete que estaba en estado de espera . Volver a instalarlo resolvió el problema.


Una posible forma de poner o quitar un paquete en estado de retención es mediante el uso dpkg. Primero, obtiene el estado actual de todos los paquetes y lo coloca en un archivo:

dpkg --get-selections > myselection

Luego, edita el archivo y lo reemplaza installpor hold, o viceversa. Finalmente, configura la nueva selección:

sudo dpkg --set-selections < myselection
sudo apt-get update
sudo apt-get upgrade

Se describen otras formas en ¿Cómo evitar que un paquete se actualice?

Charles Brunet
fuente
1
¿Por qué no nos cuentas cómo lo hiciste? Esta no es una respuesta completa, intente describir sus pasos. ¿Cómo encontraste el paquete y las acciones que tomaste?
topless
1
¿Cómo saber qué paquetes están en estado de espera?
Dennis
2

Aparentemente hay una manera fácil, simplemente agregue /raringa cada nombre de paquete, así:

sudo apt-get install dropbox/raring google-chrome-stable/raring google-talkplugin/raring libdrm-intel1/raring libdrm-nouveau2/raring libdrm-radeon1/raring libdrm2/raring libegl1-mesa/raring libegl1-mesa-drivers/raring libgbm1/raring libgl1-mesa-dri/raring libgl1-mesa-glx/raring libglapi-mesa/raring libllvm3.3/raring libopenvg1-mesa/raring libxatracker1/raring nodejsnvidia-persistencednvidia-settings-331/raring simplescreenrecorder/raring sublime-text/raring vokoscreen/raring xserver-common/raring xserver-xorg-core/raring xserver-xorg-input-synaptics/raring xserver-xorg-video-ati/raring xserver-xorg-video-cirrus/raring xserver-xorg-video-intel/raring xserver-xorg-video-mach64/raring xserver-xorg-video-nouveau/raring xserver-xorg-video-r128/raring xserver-xorg-video-radeon/raring xserver-xorg-video-vmware/raring

Si no funciona, intente el siguiente método.


Eso era de esperar, tiene varios paquetes que no son de los repositorios de Ubuntu que son críticos para la instalación. Debería degradarlos, uno por uno (no he encontrado una manera eficiente de hacer esto) y luego intentar la actualización. Haré uno como ejemplo:

$ apt-cache policy libdrm2
libdrm2:
  Installed: 2.4.43-0ubuntu1.1
  Candidate: 2.4.43-0ubuntu1.1
  Version table:
 *** 2.4.43-0ubuntu1.1 0
        100 /var/lib/dpkg/status
     2.4.43-0ubuntu1 0
        500 http://archive.ubuntu.com/ubuntu/ raring/main amd64 Packages

En su caso, debería aparecer algo como esto. Debe tomar nota de la versión que tiene una URL, en este caso, 2.4.43-0ubuntu1que tiene http://archive.ubuntu.com/ubuntu/, salvar el par para más tarde en un archivo de texto en el formato <package>=<version>.

Si ves algo como:

fluxgui:
  Installed: 1.1.8
  Candidate: 1.1.8
  Version table:
 *** 1.1.8 0
        100 /var/lib/dpkg/status

observe que no tiene una URL , entonces ese paquete se puede eliminar:

sudo apt-get remove fluxgui

Luego de terminar su lista debería verse así:

libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1 libdrm2 = 2.4.43-0ubuntu1

(de nuevo y ejemplo, pero puede que tengas una idea)

Una vez que tenga su lista completa, escriba sudo apt-get -f instally pegue su lista completa, para que se vea así:

sudo apt-get -f install libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1 libdrm2=2.4.43-0ubuntu1

Si quieres hacerlo un poco más rápido, puedes usarlo apt-cache policy libdrm2 libgbm1con varios nombres de paquetes.

Braiam
fuente
bueno, el primer enfoque no resolvió el problema, hoy tendré algo de tiempo para seguir los pasos uno por uno que sugieran. Sin embargo, sería bueno proporcionar el comando para revertir los primeros cambios, ya que ahora no puede realmente actualizar apt-get.
topless
@topless si falla el primer comando, significa que no se hizo nada. Si apt-get updateno funciona, significa otra cosa.
Braiam
en apt-get updateconsigo este tipo de erroresN: Ignoring file 'xorg-edgers-ppa-raring.list.disable' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
tetas al aire
Esa es una información / advertencia, se puede ignorar y se espera ya que no queremos que haya PPA en el camino.
Braiam
Incluiré "una forma eficiente" de eliminar paquetes "uno por uno" en mi respuesta a continuación. Es solo una colección de todos los consejos que he recibido de todas partes.
nyxee
1

Seguí varias de las respuestas anteriores, intentando que la actualización funcionara, ninguna de las que no implicaba eliminar paquetes rotos funcionó. Tenía 144 paquetes rotos, lo que parecía completamente poco práctico. Los eliminé uno a la vez, intentando la actualización después de cada uno. Después de eliminar 3 (perl-base, gnuplot, gnuplot-11), elegidos esencialmente al azar, la actualización tuvo éxito. (14.04 a 16.04).

rdl
fuente
0

Tuve el mismo problema, pero fue superado fácilmente ejecutando lo siguiente en la terminal:

sudo apt-get remove
sudo apt-get autoremove
seyDoggy
fuente
3
sudo apt-get removeno hace nada
Guntbert
Ahh, pero enumera los paquetes que podrían eliminarse con la eliminación automática. :) hay locura en mi método.
seyDoggy
1
También lo hace sudo apt-get autoremove.
guntbert
+1 - Tuve que corrersudo apt-get autoremove
Nick Grealy
-1

Ya respondí esto hace un tiempo si había hecho una simple búsqueda aquí antes de publicar la pregunta.

sudo mv /etc/apt/sources.list.d/ /etc/apt/sources.list.d.bak; sudo sed -i 's/raring/saucy/g' /etc/apt/sources.list; sudo apt-get update; sudo apt-get upgrade -y; sudo apt-get dist-upgrade -y; sudo apt-get install -f; sudo aptitude upgrade -y; sudo aptitude dist-upgrade -y; sudo mv /etc/apt/sources.list.d.bak /etc/apt/sources.list.d; sudo sed -i 's/raring/saucy/g' /etc/apt/sources.list.d/*; sudo apt-get update; sudo apt-get upgrade -y; sudo apt-get dist-upgrade -y; sudo apt-get install ubuntu-desktop -y

Hecho, resuelve todos los problemas

mmstick
fuente
1
Por favor, no solo arroje este tipo de respuestas. Ese procedimiento es potencialmente peligroso si se realiza sin cuidado.
Braiam
En realidad no, no lo es. No es peligroso en absoluto. El hecho de que pienses que es peligroso significa que no sabes mucho al respecto. Lo he ejecutado muchas veces en el pasado y con mucha gente. Si realmente lees todo el comando, puedes ver que he tenido en cuenta todos los posibles problemas. Todo lo que el usuario debe hacer es mirar la salida del comando. Ubuntu 13.10 tiene muchos problemas con la actualización, pero esto soluciona todo de manera ordenada y conveniente en un comando largo. Te aconsejo que busques en la documentación de cómo funciona 'do-release-upgrade', porque es precisamente lo que hace este comando.
mmstick
1
@mmstick Puede elaborar un poco más sobre su comando largo y los problemas que resuelve, siempre que el problema real y cómo lo aborde. Veo que está llamando varias veces apt-get upgradey el resto de comandos, por lo que tal vez nuevamente pueda dividirlo línea por línea y explicar su proceso y por qué funciona. No tengo el lujo de experimentar con comandos irreversibles de alto riesgo. Gracias por el esfuerzo sin embargo. Todos estamos aquí para aprender ..
topless
@mmstick, estoy buscando tu respuesta, mencionaste hace un tiempo y parece que está detrás de mi pregunta, por lo que podrías haberte visto un poco mejor antes de responder groseramente a mí y a Braiam.
topless
2
@mmstick no seas perezoso edita tu respuesta, para completarla para futuras referencias. Es bueno que hayas contribuido temprano, pero el problema lo enfrenté por primera vez con la actualización 13.10.
topless