Re: Verstndnisfrage zu ldd
Hello Stefan, On Mon, 26 Jan 2004 18:12:26 +0100 Weinzierl Stefan [EMAIL PROTECTED] wrote: Jörg Schütter wrote: Da ich hier nur ein Binary habe (Closed Source) habe ich wohl keine andere Wahl. Ich hoffe, daß ich durch Kopieren des Verzeichnisses /lib (aus einer Minimalinstallation) alles Notwendige an Bibliotheken übertragen habe. Gerade durch Zufall entdeckt: Führe deine Anwendung aus ermittle die PID und lass dir /proc/$PID/maps anzeigen... war sehr hilfreich. Sobald aber pam benötigt wird, komme ich auch damit nicht weiter. Jörg -- Jörg Schütter http://www.lug-untermain.de/ [EMAIL PROTECTED] http://www.schuetter.org/joerg/ ICQ: 298982789 http://mypenguin.bei.t-online.de/ -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Jörg Schütter wrote: Da ich hier nur ein Binary habe (Closed Source) habe ich wohl keine andere Wahl. Ich hoffe, daß ich durch Kopieren des Verzeichnisses /lib (aus einer Minimalinstallation) alles Notwendige an Bibliotheken übertragen habe. Gerade durch Zufall entdeckt: Führe deine Anwendung aus ermittle die PID und lass dir /proc/$PID/maps anzeigen... Stefan -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Hello Stefan, On Mon, 26 Jan 2004 18:12:26 +0100 Weinzierl Stefan [EMAIL PROTECTED] wrote: Jörg Schütter wrote: Da ich hier nur ein Binary habe (Closed Source) habe ich wohl keine andere Wahl. Ich hoffe, daß ich durch Kopieren des Verzeichnisses /lib (aus einer Minimalinstallation) alles Notwendige an Bibliotheken übertragen habe. Gerade durch Zufall entdeckt: Führe deine Anwendung aus ermittle die PID und lass dir /proc/$PID/maps anzeigen... klingt vielversprechend. Das werde ich auf dem besagten System mal austesten und anschließend berichten. Jörg -- Jörg Schütter http://www.lug-untermain.de/ [EMAIL PROTECTED] http://www.schuetter.org/joerg/ ICQ: 298982789 http://mypenguin.bei.t-online.de/ -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Hello Sven, On Sun, 25 Jan 2004 01:39:12 +0100 Sven Hartge [EMAIL PROTECTED] wrote: Andreas Metzler [EMAIL PROTECTED] wrote: Sven Hartge [EMAIL PROTECTED] wrote: Jörg Schütter [EMAIL PROTECTED] wrote: ldd zeigt nur die Libraries, die dynamisch an das Programm gebunden (gelinkt) sind und die beim Starten des Programms durch den dynamischen Linker der libc dazugelinkt werden. Ein Programm kann z.B. durch dlopen() weitere Bibliotheken nachladen, allerdings steht dieses Nachladen dann unter der Kontrolle des Programms und _nicht_ unter der Kontrolle des dynamischen Linkers und kann daher von ldd nicht angezeigt werden. so etwas habe ich befürchtet. Nicht zu vergessen PAM, und libc6, die dlopen (oder einen aehnlichen Mechanismus) fuer NSS (benoetigt fuer Basisfunktionen wie getpwnam()) oder iconv() (/usr/lib/gconv/*) benutzt. Richtig. Danke für eure Hilfe. Allgemein kann man sagen, das man beim chroot()en von Programm, die nicht genau sagen, was sie wann so benötigen, eben nur auf Trial'n'Error zurückgreifen kann, wenn man den Code nicht lesen und verstehen kann. Da ich hier nur ein Binary habe (Closed Source) habe ich wohl keine andere Wahl. Ich hoffe, daß ich durch Kopieren des Verzeichnisses /lib (aus einer Minimalinstallation) alles Notwendige an Bibliotheken übertragen habe. Jörg -- Jörg Schütter http://www.lug-untermain.de/ [EMAIL PROTECTED] http://www.schuetter.org/joerg/ ICQ: 298982789 http://mypenguin.bei.t-online.de/ -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Hello Joel, On Sat, 24 Jan 2004 22:27:34 +0100 Joel HATSCH [EMAIL PROTECTED] wrote: On Sat, 24 Jan 2004 20:00:36 +0100 Jörg Schütter [EMAIL PROTECTED] wrote: Hallo Liste, ich habe hier ein Verständnisproblem mit ldd. Wenn ich die Manpage richtig verstanden habe, sollte mir der Befehl ldd _alle_ Libs aufzeigen die für dieses Programm benötigt werden. Anhand dieser Information habe ich ein root-jail (chroot) für dieses Programm gebaut und versucht das Programm zu starten. So weit so gut, wenn ich aber das Programm erneut starte (mit anderen Parametern), da damit das laufende Programm gestuert wird, erhalte ich etliche Fehlermeldungen. Durch Aufruf von strace konnte ich feststellen, daß dieses Programm noch weitere Libs benötigt. Warum konnten diese durch den ldd-Befehl nicht ermittelt werden. Hi, (ich rate) kann es sein, dass es nicht dein Programm sondern die Libraries sind, die diese Librarie benötigen ? z.B. : nostromo:~# ldd /usr/lib/libmysqlclient.so.10.0.0 libz.so.1 = /usr/lib/libz.so.1 (0x40041000) libcrypt.so.1 = /lib/libcrypt.so.1 (0x40052000) libnsl.so.1 = /lib/libnsl.so.1 (0x4008) libm.so.6 = /lib/libm.so.6 (0x40095000) libc.so.6 = /lib/libc.so.6 (0x400b7000) /lib/ld-linux.so.2 = /lib/ld-linux.so.2 (0x8000) nö, es ist wirklich das Programm. Da ich auch zuerst die Libs in Verdacht hatte, habe ich ldd auf alle benötigten Libs losgelassen. Jörg -- Jörg Schütter http://www.lug-untermain.de/ [EMAIL PROTECTED] http://www.schuetter.org/joerg/ ICQ: 298982789 http://mypenguin.bei.t-online.de/ -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Verstndnisfrage zu ldd
Hallo Liste, ich habe hier ein Verständnisproblem mit ldd. Wenn ich die Manpage richtig verstanden habe, sollte mir der Befehl ldd _alle_ Libs aufzeigen die für dieses Programm benötigt werden. Anhand dieser Information habe ich ein root-jail (chroot) für dieses Programm gebaut und versucht das Programm zu starten. So weit so gut, wenn ich aber das Programm erneut starte (mit anderen Parametern), da damit das laufende Programm gestuert wird, erhalte ich etliche Fehlermeldungen. Durch Aufruf von strace konnte ich feststellen, daß dieses Programm noch weitere Libs benötigt. Warum konnten diese durch den ldd-Befehl nicht ermittelt werden. Jörg -- Jörg Schütter http://www.lug-untermain.de/ [EMAIL PROTECTED] http://www.schuetter.org/joerg/ ICQ: 298982789 http://mypenguin.bei.t-online.de/ -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Am Samstag, 24. Januar 2004 20:00 schrieb Jörg Schütter: ich habe hier ein Verständnisproblem mit ldd. Wenn ich die Manpage richtig verstanden habe, sollte mir der Befehl ldd _alle_ Libs aufzeigen die für dieses Programm benötigt werden. Anhand dieser Information habe ich ein root-jail (chroot) für dieses Programm gebaut und versucht das Programm zu starten. So weit so gut, wenn ich aber das Programm erneut starte (mit anderen Parametern), da damit das laufende Programm gestuert wird, erhalte ich etliche Fehlermeldungen. Durch Aufruf von strace konnte ich feststellen, daß dieses Programm noch weitere Libs benötigt. Warum konnten diese durch den ldd-Befehl nicht ermittelt werden. ldd zeigt dir die libs, die direkt mit dem programm verbunden sind. Wenn diese Libs noch andere Libs brauchen, siehst Du das dann mit ldd lib.so und so weiter. -- Andreas -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Jörg Schütter [EMAIL PROTECTED] wrote: Anhand dieser Information habe ich ein root-jail (chroot) für dieses Programm gebaut und versucht das Programm zu starten. So weit so gut, wenn ich aber das Programm erneut starte (mit anderen Parametern), da damit das laufende Programm gestuert wird, erhalte ich etliche Fehlermeldungen. ldd zeigt nur die Libraries, die dynamisch an das Programm gebunden (gelinkt) sind und die beim Starten des Programms durch den dynamischen Linker der libc dazugelinkt werden. Durch Aufruf von strace konnte ich feststellen, daß dieses Programm noch weitere Libs benötigt. Warum konnten diese durch den ldd-Befehl nicht ermittelt werden. Ein Programm kann z.B. durch dlopen() weitere Bibliotheken nachladen, allerdings steht dieses Nachladen dann unter der Kontrolle des Programms und _nicht_ unter der Kontrolle des dynamischen Linkers und kann daher von ldd nicht angezeigt werden. dlopen() wird sehr gerne für Plugins benutzt, die zur Laufzeit nachgeladen werden können, aber die nicht zwingend benötigt werden. transcode z.B. benutzt diese Methode. S° -- BOFH excuse #385: Dyslexics retyping hosts file on servers -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)
Re: Verstndnisfrage zu ldd
Andreas Metzler [EMAIL PROTECTED] wrote: Sven Hartge [EMAIL PROTECTED] wrote: Jörg Schütter [EMAIL PROTECTED] wrote: ldd zeigt nur die Libraries, die dynamisch an das Programm gebunden (gelinkt) sind und die beim Starten des Programms durch den dynamischen Linker der libc dazugelinkt werden. Ein Programm kann z.B. durch dlopen() weitere Bibliotheken nachladen, allerdings steht dieses Nachladen dann unter der Kontrolle des Programms und _nicht_ unter der Kontrolle des dynamischen Linkers und kann daher von ldd nicht angezeigt werden. Nicht zu vergessen PAM, und libc6, die dlopen (oder einen aehnlichen Mechanismus) fuer NSS (benoetigt fuer Basisfunktionen wie getpwnam()) oder iconv() (/usr/lib/gconv/*) benutzt. Richtig. Allgemein kann man sagen, das man beim chroot()en von Programm, die nicht genau sagen, was sie wann so benötigen, eben nur auf Trial'n'Error zurückgreifen kann, wenn man den Code nicht lesen und verstehen kann. Die Ausgabe von ldd gibt einem da schon einen guten Ansatzpunkt und viele der mir bekannten Scripte zum chroot()-Bauen greifen auch darauf zurück. S° -- 142 Reasons, Why You Can't Find Your System Administrator 125. they're busy testing new ideas for the BOFH Of The Year Award. -- Haeufig gestellte Fragen und Antworten (FAQ): http://www.de.debian.org/debian-user-german-FAQ/ Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED] mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)