PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ipcheck.py findet ipchek.dat nicht



netmaster
29.09.03, 09:04
Hallo.

Ein kleines Problem mit ipchek.py.
Ich habe mir einen CRON-Auftrag erstellt.
Der wird auch abgearbeitet, aber leider fehlerhaft.
Wenn ich ins Verzeichnis von ipcheck gehe und das Teil manuell starte funtzt auch alles.

./ipcheck.py user passwd host

Mache ich das gleiche mit dem absoluten Pfad, dann sagt er mir,
dass er die ipcheck.dat nicht finden kann.

/home/netmaster/Programme/ipchek/ipcheck.py user passwd host

Woran liegt das?
Kann mir das vielleicht einer sagen?

Stanislaus
29.09.03, 10:26
Moin, moin!

Afaik meldet das Teil doch "run once with --makedat" o.ä. Also einfach einmal den Cronjob mit --makedat laufen lassen und anschließend das makedat wieder löschen.
Die ipcheck.dat wird afaik im aktuellen Verzeichnis gesucht/angelegt also nicht zwangsläufig in dem verzeichnis, in dem die ipcheck.py liegt.

btw: Wieso machst Du das ganze als Cron? Wenn Du nach einer Zwangstrennung Deine IP aktualisieren willst schreib den ipcheck ausfruf einfach in /etc/ppp/ip-up, das wird jedesmal ausgeführt, wenn eine neue Verbindung aufgebaut wird.

MarcM
29.09.03, 16:56
Dazu kann ich was schreiben.....

Ich hab die ipcheck.py in der /etc/ppp/ip-up.local bei mir drin. Die ipcheck.py liegt auch in dem Verzeichnis. Und ich hab das dingens auch einmal mit den o.g. Parametern ausgeführt. Er hat auch brav die ipcheck.dat in /etc/ppp angelegt. Trotzdem wollte das dingens nie funktionieren. In der /var/log/messages stand dann immer der o.g. Fehler.

Das Ende vom Lied war, auch ein Aufruf mit Pfad "/etc/ppp/ipcheck.py KONTO USER PASSWD" in der ip-up.local funzte nicht.

Du muß dir ein Script schreiben was vorher in das Verzeichnis wechselt wo die DAT liegt, dann gehts. Scheint noch ein BUG zu sein. Oder Du schreibst einmal in deinen Cron-Job die Option rein, dann erstellt er "irgendwo" die DAT und dann müßte sie beim nächsten Aufruf ohne die Option auch gefunden werden....

Greetz

Marc

Stanislaus
29.09.03, 17:40
Original geschrieben von MarcM
Dazu kann ich was schreiben.....

Ich hab die ipcheck.py in der /etc/ppp/ip-up.local bei mir drin. Die ipcheck.py liegt auch in dem Verzeichnis. Und ich hab das dingens auch einmal mit den o.g. Parametern ausgeführt. Er hat auch brav die ipcheck.dat in /etc/ppp angelegt. Trotzdem wollte das dingens nie funktionieren. In der /var/log/messages stand dann immer der o.g. Fehler.

Das Ende vom Lied war, auch ein Aufruf mit Pfad "/etc/ppp/ipcheck.py KONTO USER PASSWD" in der ip-up.local funzte nicht.

Du muß dir ein Script schreiben was vorher in das Verzeichnis wechselt wo die DAT liegt, dann gehts. Scheint noch ein BUG zu sein. Oder Du schreibst einmal in deinen Cron-Job die Option rein, dann erstellt er "irgendwo" die DAT und dann müßte sie beim nächsten Aufruf ohne die Option auch gefunden werden....

Greetz

Marc
Das Problem hab ich nicht.
Ich habe den vollen ipcheck.py Aufruf in die /etc/ppp/ip-up eingetragen und ein adsl-start hinterhergeschoben. Das --makedat gelöscht, adsl-stop, adsl-start und es funktioniert.

MarcM
29.09.03, 18:06
und wo liegt die *.dat jetzt ?? :D

In meinem Vorschlag liegt sie im ipcheck.py Verzeichnis. Bin halt was sowas angeht nen Orndungsheini :D . Hab aber nicht gesagt daß es anders nich geht.

greetz

Marc

Stanislaus
29.09.03, 19:22
Original geschrieben von MarcM
und wo liegt die *.dat jetzt ?? :D

Direkt in /

netmaster
29.09.03, 19:31
Danke für eure Antworten, aber jetzt habe ich leider ein anderes Problem.
ipcheck.py funtzt garnicht mehr.
Ich glaube das liegt an Python.

http://www.linuxforen.de/forums/showthread.php?s=&threadid=101177

netmaster
30.09.03, 08:39
So Problem gelöst.
Mein letztes Problem lag an der Python-Version 2.3.x
Habe jetzt wieder 2.2.2-82 drauf, damit funtzt es wieder.

Damit die IP automatisch aktualisiert wird, fand ich die Version mit der ip-up ganz gut.
Hab am Anfang der Datei noch folgendes eingefügt:

pwd > /tmp/test
cd /home/netmaster/Programme/ipcheck
./ipcheck netzmaster keinkein netzmaster.dyndns.org
cd `cat /tmp/test`

Danke an alle für eure Hilfe.