• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

RPM-Manager verursacht "Segmentation Fault"

Guten Morgen,

folgendes Problem habe ich:

Wenn ich Pakete mit "rpm" auf der Konsole installieren will bekomme ich immer einen "segmentation fault". Hab auch schon nachgegoogelt und rausgefunden das dies an einer inkompatiblen glibc liegt. Ich kann aber dummerweise die glibc nicht neu einspielen, da der Paketmanager ja nicht mehr funktioniert :( Aus dem gleichen Grund kann ich auch keine passende Version des Paketmanagers installieren.
wie krieg ich die glibc wieder in den Ausgangzustand? Anmerken muss ich noch das ich nur per PUTTY zugriff auf die maschine hab, Recovery-CD einlegen oder sowas ist von daher nicht möglich.

Danke im Vorraus

Raskil
 
hm ... und da du keine CD einlegen kannst .... :roll:
Und das:
http://lists.suse.com/archive/suse-linux/2003-Apr/2830.html
bzw. nachfolgende Postings
 
So als weiteren Versuch: rpm2cpio
- "richtige" rpm-Version versuchen in ein cpio zu wandeln. ( falls dieser Prozess wenigstens geht, sonst auf anderen Rechner zum Auspacken ausweichen )
- cpio auspacken, z.B. unter /tmp/
- das ausgepackte Paket /tmp/.... direkt verwenden.

Was ich nicht machen würde: glibc auf dem System anpacken.
Die "Crash"-Gefahr wäre mir zu groß, speziell, da keine CD geht...

Sonst fallen mir nur "kranke" Speziallösungen ein.
1.) extra tree vorbereiten, mit vielen "hardlinks", aber passende glibc + chroot .
2.) passende libc holen, unter /lib/libc.so.x ablegen ( nicht original überschreiben). rpm "kopieren" als rpm.kruecke "vi -b rpm.kruecke" und libc.so. suchen und z.B. libc.so.6 in libc.so.x ändern.

Ich würde den meisten Wert auf "System bleibt heile" setzen. Wenn die glibc hin ist, ist das schon schwierig.

Haveaniceday
 
nunja, es ist ja nicht mehr heile :) ich werd wohl net drum rum kommen irgendwie von nem Medium zu booten wenn das nochma ordentlich funktionieren soll.
 
naja, jemand hat auf dem system die glibc ausgetauscht, was ja nicht so günstig war. Jetzt lassen sich die wenigstens sachen ordentlich ausführen. Bei rpm komm der segmentation fault, bei prm2cpio schreibt er mir die ganze konsole mit mist voll.
Ich hab mir das alte rpm paket von der glibc organisiert, weiss abe rjetzt nicht wie ich das da wieder druff kriege.
 
- CD1 einlegen
- Rettungssystem booten
- Warten, bis die Konsole des Rettungssystems da ist
- Sowohl die root-Partition des defekten Systems als auch die CD mit der korrekten glibc mounten
- angenommen, die CD wäre unter /mnt/cd und die root-Partition unter /mnt/platte gemountet, folgendes ausführen:
Code:
rpm -Uvh /mnt/cd/pfad/zur/glibc-bla-blubb.i586.rpm --root /mnt/platte
Die Pfade bitte passend zum System setzen.

Zum Verständnis: Dieses rpm dürfte nicht abstürzen, weil es von der CD1 startet. Deswegen musst Du auch "--root /mnt/platte" verwenden, um rpm mitzuteilen, dass es die root-Partition des defekten Systems als "/" verwenden soll, weil das eigentliche "/" des Rettungssystems im RAM liegt.
 
Dann würde ich versuchen das rpm-Paket zu modifizieren.
- anderes Linux System nutzen um mit "glibc-package" zu entpacken.
- unter /lib/libc.so.x auf dem "kaputten" System ablegen ( nicht original überschreiben). rpm "kopieren" als rpm.kruecke "vi -b rpm.kruecke" und libc.so. suchen und z.B. libc.so.6 in libc.so.x ändern.


Du solltest aber immer vorbereitet sein, dass alles stehen bleibt.
Mit der lib kann arbeiten problematisch werden.

Haveaniceday
 
Oben