kernel - panic: attempted.. libcrypt.so.1 no such file..

P

paddor

Grünschnabel
Hallo zusammen :)

Wollte vorgestern mal meinen Debian-Computer neu starten um den frisch kompilierten Kernel zu testen.
Als er dann starten sollte, kam das hier (sofort nach Bootloader):

[...]
Freeing unused kernel memory: 172k freed
/bin/sh: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
Kernel panic - not syncing: Attempted to kill init!

Weitere Infos:
Diese Datei (libcryrpt.so.1) ist laut Knoppix auf meiner Debian-Partition im Verzeichnis /lib/ als Symlink auf libcrypt-2.3.6.so vorhanden.
Im Verzeichnis /usr/lib ist noch ein Symlink namens libcrypt.so, welcher auf /lib/libcrypt.so.1 zeigt.

Auch der zweite installierte Kernel (offizieller Debian-Kernel) läuft nicht mehr und Reinstallation von Grub hilft auch nichts. Somit liegt der Fehler imho ziemlich sicher beim Laden dieser Lib.
Diese wird anscheinend für /bin/sh (Symlink auf /bin/bash) benötigt.

In Knoppix lässt sich deswegen noch nicht mal chrooten in diese Partition.
Ich habe zwar die sash kopiert und diese beim chrooten starten können, aber kam dann nicht weiter.

Vielleicht müsste ich irgend ein Update machen?

Auch nach langem Googeln fand ich nichts. Und ich habe auch nichts Verrücktes kompiliert!
Nur den Kernel mit einer klein wenig anderen Konfiguration und danach installiert und nach ca. 2 Tagen neu gestartet (zumindest habe ich's schon ca 50 Mal probiert).

Danke für eure Hilfe.
Gruss, paddor
 
Sieht aus, als haettest du ein ziemlich uebles Problem mit der libc. Reinstalliere die mal nochmal und versuche es dann nochmal mit einem Default-Kernel von Debian.
 
Danke für die Antwort.
OK, dann ist evtl. irgend ein Debian-Update schuld.
Gehört diese libcrypt also zur libc? Bei Wikipedia steht nämlich nichts von *crypt*.
Wie reinstalliere ich die libc, wenn ich nicht mal chrooten kann um apt auszuführen?
Gruss
 
Welches Debian ist denn da installiert? Weder auf Sarge noch auf Etch zeigt ldd bei mir an, dass bash von libcrypt abhinge. Kannst Du unter Knoppix ein ldd auf die System-Bash ausfuehren? Wenn es an der Shell liegt, so kannst Du versuchen, als zweites Argument von chroot eine andere Shell anzugeben. Du koenntest dann sogar versuchen, die Knoppix shell auf das System zu kopieren (/mountpoint/bin/bash_sos oder so) und dann diese Shell bei chroot angeben.

Um ans System ranzukommen, kannst Du auch eine Debian installations CD verwenden. Von dort kommt man auch an eine Shell, ohne etwas installieren zu muessen, allerdings weiss ich nicht, ob das was hilft - koenntest dann zumindest versuchen, die libcrypt zu ersetzen.
 
Installiert ist Debian unstable, zuletzt etwa vor 4 Tagen auf den aktuellen Stand des offiziellen Debian-Repositorys gebracht worden.
Hm.. Dass die bash von libcrypt abhängt, ist auch nur eine Vermutung von mir, da in der Fehlermeldung ja "/bin/sh" steht, was ein Symlink auf /bin/bash ist.
Und das mit dem zweiten Argument bei chroot habe ich schon ausprobiert, nur eben mit der zuvor kopierten Knoppix-sash. Das funzte sogar.
Also probiere ich dasselbe morgen (heute geht's nicht mer) noch mit der Knoppix-bash.
Aber, dass die exec (bash) selbst kaputt ist, glaube ich nicht. Das wäre ja zu schön. :)
Wenn ich mich recht erinnere, habe ich vorgestern schon mal die bash von Knoppix auf das System kopiert (natürlich zuerst eine Sicherheitskopie der bestehenden bash erstellt). Funzte auch nicht. Danach habe wieder die bestehende bash "aktiviert".
ldd kannte ich bis jetzt noch nicht. Vielleicht braucht init ja die libcrypt?
Danke für die Hilfe.
Gruss, paddor
 
Hmm, stimmt allerdings. Weder die Bash noch irgendwelche von der Bash verwendeten Libs nutzen die libcrypt.so.1. Die Datei stammt aber auf jeden Fall aus der libc.
Code:
$ apt-file search libcrypt.so.1
amd64-libs: lib64/libcrypt.so.1
amd64-libs: lib64/tls/libcrypt.so.1
amd64-libs-dev: usr/lib64/debug/libcrypt.so.1
libc6: lib/libcrypt.so.1
libc6: lib/tls/libcrypt.so.1
libc6-dbg: usr/lib/debug/libcrypt.so.1
libc6-i686: lib/tls/i686/cmov/libcrypt.so.1
Hast du mal ein dist-upgrade durchlaufen lassen? Falls das Problem durch ein schiefgegangenes Update auftritt, koennte es sich ja damit wahrscheinlich erledigen.
 
Nur ne Idee ... aber im Grub stehen auch noch die richtigen HD-Angaben?
 
Ich habe jetzt mal die Knoppix-Bash kopiert, es erscheint jedoch immer noch derselbe Fehler beim booten.
Danach habe ich auf einer weiteren Partition ein 32Bit-Debian unstable (läuft bis jetzt gut) installiert und die 64Bit-Installation gemountet.
ldd gibt auf beide bash (Knoppix und die bestehende "bash.save") das hier aus:
Code:
paddian:/mnt/sda6/bin# mount
[...]
/dev/sda6 on /mnt/sda6 type ext3 (ro)
paddian:/mnt/sda6/bin# ls -l bash*
-rwxr-xr-x 1 root root 684724 2006-09-23 00:14 bash
-rwxr-xr-x 1 root root 769176 2006-07-05 18:39 bash.save
paddian:/mnt/sda6/bin# ldd bash
        linux-gate.so.1 =>  (0xffffe000)
        libncurses.so.5 => /lib/libncurses.so.5 (0xa7ef6000)
        libdl.so.2 => /lib/tls/libdl.so.2 (0xa7ef2000)
        libc.so.6 => /lib/tls/libc.so.6 (0xa7dbf000)
        /lib/ld-linux.so.2 (0xa7f42000)
paddian:/mnt/sda6/bin# ldd bash.save
        not a dynamic executable
Das hat, glaube ich, nichts damit zu tun, dass die Partition ro-gemountet ist.
Warum zum Teufel kommt diese komische Ausgabe bei der Datei "bash"? Konnte das durch ein Update passieren?
 
Ich hoffe mal, Du hast n 64Bit-Knoppix ... sonst sollte es nicht verwunderlich sein, warum eine 32-Bit Applikation in ner 64Bit Umgebung bzw. eine 64Bit-Umgebung mit nem 32Bit-Kernel nicht läuft ...
 
Hmm.. Das stimmt auch wieder. Und die Libs müssen immer auch 64Bit sein, wenn ich eine 64Bit-Executable habe und umgekehrt?
Habe gerade bei der Knoppix-Homepage vorbeigeschaut - 64Bit gibt's nicht.
Soll ich mal eine andere 64Bit-LiveCD-Distribution laden? Z.B. Ubuntu?
 

Ähnliche Themen

Kernel Panic GRUB 2

Linux Kernel VFS Panic HP Thin Client

Falsche Rechte gesetzt beim Anlegen von Ordnern via Samba-Client

CTDB Samba Cluster als Shared Storage für MS SQl Server

debian neuer kernel startet nicht

Zurück
Oben