Redémarrage pendant la mise à jour, erreur glibc: libc.so.6: version 'GLIBC_2.14' introuvable


11

Lors de la mise à niveau de la version 11.10 vers la version 12.04, la mise à niveau a été bloquée car elle indiquait que xscreensaver devait être désinstallé. J'ai essayé d'ouvrir un terminal mais le système n'a pas répondu. J'ai donc fait un démarrage dur et maintenant je ne peux pas dépasser l'écran de chargement d'Ubuntu. Quand je suis arrivé à l'écran racine, je reçois un message:

mountall: /lib/x86_64-linux-gnu/libc.so.6: version 'GLIBC_2.14' not found (required by /lib/libpllibply.so.2

Je ne sais pas vraiment quoi faire à partir de maintenant.

Réponses:


8

J'ai eu ce problème aujourd'hui et je l'ai résolu il y a quelques minutes.

Réponse courte:

  • Télécharger le live-cd d'Ubuntu 12.04
  • Démarrez-le et essayez-le
  • Terminal ouvert
  • Montez votre partition cassée
  • Copiez la libc du live cd (version 15) dans votre partition
  • Corrigez le lien symbolique libc.so.6 de votre partition
  • monter sysfs, lier et proc sur votre partition
  • chroot il
  • apt-get -f install
  • apt-get dist-upgrade

Voici une liste de commandes (copier / coller, pas sûr d'avoir raté quelque chose, assurez-vous d'utiliser le périphérique approprié au lieu de sda5, j'utilise Linux 64 bits):

sudo -i
cd /mnt
mkdir sda5
mount /dev/sda5 sda5
cp /lib/x86_64-linux-gnu/libc-2.15.so sda5/lib/x86_64-linux-gnu/
cd sda5/lib/x86_64-linux-gnu
rm libc.so.6
ln -s libc-2.15.so libc.so.6
cd /mnt
mount -t sysfs sys sda5/sys
mount -o bind /dev sda5/dev
mount -t proc proc sda5/proc
chroot sda5
ls # make sure ls does not complain about libc!
apt-get -f install
apt-get dist-upgrade

Le système m'a dit il y a 400 paquets de mise à niveau et maintenant il est la mise à niveau ... une fois terminée, je vais redémarrer et vérifier si tout va bien.

Si je dois faire quelque chose d'autre après la dist-upgrade, je vais modifier ce poste.

[EDIT] : La mise à jour est bien passé. Ensuite, j'ai redémarré et j'ai pu me connecter (j'utilise Xfce). Sans fil ne fonctionnait pas, mais un seul a modprobe brcmsmacfait fonctionner. Maintenant , je suis en cours d' exécution le concierge du système pour supprimer les anciens paquets.


une fois que j'essaie de monter sda5, j'obtiens une réponse indiquant qu'il s'agit d'un fichier d'échange et ne peut pas être monté (?)

@TurboWald sda5 était ma partition racine. Vous devez découvrir laquelle est votre partition racine. Essayez de monter sda1, puis vérifiez son contenu, puis essayez de monter sda2 et vérifiez son contenu, etc. Votre partition racine devrait contenir des fichiers comme / lib, / usr / bin, etc.
pzanoni

Je vois la même erreur en essayant de passer à 13,04 et après avoir copié le libc-2.17.so et créer un lien symbolique , je vois l'erreur d'erreur `suivante alors que les bibliothèques de chargement partagé __vdso_time`
ShaggyInjun

1

Donc, si vous exécutez sudo dpkg --configure -a, la mise à niveau est-elle terminée? Une autre option à essayer si elle vous permet d'installer sudo apt-get install --fix-missing. Pour passer en mode de récupération ....

J'ai ceci sur le wiki Ubuntu ici: https://wiki.ubuntu.com/RecoveryMode

Allumez votre ordinateur Attendez la fin du chargement du BIOS (vous verrez probablement un logo du fabricant de votre ordinateur) Les messages suivants apparaîtront:

Étape de chargement des vers 1,5

Chargement de Grub, veuillez patienter ...

Appuyez sur ÉCHAP pour entrer dans le menu Appuyez rapidement sur la touche Échap, qui fera apparaître un menu de démarrage. (Si vous voyez le logo Ubuntu, vous avez Sélectionnez la ligne se terminant par '(mode de récupération)', probablement la deuxième ligne, quelque chose comme:

Ubuntu, noyau 2.6.17-10-générique (mode de récupération) Appuyez sur Entrée et votre machine commencera le processus de démarrage. Après quelques instants, votre poste de travail doit afficher un menu avec un certain nombre d'options. L'une des options (vous devrez peut-être faire défiler vers le bas de la liste) sera "Invite de dépôt dans le shell racine".


Où dois-je faire cela parce que je ne peux pas entrer dans un terminal et rien que je tape n'apparaît sur les autres écrans.
Curt

pouvez-vous toujours démarrer en mode de récupération et cela vous donne-t-il une invite # (root)?
Brett

Si vous pouvez mettre la main sur un cd live ou une clé usb d'ubuntu, je recommanderais la réponse donnée par Andrew ci-dessous.
Brett

0

Vérifiez si vous pouvez démarrer votre support 12.04 et effectuer une mise à niveau du système sur CD. (En supposant qu'il pense toujours qu'il est 11h10, espérons-le)


J'ai acheté l'ordinateur portable auprès de System76, donc je n'ai pas de CD de démarrage. Depuis, j'ai pu le faire démarrer en mode de récupération, mais lorsque j'essaie d'exécuter l'option dpkg, il dit: dpkg a été interrompu, vous devez exécuter manuellement 'dpkg --configure -a' pour corriger le problème.
Curt

@Curt Êtes-vous capable d'exécuter le dpkg --configure -a?
belacqua

0

Vous pouvez démarrer à partir d'un CD ou d'une clé USB, puis monter le chroot du système de fichiers au point de montage et l'exécuter sudo apt-get install -f --fix-missing.

  1. Démarrage depuis USB
  2. terminal ouvert
  3. cd /mnt
  4. sudo mkdir /mnt/brokesystem
  5. sudo mount /dev/*sda1* /mnt/brokesystem * note / dev / sda1 peut être autre chose / dev / ...
  6. sudo chroot /mnt/brokesystem
  7. sudo apt-get install -f --fix-missing (vous pouvez être invité à redémarrer le service et à obtenir des erreurs indiquant que le service ne peut pas être redémarré, c'est correct)
  8. Une fois la mise à jour terminée, redémarrez (supprimez le périphérique de démarrage alternatif cd / usb)
  9. Devrait se charger normalement (cela peut prendre un peu plus de temps pour démarrer la première fois)

@Vipul Gupta Vous ne pouvez pas chrooter directement sda1. Vous devez monter sda1. Vous devez créer un répertoire où le meilleur endroit serait / mnt, puis sudo mkdir brokesystem, puis sudo mount / dev / sda1 / mnt / brokesystem puis continuer à partir de 6.
Andrew
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.