WinFuture-Forum.de: [ERLEDIGT] Ubuntu cron - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Linux
Seite 1 von 1

[ERLEDIGT] Ubuntu cron cron erstellt nur leere datein


#1 Mitglied ist offline   FellFroscH 

  • Gruppe: aktive Mitglieder
  • Beiträge: 30
  • Beigetreten: 12. Dezember 07
  • Reputation: 0

geschrieben 28. Juli 2011 - 13:42

Hallo Forum,

ich such mir jetzt schon seit ein paar Tagen nen Ast nach einer Lösung, aber ich bin wohl der einzige der keinen funktionsfähigen CronJob hinbekommt.

Ich habe mir ein Shell-Script erstellt das mir Informationen in eine Datei schreiben soll und zum Schluss diese per email verschickt.
Also manuell funktioniert das auch super, aber wenn es automatisch über cron gestartet wird versendet er nur leere Dateien...

Habe eine Cron-Tabelle eingerichtet:
#-----------------------------------------------------------------
# Shell variable for cron
SHELL=/bin/bash
# PATH variable for cron
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/usr/bin/X11
#M   S     T M W   Befehl
#-----------------------------------------------------------------
*/15 *     * * *   /home/username/dateiname.sh
#ende



Hier mein Script:
#!/bin/sh
aticonfig --odgc --adapter=all > gpu.txt
aticonfig --odgt --adapter=all > temp.txt
sendEmail -f absender -t empfänger -u "Info" -m "mail inhalt" -a /home/user/temp.txt -a /home/user/gpu.txt
exit



wie gesagt manuell funktioniert alles bestens, aber nicht über cron, dann werden nur leere Dateien verschickt.

Erkennt jemand meinen Fehler?
Danke

Dieser Beitrag wurde von FellFroscH bearbeitet: 28. Juli 2011 - 15:50

0

Anzeige



#2 Mitglied ist offline   Mr. Floppy 

  • Gruppe: VIP Mitglieder
  • Beiträge: 4.115
  • Beigetreten: 01. Juli 08
  • Reputation: 271
  • Geschlecht:Männlich

geschrieben 28. Juli 2011 - 13:54

Ich glaube es liegt am Arbeitsverzeichnis:
aticonfig --odgc --adapter=all > gpu.txt
aticonfig --odgt --adapter=all > temp.txt

Die beiden Dateien werden u.U. nicht nach /home/user/ geschrieben, wo das Mailprogramm sie aber erwartet. Der Cronjob wird z.B. unter einem anderen Benutzer ausgeführt. Versuche es mit einem absoluten Pfad (z.B. /tmp/gpu.txt) und passe die Mailzeile entsprechend an. Schreib-/Leserechte sollten auch vorhanden sein.
0

#3 Mitglied ist offline   FellFroscH 

  • Gruppe: aktive Mitglieder
  • Beiträge: 30
  • Beigetreten: 12. Dezember 07
  • Reputation: 0

geschrieben 28. Juli 2011 - 14:21

alle pfade auf /tmp/ geändert, gleiches resultat.

EDIT
/temp/ --> /tmp/

Dieser Beitrag wurde von FellFroscH bearbeitet: 28. Juli 2011 - 14:43

0

#4 Mitglied ist offline   Mr. Floppy 

  • Gruppe: VIP Mitglieder
  • Beiträge: 4.115
  • Beigetreten: 01. Juli 08
  • Reputation: 271
  • Geschlecht:Männlich

geschrieben 28. Juli 2011 - 14:35

/temp oder /tmp? Werden die Dateien denn überhaupt angelegt? Befindet sich aticonfig im Suchpfad? Was gibt which aticonfig aus? Welche Rechte gelten für aticonfig (bei mir -rwxr-xr-x)?

Dieser Beitrag wurde von Mr. Floppy bearbeitet: 28. Juli 2011 - 14:47

0

#5 Mitglied ist offline   bb83 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.870
  • Beigetreten: 30. August 05
  • Reputation: 24
  • Geschlecht:Männlich

geschrieben 28. Juli 2011 - 15:14

Hallo FellFrosch,

pack die PATH Angabe nochmal mit in dein Script (direkt nach #!/sh welchese ich übrigens auch gegen #!/bin/bash tauschen würde)
Vielleicht findet der wegen fehlender Pfade die aticonfig nicht

Ich kenne aticonfig nicht, aber bist du dir sicher, dass das Tool ohne X laufen kann ? Die meisten Grakatools wollen auch auf dem Xserver gestart werden, und das tut der cron natürlich nicht, es sei denn du gibst im die DISPLAY Variable mit
Und schau mal in /var/log/messages bzw /var/log/daemon , da gibt der Cron immer Rückmeldung...
1

#6 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 28. Juli 2011 - 15:16

Und noch eine Frage hinterher. Wem gehören die Dateien, wenn sie angelegt werden?

Möglicherweise wirft der Aufruf auch irgendwelche Fehlermeldungen, am besten ist du loggst diese in eine Datei. z.B:
*/15 *     * * * /home/username/dateiname.sh 2>&1>> /tmp/log.log

0

#7 Mitglied ist offline   FellFroscH 

  • Gruppe: aktive Mitglieder
  • Beiträge: 30
  • Beigetreten: 12. Dezember 07
  • Reputation: 0

geschrieben 28. Juli 2011 - 15:17

/tmp/ muss das natürlich heißen.

aticonfig befindet sich bei mir unter /usr/bin/aticonfig

habe das script angepasst: /usr/bin/aticonfig --odgc --adapter=all

leider immer noch leere dateien
0

#8 Mitglied ist offline   FellFroscH 

  • Gruppe: aktive Mitglieder
  • Beiträge: 30
  • Beigetreten: 12. Dezember 07
  • Reputation: 0

geschrieben 28. Juli 2011 - 15:33

Beitrag anzeigenZitat (Witi: 28. Juli 2011 - 15:16)

Und noch eine Frage hinterher. Wem gehören die Dateien, wenn sie angelegt werden?

Möglicherweise wirft der Aufruf auch irgendwelche Fehlermeldungen, am besten ist du loggst diese in eine Datei. z.B:
*/15 *     * * * /home/username/dateiname.sh 2>&1>> /tmp/log.log



Die Dateien gehören dem angemeldeten Benutzer

Die Log sagt nur das die email erfolgreich versendet wurde.
0

#9 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 28. Juli 2011 - 15:36

Ich habe zu Hause eine ATI-Karte. Werde es heute Abend mal ausprobieren und melde mich dann wieder. :)
0

#10 Mitglied ist offline   FellFroscH 

  • Gruppe: aktive Mitglieder
  • Beiträge: 30
  • Beigetreten: 12. Dezember 07
  • Reputation: 0

geschrieben 28. Juli 2011 - 15:49

Beitrag anzeigenZitat (bb83: 28. Juli 2011 - 15:14)

Hallo FellFrosch,

pack die PATH Angabe nochmal mit in dein Script (direkt nach #!/sh welchese ich übrigens auch gegen #!/bin/bash tauschen würde)
Vielleicht findet der wegen fehlender Pfade die aticonfig nicht

Ich kenne aticonfig nicht, aber bist du dir sicher, dass das Tool ohne X laufen kann ? Die meisten Grakatools wollen auch auf dem Xserver gestart werden, und das tut der cron natürlich nicht, es sei denn du gibst im die DISPLAY Variable mit
Und schau mal in /var/log/messages bzw /var/log/daemon , da gibt der Cron immer Rückmeldung...


auf #!/bin/bash geändert
Display=:0 hinzugefügt
PATH im Script hinzugefügt

jetzt bekomme ich KEINE leeren Dateien mehr...

VIELEN DANK an alle!
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0