Neustart während des Updates, glibc-Fehler: libc.so.6: Version 'GLIBC_2.14' nicht gefunden

11

Während des Upgrades von 11.10 auf 12.04 wurde das Upgrade blockiert, da xscreensaver deinstalliert werden musste. Ich habe versucht, ein Terminal zu öffnen, aber das System hat nicht reagiert. Also habe ich einen Hardboot gemacht und jetzt komme ich nicht mehr am Ubuntu-Ladebildschirm vorbei. Als ich zum Root-Bildschirm kam, erhielt ich eine Nachricht:

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

Ich weiß von diesem Punkt an nicht wirklich, was ich tun soll.

Curt
quelle

Antworten:

8

Ich hatte dieses Problem heute und habe es vor ein paar Minuten gelöst.

Kurze Antwort:

  • Laden Sie Ubuntus 12.04 Live-CD herunter
  • Booten Sie es und "Try it"
  • Terminal öffnen
  • Hängen Sie Ihre defekte Partition ein
  • Kopieren Sie die libc der Live-CD (Version 15) in Ihre Partition
  • Korrigieren Sie den Symlink libc.so.6 Ihrer Partition
  • Hängen Sie sysfs, bind und proc auf Ihrer Partition ein
  • chroot es
  • apt-get -f install
  • apt-get dist-upgrade

Hier ist eine Liste von Befehlen (kopieren / einfügen, nicht sicher, ob ich etwas verpasst habe, stellen Sie sicher, dass Sie das entsprechende Gerät anstelle von sda5 verwenden, ich verwende 64-Bit-Linux):

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

Das System hat mir mitgeteilt, dass 400 Pakete aktualisiert werden müssen, und jetzt wird ein Upgrade durchgeführt. Nach Abschluss des Vorgangs starte ich neu und überprüfe, ob alles in Ordnung ist.

Wenn ich nach dem dist-Upgrade noch etwas tun muss, werde ich diesen Beitrag bearbeiten.

[EDIT] : Das Upgrade verlief einwandfrei. Dann habe ich neu gestartet und konnte mich anmelden (ich benutze Xfce). Wireless funktionierte nicht, aber eine einzige brachte modprobe brcmsmaces zum Laufen. Jetzt führe ich den System-Hausmeister aus, um die alten Pakete zu entfernen.

pzanoni
quelle
Sobald ich versuche, sda5 zu mounten, erhalte ich eine Antwort, die besagt, dass es sich um eine Auslagerungsdatei handelt, die nicht gemountet werden kann (?)
@TurboWald sda5 war meine Root-Partition. Sie müssen herausfinden, welche Ihre Root-Partition ist. Versuchen Sie, sda1 zu mounten, überprüfen Sie dann den Inhalt, versuchen Sie dann, sda2 zu mounten und den Inhalt zu überprüfen, und so weiter. Ihre Root-Partition sollte Dateien wie / lib, / usr, / bin usw. enthalten
pzanoni
Ich sehe den gleichen Fehler beim Versuch, auf 13.04 zu aktualisieren, und nachdem ich libc-2.17.so kopiert und einen Symlink erstellt habe, sehe ich den folgenden Fehler "Fehler beim Laden von gemeinsam genutzten Bibliotheken __vdso_time"
ShaggyInjun
1

Wenn Sie also sudo dpkg --configure -a ausführen, ist das Upgrade abgeschlossen? Eine weitere Option, um zu versuchen, ob Sie damit sudo apt-get install --fix-fehlen können. Um in den Wiederherstellungsmodus zu gelangen ....

Habe dies im Ubuntu-Wiki hier: https://wiki.ubuntu.com/RecoveryMode

Computer einschalten Warten Sie, bis das BIOS vollständig geladen ist (wahrscheinlich wird ein Logo Ihres Computerherstellers angezeigt). Die folgenden Meldungen werden angezeigt:

Madenladestufe1.5

Maden laden, bitte warten ...

Drücken Sie ESC, um das Menü aufzurufen. Drücken Sie schnell die Escape-Taste, um ein Startmenü aufzurufen. (Wenn Sie das Ubuntu-Logo sehen, haben Sie die Zeile ausgewählt, die mit '(Wiederherstellungsmodus)' endet, wahrscheinlich die zweite Zeile, etwa:

Ubuntu, Kernel 2.6.17-10-generic (Wiederherstellungsmodus) Drücken Sie die Eingabetaste, und Ihr Computer startet den Startvorgang. Nach einigen Augenblicken sollte Ihre Workstation ein Menü mit einer Reihe von Optionen anzeigen. Eine der Optionen (möglicherweise müssen Sie zum Ende der Liste scrollen) ist "Eingabeaufforderung zur Root-Shell ablegen".

Brett
quelle
Wo mache ich das, weil ich nicht in ein Terminal gelangen kann und auf den anderen Bildschirmen nichts angezeigt wird, was ich tippe?
Curt
Können Sie trotzdem in den Wiederherstellungsmodus booten und erhalten Sie eine # (root) -Aufforderung?
Brett
Wenn Sie eine Live-CD oder einen USB-Ubuntu-USB in die Hände bekommen können, würde ich die Antwort empfehlen, die Andrew unten gegeben hat.
Brett
0

Überprüfen Sie, ob Sie von Ihrem 12.04-Medium booten und ein CD-Upgrade des Systems durchführen können. (Vorausgesetzt, es glaubt immer noch, dass es hoffentlich 11.10 ist)

Mordoc
quelle
Ich habe den Laptop von System76 gekauft, daher habe ich keine Boot-CDs. Seitdem konnte ich es im Wiederherstellungsmodus starten, aber wenn ich versuche, die Option dpkg auszuführen, heißt es: dpkg wurde unterbrochen, Sie müssen 'dpkg --configure -a' manuell ausführen, um das Problem zu beheben.
Curt
@Curt Kannst du das ausführen dpkg --configure -a?
Belacqua
0

Sie können von einer CD oder einem USB-Stick booten, dann die Dateisystem-Chroot an den Mount-Punkt hängen und ausführen sudo apt-get install -f --fix-missing.

  1. Booten Sie von USB
  2. Terminal öffnen
  3. cd /mnt
  4. sudo mkdir /mnt/brokesystem
  5. sudo mount /dev/*sda1* /mnt/brokesystem * note / dev / sda1 kann etwas anderes sein / dev / ...
  6. sudo chroot /mnt/brokesystem
  7. sudo apt-get install -f --fix-missing (Möglicherweise werden Sie aufgefordert, den Dienst neu zu starten, und es werden Fehler angezeigt, dass der Dienst nicht neu gestartet werden kann. Dies ist in Ordnung.)
  8. Wenn das Update abgeschlossen ist, starten Sie den Computer neu (entfernen Sie die CD / USB des alternativen Startgeräts).
  9. Sollte normal geladen werden (das erste Booten kann etwas länger dauern)
Andrew
quelle
@Vipul Gupta Sie können sda1 nicht direkt chroot. Sie müssen sda1 mounten. Sie müssen ein Verzeichnis erstellen. Der beste Ort wäre / mnt, dann sudo mkdir brokesystem, dann sudo mount / dev / sda1 / mnt / brokesystem und dann ab 6.
Andrew