Wo kann ich libc.so.6 herunterladen?

21078
LonelyWebCrawler

Ich habe die Datei vor kurzem versehentlich gelöscht. /lib/x86_64-linux-gnu/libc.so.6.Diese Datei wird von den meisten Programmen benötigt. Daher ist mein Computer im Wesentlichen defekt und ich kann nur über ein Live-USB auf die Festplatte zugreifen.

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

Wie kann ich ersetzen libc.so.6? ( /lib64/ enthält keine Kopie.)

Ausgabe vonlocate libc.so (bei Live-USB mit 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 
2

4 Antworten auf die Frage

4
Sami Laine

Ich gehe davon aus, dass Ihr Live-USB-Stick die gleiche Verteilung hat, wie Sie sie sonst ausführen, oder es handelt sich zumindest um eine Debian-basierte.

Mit diesen Annahmen starten Sie Ihr System zunächst mit Ihrem Live-USB-Stick. Fragen Sie dann ab, welches Paket die Datei /lib/x86_64-linux-gnu/libc.so.6mit dem Befehl besitzt dpkg -S /lib/x86_64-linux-gnu/libc.so.6(die Datei wird zu dem Paket namens "libc6" gehören, aber es ist trotzdem eine schöne Übung).

Wenn Sie Ihr System von einer USB-Stick-Live-Distribution aus ausführen, laden Sie das erforderliche Paket oder die erforderlichen Pakete von der Waldorf-Website von Crunchbang herunter .

Mounten Sie dann Ihr Festplattenlaufwerk in ein Verzeichnis. Zum Beispiel gehe ich davon aus, dass Sie Ihre Root-Partition von Ihrem Festplattenlaufwerk unter einhängen /mnt.

Dann müssen Sie nur noch die erforderlichen Pakete mit der --root /mntDirektive für installieren dpkg. Auf diese Weise gelangen die Pakete nicht in Ihr USB-Stick-Dateisystem, sondern in das System, das Sie bereits auf Ihrer Festplatte haben.

Danke, ich werde es bald ausprobieren. Aber ich frage mich: Wäre es nicht auch möglich, zur selben Distribution zu booten und einfach die fehlende Datei von USB auf die Festplatte zu kopieren? Oder wird das die Verpackung durcheinander bringen? LonelyWebCrawler vor 9 Jahren 0
Wahrscheinlich wird dies funktionieren, aber falls Sie einige Aktualisierungen auf dem System auf Ihrer Festplatte durchgeführt haben, ist die Datei auf Ihrem USB-Live-System möglicherweise nicht identisch. Was ich oben vorgeschlagen habe, ist nicht der einzige Weg, um es richtig zu machen (ein anderer wäre, die gleiche Version des deb-Pakets herunterzuladen, zu entpacken und die Datei von Hand zu kopieren, aber dann könnten Sie auch dpkg verwenden). Sami Laine vor 9 Jahren 2
Bitte helfen Sie, Sami! Ich kann das Paket `libc.so.6` nicht unter [packages.crunchbang.org] (http://packages.crunchbang.org) finden. LonelyWebCrawler vor 9 Jahren 0
Ich denke, es ist [dieses] (https://packages.debian.org/wheezy/amd64/libc6/download). Wie angewiesen: Zuerst herunterladen und dann mit dpkg installieren. agtoever vor 9 Jahren 0
1
That Brazilian Guy

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

Sie müssen herausfinden, von 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 zum Beispiel um einen Debian-Computer handelt, der die Standard-Repositorys verwendet, können Sie es hier herunterladen ), und installieren Sie es mithilfe der von @SamiLaine bereitgestellten Anweisungen.

Entschuldigung, ich bin nicht so gut mit Paketen und verstehe das nicht ganz. Das Paket ist libc6, aber wo finde ich es? Ich habe den Inhalt von `/ etc / apt / sources.list` in den Post eingefügt. LonelyWebCrawler vor 9 Jahren 0
0
harrymc

Versuchen Sie dies in einer Root-Shell:

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

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

Wenn dies nicht funktioniert, können Sie der statisch verknüpften Version von ldconfig in einer Root-Shell folgen :

/sbin/ldconfig 

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

Ich habe `libc.so.6 'durch Erstellen eines ähnlichen Links gelöscht. Entschuldigen Sie mich, wenn ich etwas skeptisch bin. Sind libc-2.13 (in meinem Fall) und libc.so.6 identisch? Warum sollte ich `libc.so.6` in` / lib64 / `und nicht in` / lib / x86_64-linux-gnu / `einfügen, wo ich es gelöscht habe? LonelyWebCrawler vor 9 Jahren 0
Wenn Sie die Bibliothek nicht gelöscht haben, die die Quelle all dieser Links ist, kann es sich lohnen, ldconfig auszuprobieren, mit dem alle Links wiederhergestellt werden. Sie können den Verbose-Parameter '-v' für weitere Informationen verwenden. harrymc vor 9 Jahren 0
Leider habe ich die Bibliothek gelöscht - das ist kompliziert. LonelyWebCrawler vor 9 Jahren 0
Ich habe oben noch einige Ratschläge für diesen Fall hinzugefügt. harrymc vor 9 Jahren 0
Es tut mir leid, ich habe dich falsch verstanden. Ich habe immer noch "libc-2.13.so" (obwohl nicht "2.19"). Ich werde den Link oben versuchen. LonelyWebCrawler vor 9 Jahren 0
0
Jollyfreak

Öffnen Sie ein Terminal ( Strg + 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

Netter Versuch. Leider habe ich kein Verzeichnis `/ lib64 / x86_64-linux-gnu /` (ich verwende auch kein Ubuntu). LonelyWebCrawler vor 9 Jahren 0