Actualizado a 18.04 y ahora tiene muchos paquetes rotos y dependencias insatisfechas

16

Cometí un terrible error y actualicé a 18.04 sin hacer una copia de seguridad en una partición diferente al hacer:

sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt-get autoremove
sudo apt install update-manager-core
sudo do-release-upgrade -d

Luego actualicé y actualicé los comandos después de reiniciar. Ahora hay muchos problemas con dependencias no satisfechas y paquetes rotos que los sudo apt-get -f installcomandos no pueden solucionar. ACTUALIZACIÓN La primera parte de la salida del registro de errores de sudo apt install -f es:

    Reading package lists...
Building dependency tree...
Reading state information...
Correcting dependencies... failed.
The following packages have unmet dependencies:
 gnome-calendar : Depends: gsettings-desktop-schemas (>= 3.21.2) but 3.18.1-1ubuntu1 is installed
 gnome-session : Depends: gnome-shell (>= 3.25.91-0ubuntu4~) but it is not installed
                 Depends: gnome-session-bin (>= 3.28.1-0ubuntu2) but 3.18.1.2-1ubuntu1.16.04.2 is installed
                 Depends: gnome-session-common (= 3.28.1-0ubuntu2) but 3.18.1.2-1ubuntu1.16.04.2 is installed
                 Depends: xwayland but it is not installed
                 Recommends: fonts-cantarell but it is not installed
                 Recommends: adwaita-icon-theme-full
                 Recommends: gnome-themes-extra but it is not installed
 gnome-settings-daemon : Depends: libgnome-desktop-3-17 (>= 3.17.92) but it is not installed
                         Depends: gsettings-desktop-schemas (>= 3.20) but 3.18.1-1ubuntu1 is installed
 hplip : Depends: python3 (< 3.6) but 3.6.5-3 is installed
 libc-dev-bin : Depends: libc6 (< 2.24) but 2.27-3ubuntu1 is installed
 libc6-dbg : Depends: libc6 (= 2.23-0ubuntu10) but 2.27-3ubuntu1 is installed
 libc6-dev : Depends: libc6 (= 2.23-0ubuntu10) but 2.27-3ubuntu1 is installed
 libgmime-3.0-0 : Depends: libgpgme11 (>= 1.7.0) but 1.6.0-1 is installed
 libreoffice-avmedia-backend-gstreamer : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed
 libreoffice-base-core : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed
 libreoffice-calc : Depends: libreoffice-base-core (= 1:6.0.3-0ubuntu1) but 1:5.1.6~rc2-0ubuntu1~xenial3 is installed
                    Depends: liborcus-0.13-0 (>= 0.13.3) but it is not installed
 libreoffice-core : Depends: libgpgmepp6 (>= 1.10.0) but it is not installed
                    Depends: liborcus-0.13-0 (>= 0.13.3) but it is not installed
                    Depends: libpoppler73 (>= 0.62.0) but it is not installed
                    Depends: libxmlsec1 (>= 1.2.25) but it is not installed
                    Depends: libxmlsec1-nss (>= 1.2.25) but it is not installed
 libreoffice-gnome : Depends: libreoffice-gtk3 but it is not installed
 libreoffice-gtk : Depends: libreoffice-gtk2 but it is not installed
 libreoffice-math : Depends: libreoffice-core (= 1:5.1.6~rc2-0ubuntu1~xenial3) but 1:6.0.3-0ubuntu1 is installed
 libreoffice-writer : Depends: libreoffice-base-core (= 1:6.0.3-0ubuntu1) but 1:5.1.6~rc2-0ubuntu1~xenial3 is installed
                      Depends: libabw-0.1-1 but it is not installed
                      Depends: libepubgen-0.1-1 (>= 0.1.0) but it is not installed
 libtotem0 : Depends: libgnome-desktop-3-17 (>= 3.17.92) but it is not installed
 libwayland-egl1-mesa : Depends: libegl1 but it is not installed
 libwebkitgtk-1.0-0 : Depends: libjavascriptcoregtk-1.0-0 (= 2.4.11-0ubuntu0.1) but 2.4.11-3ubuntu3 is installed
                      Depends: libwebkitgtk-1.0-common (>= 2.4.11) but it is not installable
 nautilus : Depends: libgnome-desktop-3-17 (>= 3.18.1) but it is not installed
 python3-brlapi : Depends: python3 (< 3.6) but 3.6.5-3 is installed
 python3-cffi-backend : Depends: python3 (< 3.6) but 3.6.5-3 is installed
 python3-crypto : Depends: python3 (< 3.6) but 3.6.5-3 is installed

y

E: Error, pkgProblemResolver::Resolve generated breaks,   
this may be caused by held packages.  

Intentar arreglar paquetes rotos en Synaptic produce este mensaje de error:

E: Error, pkgProblemResolver::Resolve generated breaks,   
this may be caused by held packages.     

No parece que haya nada malo con el archivo sources.list, y parece que se actualizó cuando probé la instalación. Apenas sé lo que estoy haciendo y estoy feliz de proporcionar más detalles sobre los mensajes de error. Si hay una manera de habilitar el desplazamiento hacia arriba en xterm, que es lo que estoy usando ahora, ya que el terminal Gnome no se puede abrir.

Me gustaría eliminar los 47 paquetes rotos y los paquetes retenidos, reinstalarlos correctamente o no instalarlos por ahora si esa es una opción (es decir, para cosas como LibreOffice, que no es una necesidad actual), y poder usar el Terminal de gnomo.

Estoy buscando pasos para principiantes sobre cómo solucionar todos estos problemas. ¿Hay una guía sobre cómo comenzar? ¿Una publicación obvia que me perdí en mis búsquedas de respuestas? Creo que esta publicación se dirige en la dirección correcta, pero está un poco por encima de mi cabeza. Cualquier ayuda es muy apreciada. Me pregunto si sería realmente más fácil comenzar desde una nueva instalación de 16.04.

k.mat27
fuente
Pruebe sudo apt-get install -fy dpkg --configure -a.
N0rbert
1
@ N0rbert OP dice que install -fya se ejecutó.
WinEunuuchs2Unix
1
Puedes probar aptitude, esto a veces es más exitoso en arreglar un árbol de paquetes defectuoso.
Sebastian Stark
¿Por qué usaste -d en do-release-upgrade? Honestamente, la solución más simple es hacer una instalación limpia, si puedes.
chaskes
Hice el -d porque aparentemente me sentía flojo y elegante el viernes por la mañana y el Internet me lo dijo, así que todo fue un conjunto de decisiones realmente horrible. No hace falta decir que aprendí mi lección ... las instalaciones limpias o, al menos, ser paciente para la primera versión serán mi futuro en el futuro.
k.mat27

Respuestas:

9

Tuve exactamente el mismo problema. Tuve que ir a editar /var/lib/dpkg/statusy borrar toda la línea Depends: de los paquetes que se quejaban.
No estoy seguro de qué otros problemas pueden causar, pero fue lo único que volvió a apt-get install -ffuncionar.

dmattp
fuente
¿Eliminar la línea de dependencia es una solución rápida para permitirme instalar las versiones que los paquetes solicitan para que estos paquetes funcionen? ¿Cuál fue tu próximo movimiento después de eso? Edité mi pregunta original para mostrar algunos de los errores relacionados con la versión de Python porque me preocupa que sean parte integral de la función de 18.04 en su conjunto, pero si tuviera éxito con esto, consideraría intentarlo.
k.mat27
1
Básicamente, creo que esto permite que "apt get" continúe en lugar de bombardear y negarse a hacer nada porque recibe muchos errores de dependencia. Después de que eliminé las dependencias de cada paquete que advertía, ejecuté "apt-get install -f" y luego pensé en "apt get upgrade", que procedió a hacer la instalación / instalación de unos 800 paquetes. Parecía que se había quedado colgado en medio de la actualización 18.04, con un montón de instalaciones pendientes. Después de completar la actualización, todo parece ser normal y estoy ejecutando lo que parece ser un sistema estable de 18.04.
dmattp
1
¡También asegúrese de hacer una copia de seguridad del archivo de "estado" antes de editarlo! Si graba el archivo con ediciones manuales, tendrá que restaurar desde la copia de seguridad.
dmattp
Después de hacer una copia de seguridad del archivo de estado, le di una oportunidad a su solución. Tuve que repetir los pasos un par de veces y luego tuve que desinstalar un colgador (algo que no uso de todos modos), lo cual hice a través de Synaptic. Ahora puedo instalar cosas, lo cual es genial, pero como advertencia para otros que pueden intentarlo, todavía no puedo usar el Software y las Actualizaciones y las cosas geniales que vinieron de serie con 16.04 ... lo cual está bien para mí, pero podría ser malo para otros. ¡Gracias! Seré paciente con el lanzamiento real de 18.04, que agradeceré al realizar una copia de seguridad nuevamente y realizar una instalación limpia ... lección aprendida.
k.mat27
Funcionó en mi sistema. Eliminé todas las dependencias no satisfechas de / var / lib / dpkg / status
Fahad Naeem
10

Aquí hay un par de cosas para probar.

Método uno:

Este es el más fácil de probar. En lugar de usar sudo apt-get install PACKAGENAME, donde PACKAGENAME es el paquete que está intentando instalar con el sistema apt, use sudo apt-get install -f. El parámetro -f intentará corregir un sistema que tiene dependencias rotas, después de lo cual podrá instalar el paquete en cuestión.

Abra una Terminal y escriba:

sudo apt-get install -f

y presione ENTER.

Ahora escriba:

sudo dpkg --configure -a

y presione ENTER.

Ahora una vez más:

sudo apt-get install -f

Método dos:

Aptitude es una alternativa de apt-get que puede usar como administrador de paquetes de nivel superior. Puede usarlo para intentar instalar su paquete con él, en lugar de apt-get, pero primero necesita instalar aptitude.

Abra una Terminal y escriba:

sudo apt-get install aptitude

y presione ENTER.

Ahora escriba:

sudo aptitude install PACKAGENAME

y presione ENTER.

PACKAGENAME es el paquete que está instalando. Esto intentará instalar el paquete a través de aptitude en lugar de apt-get, lo que podría solucionar el problema de dependencias insatisfechas.

SI AQUELLOS NO FUNCIONAN

El paquete roto probablemente esté bloqueado y debe eliminarse. Para eliminar el archivo bloqueado, abra una Terminal y escriba:

sudo rm /var/lib/apt/lists/lock

y presione ENTER.

Es posible que el archivo bloqueado también deba eliminarse en el directorio de caché. Para hacer eso, abra una Terminal y escriba:

sudo rm /var/cache/apt/archives/lock

Actualicé desde 16.04 y tenía muchos problemas diferentes. Me resultó mucho más fácil hacer una instalación nueva. Una instalación nueva o limpia siempre es el camino a seguir en mi opinión.

Espero que esto ayude,

Dave
fuente
¿Y qué debemos hacer con su comando mal formado como sudo dpkg –configure -a(tipográfico no funcionará en la terminal)? Parece copiar y pegar sin pensamiento crítico. ¡Edite su respuesta y sea más preciso la próxima vez!
N0rbert
Pues discúlpeme por el error tipográfico! Culpa mía. Respuesta editada.
Dave
1
No publique la misma respuesta a muchas preguntas. Publicar la misma respuesta en todas partes no es una solución de "una cosa para todos", y a menos que realmente pueda confirmar que todas sus soluciones sugeridas realmente solucionan los problemas que se están planteando, debería reconsiderar la publicación de la misma respuesta en todas partes.
Thomas Ward
Hola Dave, ¿hay alguna consecuencia negativa que pueda surgir al tratar de eliminar el archivo bloqueado y su presencia en el directorio de caché? Después de eso, ¿debería volver a intentar su sugerencia de Método 1 nuevamente (después de instalar aptitude por primera vez) o es probable que resulte en el mismo problema?
k.mat27
Instalar aptitude es un método diferente del método uno, por lo que volver a él sería redundante. En cuanto a eliminar el archivo bloqueado, siempre me he asegurado de saber para qué sirve o si ese archivo en particular está bloqueado porque, por alguna razón, las dependencias no se instalaron (que fue mi caso varias veces). En mi caso, eliminé los archivos, luego los reinstalé usando un administrador de paquetes. Recomiendo Synaptic Package Manager, ya que puede ayudar a solucionar dependencias no satisfechas.
Dave
2

Quiero agregar a esta discusión diciendo que cuando use el Actualizador de software para realizar la actualización a 18.04 y encuentre un problema, la solución es abrir el terminal y escribir:

sudo apt-get autoremove

seguido por lo que inicialmente causó que las cosas salieran mal aquí, lo que llevó a esta discusión, que es la siguiente:

sudo apt update
sudo apt upgrade
sudo apt dist-upgrade
sudo apt-get autoremove
sudo apt install update-manager-core
sudo do-release-upgrade -d
JWeb777
fuente
¡Bienvenido JWeb777 a Ask Ubuntu! Recomiendo editar esta respuesta para expandirla con detalles específicos por qué la eliminación automática inhibe el problema.
abu_bua
1
¿No estoy seguro de entender la solicitud? Pero los problemas que esto resolvió fue durante la actualización, algo salió mal. En resumen, terminé con una actualización parcial que los programas de Actualización de Software instalados en Ubuntu no pudieron resolver. volver a un estado de trabajo con la mayoría de las actualizaciones realizadas, sin problemas restantes y una mínima actualización por hacer
JWeb777
Si U especificara lo que desea saber un poco más, tal vez tenga una mejor respuesta tal vez
JWeb777
2

Con privilegios de root, vaya var/lib/dpkg/statusy elimine el contenido del archivo de estado.

Entonces sudo dpkg --configure -ay luegosudo apt-get install -f

Luego instala lo que quieras, es decir

sudo apt-get install nvidia-390 
Bukenya
fuente
1

"Si hay una manera de habilitar el desplazamiento hacia arriba en xterm", ya que no puede desplazarse hacia arriba, puede enviar toda la salida a un archivo utilizando:

sudo apt install -f > output.log

Luego edite output.logy copie los mensajes a su pregunta. Sus posibilidades de obtener una buena respuesta mejoran con más información.


En lo que respecta a cualquier otra persona que quiera copiar sus datos en una partición de respaldo antes de actualizar a 18.04, aquí está el comando tomado de esta respuesta: Bash script para clonar Ubuntu en una nueva partición para probar la actualización 18.04 LTS

rsync -haxAX --stats --delete --info=progress2 --info=name0 /* "$TargetMnt" \
      --exclude={/dev/*,/proc/*,/sys/*,/tmp/*,/run/*,/mnt/*,/media/*,/lost+found}

Antes de ejecutar el comando, debe crear una partición de respaldo y montarla. Después de montarlo, configure:

TargetMnt=/mnt/my_backup_partition_name

Por supuesto, un método más fácil es simplemente ejecutar el script vinculado anteriormente. No solo proporciona una selección interactiva de la partición de respaldo, sino que proporciona validación y modificaciones grubpara que pueda iniciar en la partición de respaldo si es necesario.

PD: Me entristece escuchar sus problemas y los muchos otros problemas que he leído aquí en Ask Ubuntu desde el lanzamiento de 18.04. Desafortunadamente, ve problemas similares con cada nueva versión. Esperemos que algún día Cónico enfatice la importancia de realizar copias de seguridad y / o realizar pruebas en una partición clónica antes de actualizar. Especialmente antes del lanzamiento del primer punto de 18.04.1 que viene el 26 de julio de 2018.

WinEunuuchs2Unix
fuente
Realmente aprecio la respuesta a la parte xterm de la pregunta, especialmente porque me doy cuenta de que estaba fuera de tema para el resto de la publicación (mi problema). La pregunta original se edita con el resultado anterior. Desearía haber seguido tu consejo con el clon en primer lugar, ¡pero lo haré una vez que haya solucionado el problema actual y nuevamente en el futuro!
k.mat27
@ k.mat27 Estoy empezando a clonar ahora, incluso antes de instalar los controladores de nVidia, que me han causado todo tipo de dolor y son difíciles de "deshacer". No rechazaste mi respuesta por accidente, ¿verdad?
WinEunuuchs2Unix
¡No! Ojalá pudiera votarlo, en realidad, pero me falta la reputación.
k.mat27
Obtiene 2 puntos cuando hace clic en la marca de verificación junto a una respuesta para aceptarla por una pregunta que publicó. Además, el autor obtiene 15 puntos por una respuesta aceptada. Más importante aún, ayuda a otros usuarios a encontrar respuestas aceptadas. Obtienes 5 puntos por cada voto positivo en una pregunta que publicas. Si responde una pregunta, obtiene 10 puntos por cada voto positivo y menos 2 por cada voto negativo. Espero que esto ayude.
WinEunuuchs2Unix
0

De hecho, tuve demasiados problemas para actualizar Xubuntu 16.04 a 18.04. Tuve que eliminar por completo gstreamer del sistema (no funciona con pulseaudio, que se comporta de manera extraña), aparte de muchos otros problemas no relacionados con esta publicación (nvidia, netplan, baloo). En muchos años de administración de escritorios y servidores, fue mi migración más difícil. Por lo tanto, no aconsejo actualizar a 18.04 antes de que sea una distribución estable.

Antonio J. de Oliveira
fuente
0

si tiene un sistema que no puede iniciar sesión, vaya al inicio de sesión tty1 mediante cltr + alt + tecla F1 para iniciar sesión en su cuenta e intente esto sudo apt-get install -f dist-upgrade si le pide una solución particular para aplicar S / n, use otra opción escribiendo "." para otra solución, aparecerá en la lista con otra solución para actualizar completamente su sistema. si ocurre algún problema, hágamelo saber

Nikhil Lalwani
fuente
0

Después de la actualización, tuve un problema con la falta de libs de pyhon3.7, se bloqueó todo apt / dpkg. Encontrado falta /usr/lib/python3.7/py_compile.pyun nivel más profundo /usr/local/lib/python3.7. La solución que funcionó para mí fue hacer una copia de seguridad (cambiar el nombre) completa /usr/lib/python3.7y reemplazarla con sym-link.

Aquí está el problema (apt install -f). Perdón por checo lang, cosas importantes están en inglés

Načítají se seznamy balíků…
Vytváří se strom závislostí…
Načítají se stavové informace…
0 aktualizováno, 0 nově instalováno, 0 k odstranění a 7 neaktualizováno.
39 instalováno nebo odstraněno pouze částečně.
Po této operaci bude na disku použito dalších 0 B.
Nastavuje se balík python3-tk:amd64 (3.6.5-3) …
(null): can't open file '/usr/lib/python3.7/py_compile.py': [Errno 2] No such file or directory
dpkg: chyba při zpracovávání balíku python3-tk:amd64 (--configure):
 installed python3-tk:amd64 package post-installation script subprocess returned error exit status 2
Nastavuje se balík python3-lib2to3 (3.6.5-3) …
(null): can't open file '/usr/lib/python3.7/py_compile.py': [Errno 2] No such file or directory
dpkg: chyba při zpracovávání balíku python3-lib2to3 (--configure):
 installed python3-lib2to3 package post-installation script subprocess returned error exit status 2
dpkg: nesplněné závislosti zamezily konfiguraci balíku python3-distutils:
 python3-distutils závisí na python3-lib2to3 (>= 3.6.4); avšak:
  Balík python3-lib2to3 zatím není zkonfigurován.

...

dpkg: chyba při zpracovávání balíku libsdl-net1.2-dev:amd64 (--configure):
 problém se závislostmi - nechávám nezkonfigurované
dpkg: nesplněné závislosti zamezily konfiguraci balíku libsdl-image1.2-dev:amd64:
 libsdl-image1.2-dev:amd64 závisí na libsdl1.2-dev (>= 1.2.14~); avšak:
  Balík libsdl1.2-dev zatím není zkonfigurován.

dpkg: chyba při zpracovávání balíku libsdl-image1.2-dev:amd64 (--configure):
 problém se závislostmi - nechávám nezkonfigurované
dpkg: nesplněné závislosti zamezily konfiguraci balíku libboost-iostreams1.65-dev:amd64:
 libboost-iostreams1.65-dev:amd64 závisí na libboost-regex1.65-dev (= 1.65.1+dfsg-0ubuntu5); avšak:
  Balík libboost-regex1.65-dev:amd64 zatím není zkonfigurován.

dpkg: chyba při zpracovávání balíku libboost-iostreams1.65-dev:amd64 (--configure):
 problém se závislostmi - nechávám nezkonfigurované
dpkg: nesplněné závislosti zamezily konfiguraci balíku libboost-iostreams-dev:amd64:
 libboost-iostreams-dev:amd64 závisí na libboost-iostreams1.65-dev; avšak:
  Balík libboost-iostreams1.65-dev:amd64 zatím není zkonfigurován.

dpkg: chyba při zpracovávání balíku libboost-iostreams-dev:amd64 (--configure):
 problém se závislostmi - nechávám nezkonfigurované
dpkg: nesplněné závislosti zamezily konfiguraci balíku libboost-regex-dev:amd64:
 libboost-regex-dev:amd64 závisí na libboost-regex1.65-dev; avšak:
  Balík libboost-regex1.65-dev:amd64 zatím není zkonfigurován.

dpkg: chyba při zpracovávání balíku libboost-regex-dev:amd64 (--configure):
 problém se závislostmi - nechávám nezkonfigurované
Při zpracování nastaly chyby:
 python3-tk:amd64
 python3-lib2to3
 python3-distutils
 libglib2.0-dev-bin
 python3-dev
 libglib2.0-dev:amd64
 libgdk-pixbuf2.0-dev
 libibus-1.0-dev:amd64
 libboost-python1.65-dev
 libpango1.0-dev
 libsdl2-dev:amd64
 libharfbuzz-dev:amd64
 dh-python
 libsdl2-ttf-dev:amd64
 libboost-python-dev
 libsdl2-image-dev:amd64
 libpulse-dev:amd64
 libicu-le-hb-dev:amd64
 libcairo2-dev:amd64
 libnotify-dev:amd64
 libatk1.0-dev:amd64
 libgtk2.0-dev
 librsvg2-dev:amd64
 libicu-dev
 libass-dev:amd64
 libxml2-dev:amd64
 libsdl2-mixer-dev:amd64
 libsdl1.2-dev
 libsdl-ttf2.0-dev:amd64
 libboost-all-dev
 libboost-regex1.65-dev:amd64
 libbluray-dev:amd64
 libsdl-gfx1.2-dev:amd64
 libsdl-mixer1.2-dev:amd64
 libsdl-net1.2-dev:amd64
 libsdl-image1.2-dev:amd64
 libboost-iostreams1.65-dev:amd64
 libboost-iostreams-dev:amd64
 libboost-regex-dev:amd64
checo
fuente
0

Lo que me ayudó

  1. usar sudo dpkg --remove [nombre-paquete] para eliminar los paquetes problemáticos encontrados a través de sudo dpkg --configure -a (fuente:  /programming//a/35969176/557223 ). Algunos paquetes no se pudieron eliminar ya que eran dependencias de otros paquetes.
  2. ejecutar sudo apt-get install -f (comenzó a funcionar de nuevo, yay)
  3. cambiar el nombre del archivo org.freedesktop.systemd1.service como se menciona en  /ubuntu//a/838673
  4. Para ejecutar sudo apt-get update y dist-upgrade y autoremove, y do-release-upgrade

¡Felicitaciones a https://ubuntuforums.org/showthread.php?t=2398895&page=2 la publicación de dragans2!

mmalmeida
fuente