Cronjob via User Scripts


Maverick_GERMANY
Go to solution Solved by hawihoney,

Recommended Posts

Ich hab vergeblich nach deutschsprachigen Anleitungen bezüglich Cron unter Unraid bzw. nach einer Lösung meines Problems. 
 

Mir wurde bei reddit gesagt das ich via Cronjob und dem wget Befehl Daten aus dem Internet speichern kann. Nur versteh ich das dank Sprachbarriere nicht. 
 

Ich möchte jeden Abend um 23:59 Uhr ein Bild von einer Webcam auf meinem Unraid abspeichern. Dazu habe ich einen Share Namens Sperrmauer angelegt. 
Die Uhrzeit der Routine habe ich unter Custom wie folgt eingetragen: 59 23 * * * (Das konnte ich aus einer Anleitung ableiten) 
 

unter Edit Script steht in der ersten Zeile wohl Standartmässig:

 

1 #!/bin/bash

 

Was muss ich nun eintragen damit er besagtes Bild der Webcam mit dem Datum vom jeweiligen Tag unter dem Share Sperrmauer ablegt? 

Link to comment
  • Solution
2 hours ago, Maverick_GERMANY said:

Was muss ich nun eintragen damit er besagtes Bild der Webcam mit dem Datum vom jeweiligen Tag unter dem Share Sperrmauer ablegt?

 

In etwa so. Da Du aber keine weitergehenden Details genannt hast, müsstest Du die Quelle, das Ziel und die Dateierweiterung selbst ändern:

 

#!/bin/bash
#arrayStarted=true
#backgroundOnly=true
#clearLog=true
#noParity=true

# Woher? (Beispiel)
sperrmauer_url="https://xxxxxxxx"

# Wohin? (Beispiel)
sperrmauer_dir="/mnt/user/Sperrmauer"

today=$(date +"%Y%m%d")

wget -O "$sperrmauer_dir/$today.jpg" "$sperrmauer_url"

 

Edited by hawihoney
  • Thanks 1
Link to comment
3 hours ago, Maverick_GERMANY said:

Funktioniert auch ohne # einwandfrei

 

Dann werden die Befehle aber nicht ausgeführt, sondern werden wahrscheinlich Fehler generieren (z.B. Command not found). Sie sorgen u.a. dafür, dass z.B. nicht während eines Parity Checks etc. ausgeführt wird, etc.:

 

Quote

How to implement these variables:  Immediately after the interpreter line (eg: immediately after the #!/bin/bash  *) line, add these lines if you choose:

#description=this is the description of the script

#foregroundOnly=true

#backgroundOnly=true

#arrayStarted=true

 

Schau Dir die Bedeutung der einzelnen Befehle in der Plugin Ankündigung an und entscheide selbst:

 

 

Edited by hawihoney
Link to comment
3 hours ago, hawihoney said:

Schau Dir die Bedeutung der einzelnen Befehle in der Plugin Ankündigung an und entscheide selbst:

Werde ich mir mal ansehen - Danke dafür!

 

Kurze Frage...ich habe ja das Ausführen dieses Script wie folgt definiert: 59 23 * * *

 

Die Bilder werden aber täglich um 23:08 gespeichert - was jetzt kein Weltuntergang ist, aber halt nicht das was ich eingestellt habe.

Die Systemzeit von Unraid ist richtig, das habe ich bereits geprüft.

Link to comment

Wenn ich via Windows Explorer auf den Share zugreife, in dem die gespeicherten Bilder liegen, steht unter Änderungsdatum immer das jeweilige Datum und 23:08

 

Gehe ich auf die Eigenschaften eines Bildes steht dort Erstellt: 23:08

letzte Änderung 23:59 🤷🏻‍♂️
 

der original Zeitstempel des Bildes / im Bild steht auf 23:13 

 

sehr seltsam…aber wie gesagt kein Drama. Hauptsache ich bekomm das Bild mit einer Version nach 23 Uhr 😄

Link to comment

@hawihoney habe deinen Rat befolgt und eine neuen CronJob angelegt "Test" für 59 09 * * *

mit diesem Eintrag:

 

#!/bin/bash
#arrayStarted=true
#backgroundOnly=true
#clearLog=true
#noParity=true
sperrmauer_url="https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg"
sperrmauer_dir="/mnt/user/Sperrmauer"
today=$(date +"%Y%m%d")
wget -O "$sperrmauer_dir/$today.jpg" "$sperrmauer_url"

 

und auch dieser erstellt die Bild Dateien mit der Uhrzeit 09:08

 

Unbenannt.jpg.16f6942177a32311646f0173b2671f5d.jpg

 

Das kann aber nur ein fehler sein. Da ich den besagten Test CronJob um 09:30 angelegt habe. Die Datei wird bestimmt um xx:59 erstellt,

warum da aber xx:08 steht entzieht sich mir.

 

Link to comment
3 hours ago, Maverick_GERMANY said:

Das kann aber nur ein fehler sein.

 

Ich habe im Abstand von einigen Minuten folgende Befehle abgesetzt. In beiden Fällen erhielt ich eine um 60 Minuten versetzte Uhrzeit bei der Zieldatei. Das bedeutet in meinen Augen, dass das der Datumsstempel der Quelldatei ist. Ich denke das Problem liegt bei der Quelle. Meine Vermutung: Die erzeugen jede Stunde zur 8. Minute ein Bild und unter dem Erstellungszeitpunkt wird es verteilt. Das passt auch zu Deinen 09:08 oben:

 

root@Tower:~# cd /tmp/
root@Tower:/tmp# date
Thu Nov 17 13:14:00 CET 2022
root@Tower:/tmp# wget https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg
--2022-11-17 13:14:05--  https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg
Resolving pss.wsv.de (pss.wsv.de)... 141.17.30.41
Connecting to pss.wsv.de (pss.wsv.de)|141.17.30.41|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 387194 (378K) [image/jpeg]
Saving to: ‘current.jpg.1’

current.jpg.1                                   100%[====================================================================================================>] 378.12K  --.-KB/s    in 0.06s

2022-11-17 13:14:05 (6.13 MB/s) - ‘current.jpg.1’ saved [387194/387194]

root@Tower:/tmp# ls -la current*
-rw-rw-rw- 1 root root 402888 Nov 17 12:08 current.jpg
-rw-rw-rw- 1 root root 387194 Nov 17 13:08 current.jpg.1

 

Edited by hawihoney
  • Like 1
Link to comment
1 hour ago, Maverick_GERMANY said:

Das ist echt Mysteriös, denn der Zeitstempel auf dem Bild zeigt immer an xx:13

 

Ist halt so. Die Bilddateien werden bei denen immer um xx:08 erstellt. Offensichtlich geht deren Kamera-Uhr 5 Minuten vor. Oder deren eigener Cron-Jon 5 Minuten nach. Musst Du mit dem bereitstellenden Unternehmen klären.

 

Edited by hawihoney
Link to comment
3 hours ago, hawihoney said:

Musst Du mit dem bereitstellenden Unternehmen klären

Ach Quatsch...ist schon okay so.

 

Ich brauche die Bilder nur zur Kontrolle für mich. Bin Systemadmin der dort verbauten Beleuchtung und ab und an erhalte ich eine Nachricht, das die Beleuchtung nicht ging, so hab ich eine Kontrolle ob das tatsächlich der Fall war und seit wann der Ausfall besteht. Nicht wundern, derzeit geht die Beleuchtung nicht, wegen der Energiesparverordnung oder wie die das in Berlin gerade nennen. Die Beleuchtung verbraucht am Tag ca 4€ an Strom....

edersee-staumauer-mit-abendlicher-beleuchtung.jpg.e4cbebfdb31ac6af74ad1eec7d0a34e5.jpg

Link to comment
  • 5 months later...

Servus Community vielleicht hat jemand eine Idee warum ich seit gestern keine Bilder mehr abrufen kann?

 

das ist mien Cronjob der bis einschliesslich 19.04. funktioniert hat

 

arrayStarted=true
backgroundOnly=true
clearLog=true
noParity=true
sperrmauer_url="https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg"
sperrmauer_dir="/mnt/user/Sperrmauer"
today=$(date +"%Y%m%d")
wget -O "$sperrmauer_dir/$today.jpg" "$sperrmauer_url" 

 

Nun erhalte ich folgende Fehlermeldung wenn ich den Script auführe:

 

Script location: /tmp/user.scripts/tmpScripts/Sperrmauer/script
Note that closing this window will abort the execution of this script
--2023-04-21 09:36:01-- https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg
Resolving pss.wsv.de (pss.wsv.de)... failed: Name or service not known.
wget: unable to resolve host address 'pss.wsv.de'

 

Wenn ich aber den Link über den browser öffne, dann wird mir das Bild angezeigt.

 

Was stimmt denn da plötzlich nicht mehr? Wäre für eure Hilfe echt dankbar

Link to comment
5 hours ago, Maverick_GERMANY said:

Nun erhalte ich folgende Fehlermeldung wenn ich den Script auführe:

 

1.) Das kann nicht das ganze Skript sein. Es fehlt der Hash Bang in der ersten Zeile. Es fehlen Hashes vor den Skriptanweisungen (z.B. #arrayStarted). Es fehlt die Leerzeile nach den Anweisungen (hinter noParity).

 

2.) Was steht im Script Log?

 

  • Like 1
Link to comment
#!/bin/bash
arrayStarted=true
backgroundOnly=true
clearLog=true
noParity=true
sperrmauer_url="https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg"
sperrmauer_dir="/mnt/user/Sperrmauer"
today=$(date +"%Y%m%d")
wget -O "$sperrmauer_dir/$today.jpg" "$sperrmauer_url" 

 

Genauso sieht mein Script aus und der hat so auch funktioniert, was die Bilder bezeugen - aber ich sehe gerade auch das du recht hast,

im Post vom 17 November hatte ich die # noch davor. Bedeutet das aber nicht, das diese Befehle dann deaktiviert werden?

 

#!/bin/bash
#arrayStarted=true
#backgroundOnly=true
#clearLog=true
#noParity=true
sperrmauer_url="https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg"
sperrmauer_dir="/mnt/user/Sperrmauer"
today=$(date +"%Y%m%d")
wget -O "$sperrmauer_dir/$today.jpg" "$sperrmauer_url" 

 

Selbst wenn ich die # davor setze, erscheint beim manuellen Start (Run Script) folgende Fehlermeldung:

 

Script location: /tmp/user.scripts/tmpScripts/Sperrmauer/script
Note that closing this window will abort the execution of this script
--2023-04-21 16:30:07-- https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg
Resolving pss.wsv.de (pss.wsv.de)... failed: Name or service not known.
wget: unable to resolve host address 'pss.wsv.de'

Edited by Maverick_GERMANY
Link to comment

so ich hab jetzt in der FritzBox unter Heimnetz->Netzwerk->Netzwerkeinstellungen->IPv4 Einstellungen->Lokaler DNS Server die IP Adresse der FritzBox eingetragen <-ohne Erfolg!

 

Fehlermeldung weiterhin:

 

Script location: /tmp/user.scripts/tmpScripts/Sperrmauer/script
Note that closing this window will abort the execution of this script
--2023-04-21 19:39:35-- https://pss.wsv.de/wsahmue/WebCam-Edersee-02-Aktuell/current.jpg
Resolving pss.wsv.de (pss.wsv.de)... failed: Name or service not known.
wget: unable to resolve host address 'pss.wsv.de'

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.