Seite 1 von 1

Python Interpreter Fehler!

Verfasst: Montag 25. Februar 2008, 09:30
von Benny_88
Hi,

möchte ein Nagios Plugin ausführen, das mit Python geschrieben wurde:

# /usr/local/nagios/libexec/check_cpu
Traceback (most recent call last):
File "/usr/local/nagios/libexec/check_cpu", line 5, in ?
from optparse import OptionParser
ImportError: No module named optparse

Habe in einem anderen Forum gelesen, dass ich ein import optparse machen soll:

# import optparse
import: Unable to connect to X server ().

Gibt aber keinen X-Server, da ich RedHat 9 als Server Edition benutze, wundert mich auch, dass er überhaupt was mit X-Server machen will.

Danke für Eure Hilfe

Gruß Benny

P.S: Python Version: 2.2.2.26

Verfasst: Montag 25. Februar 2008, 09:47
von jens
aus http://docs.python.org/lib/module-optparse.html :
New in version 2.3.
Du hast eine sehr, sehr alte Version: [wiki]Python 2.2 updaten[/wiki]

Verfasst: Montag 25. Februar 2008, 10:45
von BlackJack
Und wenn Du in einer *Shell* ``import`` schreibst, dann wird natürlich das *Programm* ``import`` gestartet, was mit Python überhaupt nichts zu tun hat, sondern zum ImageMagick-Paket gehört und Screenshots macht. Dazu muss es natürlich den X-Server kontaktieren.

Verfasst: Montag 25. Februar 2008, 13:44
von Benny_88
So, habe nun 2.2.5 drauf:

[root@redhat root]# /usr/local/nagios/libexec/check_cpu
-bash: /usr/local/nagios/libexec/check_cpu: /usr/bin/python: bad interpreter: Datei oder Verzeichnis nicht gefunden

Weiß jemand weiter?

EDIT:

Wenn ich ein python davorschreibe, klappt es.

Da ich aber dieses "check_cpu" aus einer anderen Konfigdatei aufrufe, muss ich erstmal gucken, ob das alles so hinhaut, wie es soll.

Denn ohne "python" davor, bringt er mir nen Fehler..

Verfasst: Montag 25. Februar 2008, 13:46
von jens
Meinst du Python 2.5?

Du must wohl einen Link zum Interpreter neu setzten, damit /usr/bin/python auf python2.5 zeigt.

Verfasst: Montag 25. Februar 2008, 13:49
von Benny_88
jens hat geschrieben:Meinst du Python 2.5?

Du must wohl einen Link zum Interpreter neu setzten, damit /usr/bin/python auf python2.5 zeigt.
Ja 2.5

Von wo nach wo muss ich den Link setzen?

Verfasst: Montag 25. Februar 2008, 14:02
von jens
Irgendwas in der Richtung: "ln /usr/bin/python2.5 /usr/bin/python" oder so...

Verfasst: Montag 25. Februar 2008, 14:04
von Benny_88
Geht, dankeschön!

Verfasst: Montag 25. Februar 2008, 19:21
von Leonidas
Sowas würde man ja eher unterhalb von ``/usr/local/``, damit das nicht mit dem Paketmanagement kollidiert.