Wo kann ich die fehlende libc.so.6 herunterladen?

Wo kann ich die fehlende libc.so.6 herunterladen?

Ich habe vor Kurzem versehentlich die Datei gelöscht. /lib/x86_64-linux-gnu/libc.so.6.Diese Datei wird von den meisten Programmen benötigt, daher ist mein Computer im Grunde kaputt und ich kann nur über ein aktives USB-Laufwerk auf die Festplatte zugreifen.

Ich verwende die 64-Bit-Version von Crunchbang Waldorf, die auf Debian basiert.

Wie kann ich ersetzen libc.so.6? (/lib64/ nichteine Kopie enthalten.)

Ausgabe vonlocate libc.so(auf Live-USB, mit eingebundener defekter Festplatte)

/lib/x86_64-linux-gnu/libc.so.6
/rofs/lib/x86_64-linux-gnu/libc.so.6
/rofs/usr/lib/x86_64-linux-gnu/libc.so.6
/usr/lib/x86_64-linux-gnu/libc.so.6

Inhalt von /etc/apt/sources.list

deb http://mozilla.debian.net/ wheezy-backports iceweasel-release

## CRUNCHBANG
## Compatible with Debian Wheezy, but use at your own risk.
deb http://packages.crunchbang.org/waldorf waldorf main contrib
# deb-src http://packages.crunchbang.org/waldorf waldorf main

## DEBIAN
deb http://http.debian.net/debian wheezy main contrib non-free
# deb-src http://http.debian.org/debian wheezy main contrib non-free

## DEBIAN SECURITY
deb http://security.debian.org/ wheezy/updates main contrib
# deb-src http://security.debian.org/ wheezy/updates main

Antwort1

Ich gehe davon aus, dass auf Ihrem Live-USB-Stick die gleiche Distribution läuft, die Sie sonst verwenden, oder dass sie zumindest auf Debian basiert.

Mit diesen Annahmen booten Sie Ihr System zunächst mit Ihrem Live-USB-Stick. Fragen Sie dann /lib/x86_64-linux-gnu/libc.so.6mit dem Befehl ab, welchem ​​Paket die Datei gehört dpkg -S /lib/x86_64-linux-gnu/libc.so.6(es stellt sich heraus, dass die Datei dem Paket mit dem Namen „libc6“ gehört, aber es ist trotzdem eine nette Übung).

Wenn Ihr System von einer Live-Distribution auf einem USB-Stick ausgeführt wird, laden Sie das erforderliche Paket bzw. die erforderlichen Pakete herunter vonCrunchbang Waldorf-Site.

Mounten Sie dann Ihre Festplatte in einem Verzeichnis. Als Beispiel gehe ich wieder davon aus, dass Sie Ihre Root-Partition von Ihrer Festplatte unter mounten /mnt.

Anschließend müssen Sie nur noch das oder die benötigten Pakete mit --root /mntder Direktive for neu installieren dpkg. Auf diese Weise landen die Pakete nicht im Dateisystem Ihres Live-USB-Sticks, sondern in dem System, das Sie bereits auf Ihrer Festplatte haben.

Antwort2

Die libc.so.6Datei ist im libc6Paket vorhanden.

Sie müssen herausfinden, aus welchem ​​Repository das libc6Paket auf Ihrem Computer installiert wurde. (Überprüfen Sie /etc/apt/sources.listusw.).

Laden Sie es dann manuell herunter (Wenn es sich beispielsweise um eine Debian-Maschine mit den Standard-Repositorys handelt, können Sie es von herunterladenHier), und installieren Sie es dann gemäß den Anweisungen von @SamiLaine.

Antwort3

Versuchen Sie Folgendes in einer Root-Shell:

ln -s /lib/x86_64-linux-gnu/libc-2.13.so /lib64/libc.so.6

Wenn libc-2.13.sodies nicht die richtige Version für Ihr System ist, verwenden Sie die Tab-Vervollständigung in Bash, um die richtige zu finden.

Wenn dies nicht funktioniert, können Sie mit der statisch verknüpften Version von fortfahren.ldconfigin einer Root-Shell:

/sbin/ldconfig

Wenn die Zielbibliothek für die libc-Links gelöscht wurde, laden Sie das Debian-Paket von derPaket: libc6Seite, entpacken Sie es mit dpkg-deb -X(manpage) und kopieren Sie libc-2.13.sonach /lib/x86_64-linux-gnu. Führen Sie dann ldconfig aus, um sicherzustellen, dass alle Links korrekt sind.

Antwort4

Öffnen Sie ein Terminal ( Ctrl+ Alt+ T) und führen Sie die folgenden Befehle aus:

Für 64-Bit-Ubuntu:

sudo ln -s /lib64/x86_64-linux-gnu/libc.so.6 /lib64/libc.so.6

Für 32-Bit-Ubuntu:

sudo ln -s /lib/i386-linux-gnu/libc.so.6 /lib/libc.so.6

verwandte Informationen