
Estoy usando Ubuntu 18.04 e intenté actualizar libc6 de la versión 2.27 a 2.29 pero terminé rompiendo el sistema de paquetes. No puedo arreglarlo porque cuando intento usar los comandos de reparación, siempre muestra que se eliminarán toneladas de paquetes en el sistema.
Synaptic muestra estos paquetes como rotos:
- glibc-doc 2.27-3
- libc-dev-bin 2.27-3
- libc6 2.29-0
- libc6-dbg 2.27-3
- libc6-dev 2.27-3
- libc6:i386 2.27-3
¿Cómo me rompí? Descargué los siguientes paquetes dehttps://paquetes.ubuntu.com/
- glibc-doc_2.29-0ubuntu2_all.deb
- glibc-source_2.29-0ubuntu2_all.deb
- libc6_2.29-0ubuntu2_amd64.deb
- libc6-amd64_2.29-0ubuntu2_i386.deb
- libc-bin_2.29-0ubuntu2_amd64.deb
- locales_2.29-0ubuntu2_all.deb
Intenté instalarlos mediante dpkg uno por uno pero no funcionó debido a errores de dependencia y, por último, utilicé este comando:
sudo dpkg -i libc-bin_2.29-0ubuntu2_amd64.deb libc6_2.29-0ubuntu2_amd64.deb libc6-amd64_2.29-0ubuntu2_i386.deb
Después de esto, dije "Sí" dentro de un mensaje que dice que algunos programas como Postgres deben reiniciarse.
Luego vi un error de paquetes rotos.
sudo apt update
no da ningún error. Cuando intento arreglarlo, muestra que es necesario eliminar casi todo:
sudo apt install -f
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:
alex freeglut3 freeglut3-dev happy hscolour libbsd-dev libdrm-dev libffi-dev
libgl1-mesa-dev libgles1 libglu1-mesa-dev libglvnd-core-dev libglvnd-dev
libgmp-dev libgmpxx4ldbl libopengl0 libtinfo-dev libx11-xcb-dev
libx11-xcb1:i386 libxcb-dri2-0-dev libxcb-dri3-dev libxcb-glx0-dev
libxcb-present-dev libxcb-randr0-dev libxcb-render0-dev libxcb-shape0-dev
libxcb-sync-dev libxcb-xfixes0-dev libxdamage-dev libxext-dev libxfixes-dev
libxi-dev libxmu-dev libxmu-headers libxshmfence-dev libxxf86vm-dev
linux-headers-4.18.0-17 linux-headers-4.18.0-17-generic
linux-image-4.18.0-17-generic linux-libc-dev linux-modules-4.18.0-17-generic
linux-modules-extra-4.18.0-17-generic mesa-common-dev x11proto-damage-dev
x11proto-fixes-dev x11proto-xext-dev x11proto-xf86vidmode-dev
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
glibc-doc-reference
The following packages will be REMOVED:
build-essential cabal-install g++ g++-7 ghc haskell-platform libbsd0:i386
libc-dev-bin libc6:i386 libc6-amd64:i386 libc6-dbg libc6-dev
libdrm-amdgpu1:i386 libdrm-intel1:i386 libdrm-nouveau2:i386
libdrm-radeon1:i386 libdrm2:i386 libedit2:i386 libelf1:i386 libexpat1:i386
libffi6:i386 libgcc1:i386 libghc-async-dev libghc-attoparsec-dev
libghc-call-stack-dev libghc-case-insensitive-dev libghc-fgl-dev
libghc-fixed-dev libghc-gluraw-dev libghc-glut-dev libghc-half-dev
libghc-hashable-dev libghc-haskell-src-dev libghc-html-dev libghc-http-dev
libghc-hunit-dev libghc-integer-logarithms-dev libghc-mtl-dev
libghc-network-dev libghc-network-uri-dev libghc-objectname-dev
libghc-opengl-dev libghc-openglraw-dev libghc-parallel-dev
libghc-parsec3-dev libghc-primitive-dev libghc-quickcheck2-dev
libghc-random-dev libghc-regex-base-dev libghc-regex-compat-dev
libghc-regex-posix-dev libghc-scientific-dev libghc-split-dev
libghc-statevar-dev libghc-stm-dev libghc-syb-dev libghc-text-dev
libghc-tf-random-dev libghc-unordered-containers-dev libghc-vector-dev
libghc-zlib-dev libgl1:i386 libgl1-mesa-dri:i386 libgl1-mesa-glx:i386
libglapi-mesa:i386 libglvnd0:i386 libglx-mesa0:i386 libglx0:i386
libllvm7:i386 libncurses5-dev libnvidia-compute-418:i386
libnvidia-decode-418:i386 libnvidia-encode-418:i386 libnvidia-fbc1-418:i386
libnvidia-gl-418:i386 libnvidia-ifr1-418:i386 libpciaccess0:i386
libsensors4:i386 libstdc++-7-dev libstdc++6:i386 libtinfo5:i386
libx11-6:i386 libxau6:i386 libxcb-dri2-0:i386 libxcb-dri3-0:i386
libxcb-glx0:i386 libxcb-present0:i386 libxcb-sync1:i386 libxcb1:i386
libxdamage1:i386 libxdmcp6:i386 libxext6:i386 libxfixes3:i386
libxshmfence1:i386 libxxf86vm1:i386 zlib1g:i386 zlib1g-dev
The following NEW packages will be installed:
glibc-doc-reference
0 upgraded, 1 newly installed, 97 to remove and 0 not upgraded.
6 not fully installed or removed.
Need to get 5.483 kB of archives.
After this operation, 1.303 MB disk space will be freed.
Do you want to continue? [Y/n]
Respuesta1
Apt no está roto, todavía funciona bien. Pero imprudentemente le has dicho a apto que haga unsistema franken, mezclando paquetes de diferentes versiones de Ubuntu.
Apt no podrá resolver las ahora ilógicas dependencias... nunca. (Tú tampoco lo harás). Dado que apt no puede funcionar, nunca recibirá más actualizaciones ni parches de seguridad hasta que elimine los paquetes de la versión incorrecta.
No brindamos soporte para Frankensystems. Por definición, son inestables y propensos a sufrir problemas inusuales y difíciles de diagnosticar. Los sistemas basados en Deb están diseñados para funcionar con versiones específicas de paquetes. Los paquetes con versiones incorrectas causan problemas.
Elimine los paquetes de versión incorrecta. Si desea ejecutar paquetes 19.04, considere instalar Ubuntu 19.04. Quizás en una máquina virtual o en una partición de repuesto si desea conservar su sistema 18.04 actual.
Respuesta2
Lo solucioné descargando la versión 2.27 de todos esos paquetes y ejecuté dpkg en ellos.
Intenté instalarlos en el mismo orden antes de romperme. Utilicé dpkg en varios archivos deb para evitar dependencias cíclicas o algo así también. No estoy seguro si cambia algo.
Respuesta3
Entonces, la verdadera solución es actualizar la distribución si NECESITAS tener una biblioteca que viene solo con una nueva distribución y es requerida por algunos juegos...
Hasta aquí el soporte hasta 2023 para 18.04 si planeas jugar juegos en tu sistema Ubuntu... por ejemplo, tengo tres juegos de Linux de 2020, que, una vez actualizados, requieren glibc6-2.29 o posterior. ¡Excepto que para mí significa descargar la nueva distribución ISO y realizar una instalación completa! ya que falla una actualización de disptr...