Fehlermeldungen bei Aufruf von convert oder dvipng

P

pospiech

Doppel-As
convert und dvipng sind typische Programme die in der Konsole aus Webservern heraus aufgerufen werden. Ebenso in meinem Fall. Der Nutzer sollte daher der Webserver sein.

bei convert bekomme ich folgendes:
/usr/bin/convert: error while loading shared libraries: libMagick.so.10: failed to map segment from shared object: Cannot allocate memory

und bei dvipng
dvipng: error while loading shared libraries: libgd.so.2: failed to map segment from shared object: Cannot allocate memory

Wenn ich als normaler Benutzer oder root diese Programme aufrufe dann bekomme ich keinen Fehler.

Matthias
 
Das liegt daran das der benutzer nicht Mitglied in den entsprechenden Gruppen ist (was durchaus Sinn macht weil das ein Sicherheitsrisiko bedeutet).
Füg ihn einfach zu video und audio hinzu und dann sollte das gehen.

Es kann aber auch sein das ich hier falsch liege, Cannot allocate memory ist ja eigentlich ein Zeichen dafür das nicht genügend Speicher vorhanden ist.
Guck mal in welcher Gruppe dein normaler User ist, wenn der in wheel oder etwas root ist, kann er auch speicher adressieren der an andere Stellen gebraucht wird solange das nicht in pam deaktiviert wurde.

Letze Möglichkeit: Du benutzt PHP und hast PHP nur 30 MB Speicher in der standard Konfiguration zugewiesen. Dafür musst du deine php.ini bearbeiten und mehr Speicher zuweisen (c.a. 128 MB sollten genügen, 64 könnte hart werden).

In jedem Fall macht es aber dein System unsicher. Solche spielereien sollte man nur über einen VPN-Tunnel machen, weil das schnell ins Auge gehen kann. Das der normale Webbenutzer keine solchen Programme aufrufen kann hat da schon seine Gründe.

Im zweifelsfall solltest du mal entsprechende sudo Rechte setzen.
Da werden jetzt vielleicht einige Leute sagen "das reist noch mehr Lücken auf", sofern du es aber nur auf die benötigten Programme beschränkst sehen ist es nicht so. Es ist sicherer als dem webbenutzer in seiner gänze höhere Rechte zu geben.
Probleme gibt es nur wenn die Programme experimental sind: Deswegen nur die Stable Versionen benutzen! Sollte bei einem Server aber immer der Fall sein.
 
Der Fehler lag an einem Aufruf von 'ulimit'

Der Aufruf hat die Form:
ulimit -c 0 -d unlimited -f unlimited -n 1024 -s 8 -t unlimited -v 1024

ulimit möchte ich eigentlich benutzen um den maximalen möglichen Speicher, Festplatten und Zeitverbrauch einzuschränken. Welche der Optionen jetzt für den Fehler verantwortlich sind ist mir allerdings unklar.

Matthias
 
Das kannst du aber auch durch google und die manpages selber rausfinden, dafür brauchst du dieses Forum nicht. man ulimit und das Prob ist gelößt möchte ich mal behaupten. Zumal du nur 3 Werte festlegst, da kannste auch ausprobieren.
 

Ähnliche Themen

g++ Shared Libraries

Ubuntu findet Library nicht...

NagiosGrapher 1.7.1 funktioniert nicht

XFCE freezes at startup

Ubuntu X / dbus problem

Zurück
Oben