Desde que trato de actualizar a 16.04 xenial, obtengo
$ apt
apt: relocation error: /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0:
symbol _ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareERKS4_,
version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
cuando simplemente corres apt. No hace falta decir que esto hace que sea difícil hacer algo.
¿Alguna pista?

GRUBdepuración ...Respuestas:
Tuve el mismo problema causado por problemas de PPA para Ubuntu toolchain. Mi computadora no arranca por eso. Siguiente comentario de @ w00kie en su respuesta, he descargado (desde la terminal TTY) el debian del paquete
libstdc++6paraXenialen enlace https://packages.ubuntu.com/xenial/libstdc++6 e instalado usandodpkg -i. La computadora funciona bien ahora.Pasos
fuente
apt(o ninguna herramienta realmente). Incluso he intentado descargarlibstdc++6...debdesde una unidad USB de arranque, colocar manualmente el paquete, reiniciar en el sistema dañado e instalar el.debusosudo dpkg -i libstdc++6...deb, pero ni siquiera sabe quédpkges.wget http://security.ubuntu.com/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.2_amd64.deby luego, una vez que se descargue,dpkg -i libstdc++6_5.4.0-6ubuntu1~16.04.2_amd64.deb(se supone un sistema de 64 bits). Para mí, mi conexión a Internet no funcionaba, así que la descargué en una unidad USB desde una computadora diferente, luego tuve que montar manualmente la unidad USB en mi computadora problemática (sudo mount /dev/sdc1 /media/usbdondesdc1se encontró al ver la salida del terminal justo después de conectar el USB) y luego ejecuta eldpkgcomando anterior .dpkg --force-all -i libstdc++6_5.4.0-6ubuntu1~16.04.2_amd64.debpara instalarloEl culpable son los restos del PPA para las cargas de Ubuntu Toolchain (restringido) , específicamente
Hay dos posibilidades de lidiar con esto:
Ya lo tienes
ppa-purgeinstalado. Entoncessoluciona los problemas.
Anule libstc ++ descargando libstdc ++ 6 para Xenial e instalándolo a través de
dpkg -i.fuente
ppa-purgeno funcionará (mismo python)sudo: ppa-purge: command not foundsudo apt install ppa-purgeapttampoco estaba funcionando (según la publicación original).Mi comp no pudo arrancar correctamente debido a este error. Apt-get no funcionaba, ni Gnome. Esto fue inmediatamente después de una actualización de 14.04 a 16.04. Lo resolví en tty ingresando
En este punto
apt-getcomencé a trabajar nuevamente y pude arreglar todos los problemas desde allí:También tuve que desinstalar Virtualbox (después del comando de actualización) y reinstalarlo más tarde, pero creo que esto no estaba relacionado.
fuente
apt-add-repositorycomando en su respuesta da:ImportError: /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0: symbol _ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareERKS4_, version GLIBCXX_3.4.21 not defined in the file libstdc++.so.6 with link time referencehttp://security.ubuntu.com/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb(oi386ambos) Y no te importa que dpkg te maldiga. Haga--auto--deconfigureyapt-getluego volverá a la normalidad a pesar de los mensajes de error. Y podrá terminar con el-f --install+ adecuado--upgradey reiniciar en un sistema nuevo.Había estado pensando que el problema era algo único para mí y que fue causado por un error de descarga.
Esta discusión me dio la pista que necesitaba. Básicamente, todo lo que se necesitaba era reemplazar libstdc ++. So.6.0.22 con libstdc ++. So.6.0.21 en / usr / lib / x86_64-linux-gnu del sistema que falla. (Parece que hay un error en la versión más reciente).
Esto se puede hacer desde una memoria USB o, como en mi caso, desde un disco de memoria virtual.
Detalles completos en: https://answers.launchpad.net/ubuntu/+question/395832
Gracias a todos...
fuente
Siguiendo el
dpkg -ienfoque en la respuesta aceptada, mi actualización 14.04-> 16.04 requirió no uno sino dos paquetes:Después de esto,
apt upgradepude descargar los paquetes restantes y completar la instalación.fuente
Si tiene la última versión del complemento 'conjurar' instalado con Snappy en Yakkety, su apt se romperá con un error muy similar:
debido a este error:
https://bugs.launchpad.net/snappy/+bug/1a677417
Actualmente, la única solución alternativa que conozco es eliminar el complemento de conjuración (o posiblemente 'revertir el complemento' a una versión anterior si tenía una instalada anteriormente).
fuente
La solución que funcionó para mí fue volver a agregar el ppa de la cadena de herramientas de Ubuntu:
fuente
Debería poder solucionarlo escribiendo:
sudo apt-get -f install
sin especificar ningún paquete. Debería hacer el trabajo.
fuente
Puede haber un problema muy similar con los sistemas i386.
Para resolver el problema, también tuve que degradar gcc-5-base de Versión
5.4.1-2ubuntu1~12.04a5.4.0-6ubuntu1~16.04.4.Para completar la actualización a un sistema de apariencia razonable, también tuve que usar
dpkg --purge on vituoso_nepomuky virtualbox para deshacerme de sus archivos de configuración, que estaban causando problemas (para mí, VirtualBox es proporcionado por el paquete virtualbox-5.1, que parece indemne por la actualización. )La clave era ponerse
dpkg --configure dbusa trabajar.Para habilitar wget mientras está en una pantalla de tipo tty, los usuarios también pueden necesitar ejecutar
sudo dhclient eth0para habilitar una conexión ethernet con cable.fuente
Acabo de tener este problema al actualizar la distribución de Ubuntu en Linux. Vi que:
libstdc ++. so.6 -> libstdc ++. so.6cd -> libstdc ++. so.6.0.20
Pero había dos archivos: libstdc ++. So.6.0.21 y libstdc ++. So.6.0.20
He cambiado el enlace simbólico para que apunte a la última versión libstdc ++. So.6.0.21
Resultante:
y todo volvió a la normalidad
fuente
Descargue libstdc ++ 6 para su ubuntu desde el sitio web del administrador de paquetes de Ubuntu. (use
uname -apara encontrar la arquitectura h / w y s / w).correr
Reiniciar. Ubuntu debería arrancar pero apt no instalaría nuevos paquetes.
Para corregir dependencias y actualizar el sistema, ejecute estos comandos
fuente