Como consertar pacotes glibc quebrados

Como consertar pacotes glibc quebrados

Estou usando o Ubuntu 18.04 e tentei atualizar a libc6 da versão 2.27 para 2.29, mas acabei quebrando o sistema de pacotes. Não consigo consertar porque quando tento usar comandos de correção, ele sempre mostra que muitos pacotes no sistema serão REMOVIDOS.

Synaptic mostra esses pacotes como quebrados:

  • glibc-doc 2.27-3
  • libc-dev-bin 2.27-3
  • libc6 2.29-0
  • libc6-dbg2.27-3
  • libc6-dev 2.27-3
  • libc6:i386 2.27-3

Como eu quebrei? Eu baixei os seguintes pacotes dehttps://packages.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

Tentei instalá-los via dpkg um por um mas não funcionou por causa de erros de dependência, e por último usei 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 

Depois disso, eu disse "Sim" em um prompt que dizia que alguns programas como o postgres precisam ser reiniciados.

Então vi um erro de pacotes quebrados.

sudo apt updatenão dá erro. Quando tento consertar, aparece quase tudo que precisa ser removido:

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] 

Responder1

O Apt não está quebrado - ainda funciona bem. Mas você imprudentemente disse ao apt para fazer umaSistema Franken, misturando pacotes de diferentes versões do Ubuntu.

O Apt não será capaz de resolver as dependências agora ilógicas...nunca. (Nem você). Como o apt não pode funcionar, você nunca receberá mais atualizações nem patches de segurança até remover os pacotes da versão errada.

Não oferecemos suporte para Frankensystems. Por definição, são instáveis ​​e propensos a problemas incomuns e difíceis de diagnosticar. Os sistemas baseados em Deb são projetados para funcionar com versões específicas de pacotes. Pacotes de versão errada causam problemas.

Remova os pacotes da versão errada. Se você deseja executar pacotes 19.04, considere instalar o Ubuntu 19.04. Talvez em uma VM ou partição sobressalente, se você deseja manter seu sistema 18.04 atual.

Responder2

Eu consertei baixando a versão 2.27 de todos esses pacotes e executando o dpkg neles.

Tentei instalá-los na mesma ordem antes de quebrar. Usei o dpkg em vários arquivos deb para evitar dependências cíclicas ou algo parecido também. Não tenho certeza se isso muda alguma coisa.

Responder3

Então, a verdadeira solução é atualizar a distro se você PRECISA ter uma biblioteca que vem apenas com uma nova distro e é exigida por alguns jogos...

Chega de suporte até 2023 para 18.04 se você planeja jogar em seu sistema Ubuntu ... por exemplo, tenho três jogos Linux de 2020, que, uma vez atualizados, requerem glibc6-2.29 ou posterior! Só que para mim significa baixar a nova distro ISO e fazer uma instalação completa! já que uma atualização do distr falha ...

informação relacionada