Ich habe mir ein Script gemacht, dass eine Webseite mit einem Browser (zB Netscape) startet. Rufe ich das Script als User in einer Konsole unter X auf, wird die Webseite aufgerufen. Lasse ich das Script per cronjob des users aufrufen, wobei der User unter X eingeloggt ist, wird die Webseite nicht aufgerufen, allerdings funktioniert eine zusätzliche Kontrollausgabe in eine Textdatei, d.h. der Cronjob funktioniert. Albert
Moin, From: "Al Bogner" Sunday, June 09, 2002 12:24 PM
Ich habe mir ein Script gemacht, dass eine Webseite mit einem Browser (zB Netscape) startet. Rufe ich das Script als User in einer Konsole unter X auf, wird die Webseite aufgerufen. Lasse ich das Script per cronjob des users aufrufen, wobei der User unter X eingeloggt ist, wird die Webseite nicht aufgerufen, allerdings funktioniert eine zusätzliche Kontrollausgabe in eine Textdatei, d.h. der Cronjob funktioniert.
weiß auch nicht sicher woran das liegt, aber ich hätte mal eine Idee: der Cron-Job weiß ja nicht, wohin er das Bild schicken soll. Du mußt bestimmt noch die Display-Variable setzten. Oder habe ich Dich falsch verstanden und der Browser wird aufgerufen, aber die Seite wird nicht gefunden? Gruß Thilo
Hallo Albert, * On Sun, Jun 09, 2002 at 12:24 PM (+0200), Al Bogner wrote:
Ich habe mir ein Script gemacht, dass eine Webseite mit einem Browser (zB Netscape) startet. Rufe ich das Script als User in einer Konsole unter X auf, wird die Webseite aufgerufen.
In dem Moment ist wohl in der Shell, von der aus Du das Skript auf- rufst, die DISPLAY-Umgebungsvariable gesetzt.
Lasse ich das Script per cronjob des users aufrufen, wobei der User unter X eingeloggt ist, wird die Webseite nicht aufgerufen, allerdings funktioniert eine zusätzliche Kontrollausgabe in eine Textdatei, d.h. der Cronjob funktioniert.
Cron kennt nicht Deine Userumgebung, weiß also auch nichts davon, dass Du z.B. aktuell eine offenes "xterm" in einem (lokalen oder entfernten) X-Server laufen hast. D.h. du solltest Cron z.B. nicht direkt den Browser, sondern ein Skript starten lassen, in dem Du dann die DISPLAY-Variable z.B. setzen kannst. Sollte noch eine weitere "Umgebung" benötigt werden, z.B. für Plugins oder ähnliches, kannst Du das natürlich auch entsprechend im Start- Skript setzen. Aber generell ist eben "cron" nicht an ein Terminal bzw. an eine Umgebung gebunden. D.h. ohne etwas zu setzen, kann "cron" gar nicht wissen, welchen X-Server die gestarteten Prozesse benutzen sollten. Gruß, Steffen
On Sonntag, 9. Juni 2002 13:06 Steffen Moser wrote:
Cron kennt nicht Deine Userumgebung, weiß also auch nichts davon, dass Du z.B. aktuell eine offenes "xterm" in einem (lokalen oder entfernten) X-Server laufen hast. D.h. du solltest Cron z.B. nicht direkt den Browser, sondern ein Skript starten lassen, in dem Du dann die DISPLAY-Variable z.B. setzen kannst.
Danke, wie setze ich nun die Display-Variable? Das Script sieht so aus: #!/bin/bash /usr/X11R6/bin/mozilla http://www.technik.tk Wäre es auch denkbar, das Script auszuführen, ohne, dass der User eingeloggt ist bzw. X noch nicht gestartet ist? Albert PS: Sorry, wegen dem PM. Die Suse-ML sind die einzigen ML bei denen ich immer das Reply umstellen muss.
On Sunday 09 June 2002 13:49, Al Bogner wrote:
Danke, wie setze ich nun die Display-Variable?
Das Script sieht so aus: #!/bin/bash
export DISPLAY=:0.0
/usr/X11R6/bin/mozilla http://www.technik.tk
Wäre es auch denkbar, das Script auszuführen, ohne, dass der User eingeloggt ist bzw. X noch nicht gestartet ist?
Was macht das dann noch für Sinn? Wer soll die Webseite lesen, wenn keiner eingeloggt ist? Was willst Du überhaupt mit dem Cron-Job machen? Heiner -- heiner at kflog dot org GnuPG - Key: E05AEAFC Fingerprint: 257A DFBF 4977 4585 77A0 3509 973B 92AA E05A EAFC
Am Sonntag, 9. Juni 2002 12:24 schrieb Al Bogner:
Ich habe mir ein Script gemacht, dass eine Webseite mit einem Browser (zB Netscape) startet. Rufe ich das Script als User in einer Konsole unter X auf, wird die Webseite aufgerufen. Lasse ich das Script per cronjob des users aufrufen, wobei der User unter X eingeloggt ist, wird die Webseite nicht aufgerufen, allerdings funktioniert eine zusätzliche Kontrollausgabe in eine Textdatei, d.h. der Cronjob funktioniert.
Reicht nicht evtl. wget aus? Dann hast Du das Theater mit der X-Umgebung nicht. Was soll das denn werden? Page-Impressions hochjagen? -- Frank Zündorff
* Al Bogner schrieb am 09.Jun.2002:
Ich habe mir ein Script gemacht, dass eine Webseite mit einem Browser (zB Netscape) startet. Rufe ich das Script als User in einer Konsole unter X auf, wird die Webseite aufgerufen. Lasse ich das Script per cronjob des users aufrufen, wobei der User unter X eingeloggt ist, wird die Webseite nicht aufgerufen, allerdings funktioniert eine zusätzliche Kontrollausgabe in eine Textdatei, d.h. der Cronjob funktioniert.
Sowas sollte man nicht mit cron machen. cron läuft auch, wenn keiner eingeloggt ist und X nicht hochgefahren ist. Oder es sind zwei, oder nochmehr X-Server hochgefahren, verschiedene User eingeloggt. Wo soll cron was starten? Bernd -- Was ist quoten? Quoten ist das Zitieren aus einer mail, der man antwortet. Und wie macht man es richtig? Zitate werden mit "> " gekennzeichnet. Nicht mehr als nötig zitieren. Vor den Abschnitten das Zitat, auf das man sich bezieht, mit einer Zeile Abstand oben und unten. |Zufallssignatur 12
participants (6)
-
Al Bogner
-
B.Brodesser@t-online.de
-
Frank Zündorff
-
Heiner Lamprecht
-
Steffen Moser
-
Thilo A. Coblenzer