Jump to content


cronjobs (crontabs) ???


gattaccio

Recommended Posts

zou er iemand mij kunnen helpen met wat uitleg over crontabs?

 

ik heb er al even mee zitten prutsen maar kom er niet uit.

 

mijn crontab commando is:

 

crontab -e

 

hier krijg ik dan het vogend te zien in terminal:

 

crontab: cannot change dir to /var/spool/cron/crontabs: No such file or directory[/color]

 

als ik deze directory dan aanmaak en een crontab ingeef in vi bv:

 

* * * * * echo " hello" ( zou elke min moeten opstarten)

 

gebeurd er niets ook niet na het commando crond restart

 

als ik ipv de hierboven opdracht het volgende gebruik

 

* * * * * echo "hello" > /var/etc/hello.txt

 

dan verschijnd de file hello.txt in mijn directory /etc.

 

Mijn vraag is dus het volgende:

 

hoe kan ik de cronjob wel laten werken met echo of zelfs om een script te doen opstarten met crontab. En hoe kan ik ervoor zorgen dat die niet gewist wordt als ik mijn DM hertart?

Link to comment
Share on other sites


Zier ernaar uit dat er iets niet goed geconfigureerd is in OpenPLi voor cron.

 

/var/spool/cron wijst naar /usr/cron en die bestaat niet (foutje in PLi, zal het op de TODO lijst zetten).

 

Code:
mkdir /usr/cronmkdir /usr/cron/crontabs

 

Nu zou het moeten werken en ook een herstart overleven.

 

(alles in /var verdwijnt na reboot)

 

Dat een 'echo' in je script geen effect heeft is normaal (en correct) cron gedrag. Je kunt de output naar een file sturen en die eventueel met "tail -f" volgen.

Link to comment
Share on other sites

In snap het niet. Wat wil je nou met die echo?

 

Code:
while truedo    echo "Hello world"    sleep 1done

 

Zet elke seconde tekst op je terminal. Is dat wat je wil?

 

Link to comment
Share on other sites

Da's good old crontab dus, werkt prima op de dreambox.

 

Zoals ik al heb uitgelegd, "echo" (en alle andere uitvoer) gaat het putje in, dus da's het enige dat niet werkt. Dat is normaal en correct gedrag, want wat moet hij doen met de output als je geen telnet open hebt staan? Of als je er twee open hebt?

 

En je hebt zelf al een methode genoemd om het te kunnen zien: Schrijf een file.

Link to comment
Share on other sites

idd maar als ik een file script scrijf met een commando in doet ie niets. Dit had ik eerst geprobeerd met in mijn script

 

#!/bin.sh

echo "hello"

 

te zetten (script is uitvoerbaar chmod 755,dus hier ligt het ook nietaan)

 

ter info ikgebruikgeen pli maar n a b i l o

zou dit eenreden kunnen zijn.

Link to comment
Share on other sites

Is een bug in het image.

 

Ik heb hem zojuist voor PLi gefixt, dus vanaf morgen werkt het in OpenPLi.

 

Als je een ander image gebruikt, informeer de makers maar dat /var/spool/cron naar /etc/cron moet wijzen en niet naar /usr/cron.

Link to comment
Share on other sites

Als je image niet te veel afwijkt van de standaard, zou het volgende moeten werken vanuit een telnet sessie (bestaande crontab ben je dan wel kwijt):

 

Code:
rm -rf /usr/cronln -s /etc/cron /usr/croncrontab -e

 

Normaal wordt na een "crontab -e" de cron automatisch op de hoogte gesteld van de wijzigingen, maar omdat er nu met de paden geknoeid is kan hij deze eerste keer in de war raken.

 

Om output op te slaan kun je de uitvoer 'omleiden', dus net zogoed als 'echo "hello" > file.log' kun je 'hello.sh > file.log' doen en alle output van hello.sh gaat een bestandje in.

 

Gebruik voor cronjob scripts absolute paden, omdat die in een heel kale omgeving staan. Bijvoorbeeld zo:

 

Code:
/home/root/hello.sh > /var/log/hello.log

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...

Important Information

Lees alvorens je verder gaat onze Terms of Use en Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.