GLIBC zerschossen, Linux fährt nicht mehr hoch

Guten Tag werte Forumsmitglieder!

Ich nutze Suse Linux 9.3 und habe folgendes Problem:

Gestern abend wollte ich Amule aktualisieren und dadurch habe ich, trotz Warnungen über fehlende Abhängigkeiten, einfach alle ignoriert und zusätzlich glibc upgedatet. Dabei hat er mein altes glibc überschrieben und jetzt bootet mein Linux nicht mehr. Er bringt beim Hochfahren folgende Fehlermeldung:

"/sbin/mingetty: relocation error: /lib/tls/libc.so.6: symbol _dl_out_of_memory, version GLIBC_PRIVATE not defined in file ld-linux.so.2 with link time reference"

Dann bringt er immer:

"INIT: ld "1" respawning too fast: disabled for 5 minutes",

dann wieder die Meldung mit dem "/sbin/mingetty" und schliesslich:

"INIT: no more processes left in this runlevel".

Wie kann ich jetzt, ohne mir mein Linux noch mehr zu verschiessen, das alte glibc wieder auf meinen Rechner bringen?

Oder hat jemand noch andere Ideen, was ich machen könnte?

Ich habe auch schon mit der DVD gebootet, auf "Installieren" geklickt und ein Tool benutzt, welches meine Pakete untersucht hat. Er findet auch ein paar Fehler und ich kann die anklicken und reparieren klicken, wenn ich danach allerdings hochfahre sieht es so aus, als habe er gar nix gemacht, die Fehlermeldung kommt weiterhin.

Ich bin echt verzweifelt und weiss nicht mehr weiter.

Danke für jede Hilfe!

Mit freundlichen Grüssen
lynx

UPDATE:

Ich habe folgendes Tutorial gefunden:

http://www.root-forum.org/showthread.php?t=864

Bei diesem How-To bin ich bis "chroot /mnt" gekommen. wenn ich das eintippe und dann "enter", dann kommt:

"/bin/bash: relocation error: /lib/tls/libc.so.6; symbol _dl_out_of_memory, version GLIBC_PRIVATE not defined in file ld-linux.so.2 with link time reference"

und er macht nicht weiter. :(
 
Besorg dir ne externe Bootvariante (evtl. bringt SUSE einen repair Modus mit?) und flick den Fehler wieder zusammen. Sprich: Installier die passende glibc manuell.
 
@blueflash: Es gibt ein "Rescue System". Das habe ich bereits gemacht. Leider mountet er mein DVD-Brenner_laufwerk nicht und so bekomme ich den Pfad für die alte GLIBC auf der Suse-DVD nicht raus.

yast lässt sich auch nicht über die Rescue starten, es kommt die selbe Fehlermeldung wie bei meinem ersten Post angegeben.

Die genauen Befehle zur manuellen Install bräuchte ich darüberhinaus.

mfg
lynx
 
ehm wie darf ich das "mountet nicht" verstehen? Mountet er automatisch nicht?

Wenn das nur der fall ist, dann kannst du das auch manuell lösen indem du deinen brenner raussuchst unter welchem device er sich ansprechen lässt:

einfach mal via

cat /proc/partitions

ausprobieren ;)

und danach einfach

mount /dev/hdc /mnt/cdrom

dabei ist hdc eifach nen example das bei mir zutrifft und /mnt/cdrom nen bliebiger pfad sollte doch aber lieber unter /mnt sein :)

Viel erfolg!
 
@petersilie: Das mit dem mounten ist so: Ich habe einen DVD-Brenner und einen usbstick, welche auch beim hochfahren im Rescue Modus erkannt werden, also zumindest das Licht meines USB leuchtet. Wenn ich aber in das "media"-Verzeichnis wechsle und auf die Wechseldatenträger zugreifen will, dann erscheint deren Inhalt nicht.

Könntest du mir eventuell die genaue Codezeile geben, mit der ich das neue glibc mit der alten ersetzen kann? Also, dass ich das alte glibc von der DVD nehme und die auf der Festplatte dann überschrieben wird. Ich selber hab keinen blassen, wie ich das dann machen soll.

Hat sonst noch irgendwer Ideen? Vielleicht schon mal das Problem gehabt und OHNE kompletter Neuinstallation gelöst?

mfg
lynx
 
Wie petersilie dir schon sehr ausführlich beschrieben hat, musst du deine Geräte erst mounten, bevor du sie nutzen kannst. Das erledigt scheinbar sonst hotpug oder automount oder sonstein deamon für dich. Mounte einfach dein /dev/dvd oder so und dann kannst du es auch nutzen.
 
@blueflash: Das kann ja sein, ich werde es nachher auch mal ausprobieren. Deshalb brauch ich aber trotzdem die Codezeile mit dem "rpm blabla..."!

Thanx anyway,
lynx
 
vorab erstmal:

Der usb stick verhält sich da ähnlich aber der scheint ja offenbar gemountet zu sein irgentwie dennoch nicht richtig

ich lasse nie was autoumounten ich gehe bei usb sticks so vor:

mount -t vfat /dev/sdc1 /mnt/usb

So nun zurück:

Ich bin leider kein suse user noch habe ich viel mit rpms zu tun dennoch entnahm ich aus der manual von rpm

--force
Same as using --replacepkgs, --replacefiles, and --oldpackage.

ergo: rpm --force dein.rpm

mfg
 
@petersilie: Okay, ich sitze jetzt vor meiner Rettungskonsole. Die Festplatte habe ich gerade eingehängt.

Wenn ich jetzt "cat /proc/partitions" eingebe, dann spuckt er mir das aus:

8 0 256000 sda
3 0 78150744 hda
3 1 204828943 hda1
3 2 1 hda2
3 5 14900256 hda5
3 6 25695935 hda6
3 7 1028128 hda7
3 8 16040871 hda8

Hmm...hier sehe ich kein CD-Rom. Ich glaube, dass sda mein USB-Stick ist, der hat nämlich 256mb. hda8 ist meine Linux-partition, die ich bereits eingehängt habe.

Und jetzt, wie weiter?

mfg
lynx

UPDATE:

Ich habe die "glibc"-Dateien jetzt auf meinen USB-Disk kopiert.
Dann habe ich "rpm -ivh --force /mnt/usbdisk/glibc-2.3.4-23.i586.rpm" eingegeben, enter, dann kommt:

"warning: /mnt/usbdisk/glibc-2.3.4-23.i586.rpm: V3 DS signature: NOKEY, key ID 9c800aca" und
"error: Failed depencies: filesystem is needed by glibc-2.3.4-23"

Irgendwelche Ideen? Bis hierher klappte das ja ganz gut. :-)
 
Original von lynx
@petersilie: Okay, ich sitze jetzt vor meiner Rettungskonsole. Die Festplatte habe ich gerade eingehängt.

Wenn ich jetzt "cat /proc/partitions" eingebe, dann spuckt er mir das aus:

8 0 256000 sda
3 0 78150744 hda
3 1 204828943 hda1
3 2 1 hda2
3 5 14900256 hda5
3 6 25695935 hda6
3 7 1028128 hda7
3 8 16040871 hda8

Hmm...hier sehe ich kein CD-Rom. Ich glaube, dass sda mein USB-Stick ist, der hat nämlich 256mb. hda8 ist meine Linux-partition, die ich bereits eingehängt habe.

Und jetzt, wie weiter?

richtig erkannt dies ist in der tat dein usb-stick.

Desweiteren habe ich gerade mal geschaut es wird in der tat kein cdlaufwerk angezeigt allerdings bei mri auch nicht.. Hmm das hatte ich allerdings irgentwie anders in erinnerung oder ich werd alt ;)

normalerweise sollten laufwerke (herkömllich angeschlossen entweder auf hdc oder hdd sein. Jedoch habe ich 2 hdds drinne also würde das bei dir hdb und hdc sein *g*

Irgendwelche Ideen? Bis hierher klappte das ja ganz gut. :-)

In der tat aber versuch doch mein bsp und dann klappts auch vielleicht ganz zu dem anderen fehler verschieben wir mal vielleicht klappts ja mit dem laufwerk ;D
 
Also ich habe jetzt über die Rescue-Konsole folgende Pakete mit dem Befehl:

"rpm -ivh --force --nodeps --root=/mnt /mnt/usbdisk/glibc-2.3.4-23.i586.rpm"

installiert.

Bei den folgenden gab es keine Probleme:

- glibc-devel-2.3.4-23.i586.rpm
- glibc-html-2.3.4-23.i586.rpm
- glibc-i18ndata-2.3.4-23.i586.rpm
- glibc-locale-2.3.4-23.i586.rpm
- libpng-1.2.8-3.i586.rpm
- xorg-x11-libs-6.8.2-30.i586.rpm

Folgende liessen sich NICHT installieren:

- glibc-2.3.4-23.i586.rpm
- glibc-info-2.3.4-23.i586.rpm
- wxGTK-2.5.3.1-5.i586.rpm

Bei der Installation kam immer folgende fehlermeldung:

"relocation error: /lib/tls/libc.so.6: symbol _dl_out_of_memory, version GLIBC_PRIVATE not defined in file ld-linux.so.2 with link time reference"

und

"error: %post(glibc...) scriptlet failed, exit status 127"

Ich denke, ich bin hier wirklich machtlos. Linux lässt sich von mir NICHT reparieren. ich weiss nicht mehr, was ich noch machen soll.
 
Hmmm,

also %post ist ein Makro, das nach der Installation aufgerufen wird. Er meckert dann, dass in der Datei /lib/tls/libc.so.6 eine andere Version oder so verwendet wird. Das ist seltsam, da sowohl libc als auch ld-linux in dem selben rpm liegen, also eigentlich zwangsläufig zusammenpassen sollten.
Was gibt dir denn
Code:
 rpm -q --filesbypkg /mnt /mnt/usbdisk/glibc-2.3.4-23.i586.rpm

bzw. (ich hab nämlich keine Ahnung woher /lib/tls/libc.so.6 kommt)

Code:
rpm -qa | grep /lib/tls/libc.so.6

aus?
 
naja, das system scheint wohl kaum einfach so wieder auf was brauchbares zu bringen sein, wärs ein gentoo hät ich ja grad gesagt das du mal das stage3 tarball drauf packst aber so wirds ja nix... ich würde mal sagen es wäre am sinnvollsten wenn du ein backup von deinen files machst und neuinstallierst.
 
@blueflash:

bei deinem ersten -

"rpm -q --filesbypkg /mnt /mnt/usbdisk/glibc-2.3.4-23.i586.rpm"

kommt:

"package /mnt is not installed"
"package /mnt/usbdisk/glibc-2.3.4-23.i586.rpm"

und bei deinem zweiten -

"rpm -qa | grep /lib/tls/libc.so.6"

passiert gar nichts. Er gibt nichts aus und nix passiert.

@treo: Tja, das ist meine Befürchtung. Wenn nichts mehr anderes geht, dann werde ich da nicht drumrumkommen. Mit einer dummen Entscheidung mein komplettes System zerschossen; echt hart.

Ein Backup von meinem home-Verzeichnis habe ich bereits gemacht. Es wäre aber trotzdem ärgerlich, da steckt über ein Jahr Arbeit drin...
 
Sorry,

war nicht mehr ganz fir gestern abend. Folgendes solltest du mal durchjagen:

Code:
rpm -qa --filesbypkg | grep /lib/tls/libc.so.6

Das gibt dir das rpm aus, dass /lib/tls/libc.so.6 enthält.

Code:
rpm -q /mnt/usbdisk/glibc-2.3.4-23.i586.rpm --filesbypkg

Das gibt dir an, welche Dateien dein glibc rpm enthält. Damit sollte man dem Konflikt auf die Spur kommen.
 
@blueflash:

Bei deinem ersten

"rpm -qa --filesbypkg | grep /lib/tls/libc.so.6"

passiert nichts. Bei deinem zweiten

"rpm -q /mnt/usbdisk/glibc-2.3.4-23.i586.rpm --filesbypkg"

sagt er: "package /mnt/usbdisk/glibc-2.3.4-23.i586.rpm is not installed".

Nun, es bewegt sich nichts, wie ich meine. Schade... Sonst keine Ideen mehr wahrscheinlich!? Also mir fällt nix mehr ein. :-(
 
Ich würde mal darauf tippen, ohne mich jetzt zu weit aus dem Fenster zu lehnen, dass du schon zwischen Installation und crash mal geupdatet hast, oder?
Dann ist es klar, dass die CD nicht mehr die richtige Version bietet. Mach dir keine großen Gedanken, sicher dein home Verzeichnis (inklusive aller versteckten Dateien) und spiel es nach der Neuinstallation wieder zurück. Die meisten deiner Einstellungen sind dann auch wieder da.
 
@blueflash: Nee, also Linux selber habe ich noch nicht geupdatet. Was ich lediglich versucht habe, war, wie bereits weiter oben beschrieben, die rpms einfach drüberzuinstallieren. Aber wie gesagt, von 10 waren nur 7 erfolgreich und bei den dreien bin ich mir sicher, dass die den Zustand aufgelöst hätten, aber er macht es nicht mehr.

Nun, mir wird wohl nix anderes übrigbleiben, als mein Linux nochmal neu aufzusetzen. Ich hoffe, dass ich dafür am Weekend Zeit finde und ich bin gespannt, wie lange es dauert, bis alles wieder so läuft wie vor dem Crash. Denn es lief alles perfekt, meine Unfähigkeit und weil ich auf das OS nicht hören wollte haben meinem Pinguin den Kopf gekostet. Bad Luck.

Mein home-Verzeichnis ist bereits sicher auf ner DVD und in meiner Schublade schlummert auch schon eine neue version. So hatte ich mir den Updatevorgang allerdings nicht vorgestellt...

Trotzdem vielen Dank, dass du/ihr mir helfen wolltet! Es sollte diesmal eben nicht sein...

mfg
lynx
 
Zurück
Oben