'Segmentation Fault' beim RPM Installation...
Hallo, Ich hab Problem mit RPM Datein installation. Es taucht immer eine Fehlermeldung 'Segmentation Fault'. Ich kann alle andere parameters vom Befehl 'rpm' benutzen und ohne Problem, aber nur beim Installation mit Parameter '-ivh' oder '-Uvh' bricht die Installation ab und kommt diese Fehler meldung. Folgendes ist Output von 'rpm -Uvvh libdvdread-0.9.4-2.i586.rpm': D: counting packages to install D: found 1 packages D: looking for packages to download D: retrieved 0 packages D: New Header signature D: Signature size: 68 D: Signature pad : 4 D: sigsize : 72 D: Header + Archive: 59602 D: expected size : 59602 D: opening database mode 0x42 in /var/lib/rpm D: found 0 source and 1 binary packages D: YES A rpmlib(VersionedDependencies) <= 3.0.3-1 B rpmlib(VersionedDependencies) = 3.0.3-1 D: requires: mlib(VersionedDependencies) <= 3.0.3-1 YES (rpmlib provides) D: requires: /sbin/ldconfig satisfied by db file lists. D: requires: ld-linux.so.2 satisfied by db provides. D: requires: libc.so.6 satisfied by db provides. D: requires: libc.so.6(GLIBC_2.0) satisfied by db provides. D: requires: libc.so.6(GLIBC_2.1) satisfied by db provides. D: requires: libc.so.6(GLIBC_2.1.3) satisfied by db provides. D: requires: libc.so.6(GLIBC_2.2) satisfied by db provides. D: requires: libdl.so.2 satisfied by db provides. D: requires: libdl.so.2(GLIBC_2.0) satisfied by db provides. D: requires: libdl.so.2(GLIBC_2.1) satisfied by db provides. D: YES A libdvdread = 0.9.4-2 B libdvdread >= 0.9.4 D: requires: libdvdread >= 0.9.4 satisfied by added package. D: YES A libdvdread = 0.9.4-2 B libdvdread D: requires: libdvdread satisfied by added package. D: YES A libdvdread.so.2 B libdvdread.so.2 D: requires: libdvdread.so.2 satisfied by added provide. D: installing binary packages D: getting list of mounted filesystems D: New Header signature D: Signature size: 68 D: Signature pad : 4 D: sigsize : 72 D: Header + Archive: 59602 D: expected size : 59602 D: package: libdvdread-0.9.4-2 files test = 0 Segmentation fault Dann hab ich auch mit SRPM versucht. Installation ging gut, aber wenn ich RPM builden wollte, dann kam auch dieselbe Fehlermeldung. Hier ist das Output von 'rpm -ba libdvdread.spec', wobei ich den Teil von configure und compiling omittiert hab: ... + cd /var/tmp/libdvdread-0.9.4-2/usr/lib + ln -s libdvdread.so.3 libdvdread.so.2 + /sbin/ldconfig -n /var/tmp/libdvdread-0.9.4-2 + RPM_BUILD_ROOT=/var/tmp/libdvdread-0.9.4-2 + export RPM_BUILD_ROOT + test -x /usr/sbin/Check -a 0 = 0 -o -x /usr/sbin/Check -a '!' -z /var/tmp/libdvdread-0.9.4-2 + echo 'I call /usr/sbin/Check...' I call /usr/sbin/Check... + /usr/sbin/Check + /usr/lib/rpm/brp-compress Processing files: libdvdread-0.9.4-2 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.65522 + umask 022 + cd /usr/src/packages/BUILD + cd libdvdread-0.9.4 + DOCDIR=/var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread + export DOCDIR + rm -rf /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread + /bin/mkdir -p /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread + cp -pr README INSTALL NEWS COPYING AUTHORS /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread + exit 0 Finding Provides: (using /usr/lib/rpm/find-provides)... Finding Requires: (using /usr/lib/rpm/find-requires)... Provides: libdvdread2 = 0.9.4 libdvdread3 = 0.9.4 libdvdread.so.2 libdvdread.so.3 PreReq: rpmlib(VersionedDependencies) <= 3.0.3-1 /sbin/ldconfig Requires: ld-linux.so.2 libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1) libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.2) libc.so.6(GLIBC_2.3) libdl.so.2 libdl.so.2(GLIBC_2.0) libdl.so.2(GLIBC_2.1) Processing files: libdvdread-devel-0.9.4-2 Executing(%doc): /bin/sh -e /var/tmp/rpm-tmp.71557 + umask 022 + cd /usr/src/packages/BUILD + cd libdvdread-0.9.4 + DOCDIR=/var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread-devel + export DOCDIR + rm -rf /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread-devel + /bin/mkdir -p /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread-devel + cp -pr ChangeLog TODO /var/tmp/libdvdread-0.9.4-2/usr/share/doc/packages/libdvdread-devel + exit 0 Finding Provides: (using /usr/lib/rpm/find-provides)... Finding Requires: (using /usr/lib/rpm/find-requires)... Provides: libdvdread-devel = 0.9.4 libdvdread2-devel = 0.9.4 libdvdread3-devel = 0.9.4 PreReq: rpmlib(VersionedDependencies) <= 3.0.3-1 Requires: libdvdread = 0.9.4 Segmentation fault Ich kann auch nichts von SuSE CDs installieren, kommt eine Fehlermeldung. Es hat vor ein paar Wochen passiert, als ich die Bibliotheken von GLIBC, GLIB und GTK2 selber von Source-Code installiert hatte, dann hab ich neu-installation mit Update gemacht und das Problem wurde gelöst. Nun hab ich nur die GLIBC Bibliothek auf 2.3.2 aufgerüstet und das Problem hat wieder erscheint. Es wäre schön, wenn jd in diesem Fall helfen könnte. Ich kann keine Software mit RPM Datein installieren. Vielen Dank im Voraus!!! nandan -- Build a system [MS Windows] that even a fool can use, and only a fool will want to use it. ---- George Bernard Shaw Just as there are many parts needed to make a human a human, there's a remarkable number of things needed to make an individual who he is. A face to distinguish yourself from others, a voice you aren't aware of yourself, the hand you see when you awaken, the memories of childhood, the feelings for the future. That's not all. There's the expanse of the data net my cyber-brain can access. All of that goes into making me what I am, giving rise to a consciousness that I call "me." And simultaneously confining "me" within set limits. ---- Motoko Kusanagi, from Ghost In The Shell
Am Donnerstag, 17. April 2003 22:01 schrieb Nandan Joshi:
Ich kann auch nichts von SuSE CDs installieren, kommt eine Fehlermeldung. Es hat vor ein paar Wochen passiert, als ich die Bibliotheken von GLIBC, GLIB und GTK2 selber von Source-Code installiert hatte, dann hab ich neu-installation mit Update gemacht und das Problem wurde gelöst. Nun hab ich nur die GLIBC Bibliothek auf 2.3.2 aufgerüstet und das Problem hat wieder erscheint.
Sorry, aber was heisst "nur die GLIBC"? Das ist die zentrale Schnittstelle für alle Programme, das ist mit Abstand das heikelste an einer Linux installation. Ich würde Dir dringends raten wieder die original glibc einzuspielen, bevor das System völlig über Jordan springt. RPM gehört zu den Komponenten, die nach einem glibc Update nicht mehr funktionieren. Wenn Du länger mit dem System spielst, wirst Du vermutlich jede Menge anderer auch noch finden. -- Machs gut | http://www.iivs.de/schwinde/buerger/tremmel/ | http://packman.links2linux.de/ Manfred | http://www.knightsoft-net.de
On Friday 18 April 2003 00:11, Manfred Tremmel wrote:
Am Donnerstag, 17. April 2003 22:01 schrieb Nandan Joshi:
Ich kann auch nichts von SuSE CDs installieren, kommt eine Fehlermeldung. Es hat vor ein paar Wochen passiert, als ich die Bibliotheken von GLIBC, GLIB und GTK2 selber von Source-Code installiert hatte, dann hab ich neu-installation mit Update gemacht und das Problem wurde gelöst. Nun hab ich nur die GLIBC Bibliothek auf 2.3.2 aufgerüstet und das Problem hat wieder erscheint
Sorry, aber was heisst "nur die GLIBC"? Das ist die zentrale Schnittstelle für alle Programme, das ist mit Abstand das heikelste an einer Linux installation. Ich würde Dir dringends raten wieder die original glibc einzuspielen, bevor das System völlig über Jordan springt
Ich hab einfach GLIBC von 2.2.2 auf 2.3.2 aufgerüstet und auch mit RPM Datei. Einige Software brauchen aktuelle Version von GLIBC und ich hab bisher mit keiner Software Probleme gehabt und auch auf der GLIBC Webseite steht nichts vom solchen Konflikt. Und ich hatte mal auf unserer Uni. Newsgroups die gleiche Frage gestellt, und einer hat geschrieben dass ' RPM is (zumindest version 3) statisch gelinkt und deshalb unabhängig von jeglichen Bibliotheken (was auch notwendig ist wenn's mal hart kommt).' Also soll das Problem eigentlich nicht auf Upgrade von GLIBC liegen, aber es scheint so zu sein. Gibt es andere Möglichkeit die alte Bibliotheken wiederherzustellen, ohne mit SuSE CD nach dem CD-Boot UP update zu machen? Weil bei solchem Update wird viele Software mit den alten Versionen wiederinstalliert und ich muss wieder update machen, was sehr nervig ist. Vielen Dank auf die Antwort!!! nandan -- Build a system [MS Windows] that even a fool can use, and only a fool will want to use it. ---- George Bernard Shaw Just as there are many parts needed to make a human a human, there's a remarkable number of things needed to make an individual who he is. A face to distinguish yourself from others, a voice you aren't aware of yourself, the hand you see when you awaken, the memories of childhood, the feelings for the future. That's not all. There's the expanse of the data net my cyber-brain can access. All of that goes into making me what I am, giving rise to a consciousness that I call "me." And simultaneously confining "me" within set limits. ---- Motoko Kusanagi, from Ghost In The Shell
Am Freitag, 18. April 2003 01:31 schrieb Nandan Joshi:
Gibt es andere Möglichkeit die alte Bibliotheken wiederherzustellen, ohne mit SuSE CD nach dem CD-Boot UP update zu machen? Weil bei
Wird schwierig, wenn rpm selbst nicht funktioniert. Was aber in jedem Fall gehen sollte, von der CD das Notfallsystem starten und von dort aus das glibc rpm zu installieren. -- Machs gut | http://www.iivs.de/schwinde/buerger/tremmel/ | http://packman.links2linux.de/ Manfred | http://www.knightsoft-net.de
* Nandan Joshi <calculi@lycos.de> schrieb: [glibc-Update]
Ich hab einfach GLIBC von 2.2.2 auf 2.3.2 aufgerüstet und auch mit RPM Datei. [...] vom solchen Konflikt. Und ich hatte mal auf unserer Uni. Newsgroups die gleiche Frage gestellt, und einer hat geschrieben dass ' RPM is (zumindest version 3) statisch gelinkt und deshalb unabhängig von jeglichen Bibliotheken (was auch notwendig ist wenn's mal hart kommt).' Also soll das Problem eigentlich nicht auf Upgrade von GLIBC liegen, aber es scheint so zu sein.
Gibt es andere Möglichkeit die alte Bibliotheken wiederherzustellen, ohne mit SuSE CD nach dem CD-Boot UP update zu machen? Weil bei solchem Update wird viele Software mit den alten Versionen wiederinstalliert und ich muss wieder update machen, was sehr nervig ist.
Ein "rpm -i ..." funktioniert tatsächlich auch ohne glibc. Zwecks Wiederherstellung würde ich an Deiner Stelle ein rpm -e <neue glibc-Version> und ein direkt[1] anschließendes rpm -i <alte glibc-Version> versuchen. Ralph [1] Das alte glibc-RPM unbedingt vorher "bereitlegen", auch Pfad und genauen vollständigen Namen des alten glibc-RPMs merken, weil auch einfache Befehle wie "ls" nicht mehr ohne glibc funktionieren.
Danke erstmal,
Ich hab einfach GLIBC von 2.2.2 auf 2.3.2 aufgerüstet und auch mit RPM Datei.
[...]
Gibt es andere Möglichkeit die alte Bibliotheken wiederherzustellen, ohne mit SuSE CD nach dem CD-Boot UP update zu machen? Weil bei solchem Update wird viele Software mit den alten Versionen wiederinstalliert und ich muss wieder update machen, was sehr nervig ist
Ein "rpm -i ..." funktioniert tatsächlich auch ohne glibc
Wenn es so ist, dann warum kann ich die anderen RPM Datein mit 'rpm -i ...' nicht installieren? Ich hab gerade eine Probe gemacht, und scheint dieselbe Fehlermeldung 'Segmentation Fault' und auch an der gleichen Stelle.
Zwecks Wiederherstellung würde ich an Deiner Stelle ein rpm -e <neue glibc-Version> und ein direkt[1] anschließendes rpm -i <alte glibc-Version> versuchen
Da es mit anderen RPM Datein nicht geklappt hat, würde ich das Risiko nicht nehmen. Aber ich danke dir für die Hilfe. Außerdem weiß ich nicht genau ob das Fehler daran liegt. Ich hab auch GLIB, GTK2 mit GLIBC aufgerüstet und auch viele andere Software installiert, und bis ich den Computer neugestartet hab, hat es mit der neuen Bibliotheken ganz gut geklappt. Vor dem Neustart hat auch RPM die neue GLIBC Bibliotheken benutzt, andere RPM zu installieren, aber warum ist es so nach dem Neustart, verstehe ich nicht. Vielleicht kann dir diese Info. etwas hinweisen. Vielen Dank im Voraus!!! nandan -- Build a system [MS Windows] that even a fool can use, and only a fool will want to use it. ---- George Bernard Shaw Just as there are many parts needed to make a human a human, there's a remarkable number of things needed to make an individual who he is. A face to distinguish yourself from others, a voice you aren't aware of yourself, the hand you see when you awaken, the memories of childhood, the feelings for the future. That's not all. There's the expanse of the data net my cyber-brain can access. All of that goes into making me what I am, giving rise to a consciousness that I call "me." And simultaneously confining "me" within set limits. ---- Motoko Kusanagi, from Ghost In The Shell
Nandan Joshi <calculi@lycos.de> [Fri, 18 Apr 2003 01:31:08 +0200]:
Ich hab einfach GLIBC von 2.2.2 auf 2.3.2 aufgerüstet und auch mit RPM Datei.
Sorry, aber bei soviel Naivität geht mir der Hut hoch! Denn da haben wir schon den eigentlichen Fehler! Wenn auf einem glibc 2.2.2 basierten System "einfach" die glibc auf 2.3.2 aktualisiert wird, laufen viele statisch gelinkte Programme wie rpm nicht mehr (Begründung siehe weiter unten). <schreien> DIE GLIBC AUSZUWECHSELN IST DEUTLICH GEFÄHRLICHER ALS EIN KERNEL-UPDATE! </schreien>
Einige Software brauchen aktuelle Version von GLIBC
Welche? Wenn sie glibc 2.3.2 benötigen, sind das entweder keine für SuSE Linux gebauten RPMs und man sollte die Finger davon lassen oder aber es sind Pakete, die für die 8.2 gebaut wurden. Hat man keine 8.2, sollte man davon ebenfalls die Finger lassen. In beiden Fällen sollte man sich das .src.rpm holen und auf dem eigenen System mittels 'rpm -bb' neu kompilieren anstatt mit Glibc-Versionen zu experimentieren. Es sei denn, man hat soviel Ahnung von der Materie, das man sich der Gefahren bewusst ist, die man sich mit dem Update der Glibc einhandelt und weiss, was im Fehlerfall zu tun ist. Ich zähle mich zu letzterer Gruppe und trotzdem würde *ich* von einem Update der Glibc die Finger lassen.
und auch auf der GLIBC Webseite steht nichts von solchen Konflikt.
Das dort nicht steht, hat nicht unbedingt etwas zu sagen. Schau mal in das Archiv dieser Mailingliste, und du wirst mit ziemlicher Sicherheit die eine oder andere Mail von Thorsten Kukuk finden (einem der Glibc-Entwickler), in der er von solchen Problemen schreibt.
Und ich hatte mal auf unserer Uni. Newsgroups die gleiche Frage gestellt, und einer hat geschrieben dass ' RPM is (zumindest version 3) statisch gelinkt und deshalb unabhängig von jeglichen Bibliotheken (was auch notwendig ist wenn's mal hart kommt).'
Schreib dem Menschen, dass er sich irrt! Statisches Linken der glibc funktioniert *nur* dann wie gewünscht, wenn das Programm keinerlei Funktionen zur Namensauflösung (gethostbyname() etc.) verwendet, genauer, wenn es keine der in den nss-Modulen enthaltenen Funktionen benötigt. Die werden nämlich auch bei einer statisch gelinkten glibc dynamisch geladen!
Also soll das Problem eigentlich nicht auf Upgrade von GLIBC liegen,
Es liegt aber aus den oben genannten Gründen *genau* daran!
Gibt es andere Möglichkeit die alte Bibliotheken wiederherzustellen, ohne mit SuSE CD nach dem CD-Boot UP update zu machen?
1) Rettungssystem von CD booten 2) mount /dev/<device deines / Dateisystems> /mnt 3) mkdir /CD 4) mount -t iso9660 /dev/cdrom /CD 5) rpm --root /mnt -Uvh --oldpackage /mnt/suse/i586/glibc.rpm 6) umount /CD 7) rmdir CD 7) umount /mnt 8) CD aus dem Laufwerk nehmen. 9) shutdown -r now Philipp -- Philipp Thomas Arbeit: pthomas@suse.de Entwicklung, SuSE Linux AG Privat: philipp.thomas@t-link.de
participants (4)
-
Manfred Tremmel
-
Nandan Joshi
-
Philipp Thomas
-
Ralph Müller