"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

cron Problem

motznmocha joe 20.11.2005 - 11:20 1419 19
Posts

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Also ich bastle jetzt schon ziemlich lange und komme einfach ned weiter. Im Softwareforum (war eigentlich eine ganz andere Frage ursprünglich) habe ich gestern schon gefragt aber da kann mir keiner weiterhelfen:
Was mach ich:
1. crontab -e (da kommt ein fenster wo die cronjobs drinnestehen)
ganz oben steht:
SHELL=/bin/sh
PATH=/usr/bin:/usr/sbin:/sbin:/bin:/usr/lib/news/bin (müsste so passen da der Befehl skype überall geht)
MAILTO=root
2.so dann lösch ich den rest der drinnensteht, nur das oben beschriebene lass ich drinnen.
3. * * * * * skype (damit müsste er eigentlich jede Minute Skype (ist nur ein Test)starten)
4. Speichern (ESC dann :w)
5. Sehen das nyx geht (*GRRRR*)


MFG Joe

NyoMic

xepera-xeper-xeperu
Avatar
Registered: Feb 2001
Location: Stahlstadt
Posts: 2619
welchen cron daemon hast laufen? Manchmal musst naemlich im irgendwo eine Datei extra anlegen und mit "cron /pfad/zur/datei/" extra angeben welche datei er nutzen soll.
sollt zwar eigentlich nicht notwendig sein, aber ansonsten mach mal ein restart des cron daemons

that

Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
"skype" ist nicht zufällig ein GUI-Programm, und du erwartest dass du ohne DISPLAY Variable etwas siehst? Was steht denn im Log?

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Zitat von that
"skype" ist nicht zufällig ein GUI-Programm, und du erwartest dass du ohne DISPLAY Variable etwas siehst? Was steht denn im Log?

Doch erwart ich schon!! Ich geb ja in der Konsole auch nyx anderes ein als skype und des startet.... was meinst mit "DISPLAY Variable"?
edit:im log steht nyx was auf einen cron hindeutet...

MFG Joe
Bearbeitet von motznmocha joe am 20.11.2005, 17:53

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Zitat von NyoMic
welchen cron daemon hast laufen? Manchmal musst naemlich im irgendwo eine Datei extra anlegen und mit "cron /pfad/zur/datei/" extra angeben welche datei er nutzen soll.
sollt zwar eigentlich nicht notwendig sein, aber ansonsten mach mal ein restart des cron daemons

Version des Crons: 3.0.1-920.

Wie soll ich den restarten? genügt ein Reboot auch ?

edit: Ich habs auch schon mit Vcron probiert (der müsste es eigentlich richtig machen) aber noch immer kein Erfolg. die Handhabung erscheint mir einfach aber trotzdem....
Bearbeitet von motznmocha joe am 20.11.2005, 17:27

moidaschl

Vollzeit-Hackler
Avatar
Registered: Aug 2002
Location: 1210, ABK-D/L
Posts: 4029
Zitat von motznmocha joe
Doch erwart ich schon!! Ich geb ja in der Konsole auch nyx anderes ein als skype und des startet.... was meinst mit "DISPLAY Variable"?
edit:im log steht nyx was auf einen cron hindeutet...

MFG Joe
rufst du deinen cronjob als root auf?

wenn ja machmal für dich als übung ein terminal auf und gib ein

sudo skype

;)

das meint DAO mit kein display... wenn du als root etwas ausführst muss cron auch wissen auf welches display er das schmeisst.. wenn du aber als root im X bist würde es funktionieren (ist aber nicht anzuraten)

Code:
mn@localhost ~ $ sudo gaim

(gaim:17641): Gdk-CRITICAL **: gdk_display_get_name: assertion `GDK_IS_DISPLAY (display)' failed

** (gaim:17641): WARNING **: cannot open display: unset

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Nein, eigentlich meint that (nicht DAO ;)), dass in dem Shell-Environment, in dem cron seine Jobs startet, $DISPLAY nicht gesetzt ist. Das ist auch auf einem "normalen" TTY nicht der Fall. Wenn allerdings die Umgebungsvariable DISPLAY korrekt in der crontab des Users eingetragen ist, sollte es keine Probleme geben.

Code:
export DISPLAY=":0.0"
in einer der ersten Zeilen der crontab sollte eigentlich genuegen.

Ubrigens ist es hochgradig sinnlos, ein Kommando, das keine Art von batch-processing durchfuehrt (und sich nicht selbst nach einer Zeit beendet), via cron zu starten.

moidaschl

Vollzeit-Hackler
Avatar
Registered: Aug 2002
Location: 1210, ABK-D/L
Posts: 4029
Zitat von COLOSSUS
Nein, eigentlich meint that (nicht DAO ;)), dass in dem Shell-Environment, in dem cron seine Jobs startet, $DISPLAY nicht gesetzt ist. Das ist auch auf einem "normalen" TTY nicht der Fall. Wenn allerdings die Umgebungsvariable DISPLAY korrekt in der crontab des Users eingetragen ist, sollte es keine Probleme geben.

Code:
export DISPLAY=":0.0"
in einer der ersten Zeilen der crontab sollte eigentlich genuegen.

Ubrigens ist es hochgradig sinnlos, ein Kommando, das keine Art von batch-processing durchfuehrt (und sich nicht selbst nach einer Zeit beendet), via cron zu starten.

das hab ich eigentlich eh gemeint - leider ungeschickt formuliert...

----
funktioniert es jetzt?

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Soll ich jetzt eigentlich die crontab als normaler benuter oder als SU erstellen und bearbeiten?

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Das kommt drauf an, in welchem Nutzerkontext du die jeweiligen cronjobs ausgefuehrt haben moechtest.

Eine Vertrautmachung deinerseits mit den grundliegenden konzepten eines UNIX-Systems koennte keinesfalls schaden ;)

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Das Problem ist das ich keine Zeit zum einarbeiten mehr habe....


seit neuersten lasst sich die crontab auch nicht mehr mir :W speichern... ich glaub ich hab da schon zuviel vernichtet^^
Werd ihn morgen mal neu aufsetzten.

MFG Joe

DAO

Si vis pacem, para bellum
Avatar
Registered: Mar 2001
Location: Austria
Posts: 4964
korrekt ich habs nit geschriebn :eek:
hab mich scho gwundert das ich da was getan haben soll ohne den thread bis jetzt zu kennen.

man sudo und gut ists ;)

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
es schaut gut aus ... das mit skype funzt...

so jetzt zu dem was ich eigentlich machen wollte.

eine .sh datei über cron aufzurufen.... Das Problem ist das meine .sh datei sich ned ausführen lässt... Folgendes steht drinnen( in der .sh Datei):
/opt/lampp/bin/mysqldump -u root SML>/home/Johannes/Test.sql
aber es geht ned... immer wieder das selbe:
Johannes@linux:~> /home/Johannes/backup.sh
/home/Johannes/backup.sh: line 1: 190: command not found

Ich hoffe irgendwer weis da eine Lösung?


MFG Joe

DAO

Si vis pacem, para bellum
Avatar
Registered: Mar 2001
Location: Austria
Posts: 4964
./opt/lampp/bin/mysqldump -u root SML>/home/Johannes/Test.sql

motznmocha joe

Big d00d
Avatar
Registered: Dec 2003
Location: vöcklabruck
Posts: 148
Sry wenn ich euch langsam auf die nerven gehe aber:

linux:/home/Johannes # /home/Johannes/backup.sh
/home/Johannes/backup.sh: line 1: ./opt/lampp/bin/mysqldump: Datei oder Verzeichnis nicht gefunden

MFG Joe
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz