Veel gestelde vragen en handige tips

Is CronniX verkrijgbaar als open source?

Ja. Met ingang van versie 1.5 is CronniX verkrijgbaar als open source. Ik krijg het misschien niet altijd voor elkaar om de meest recente versie onmiddellijk als open source beschikbaar te stellen, maar ik doe m'n best.

Wat heb ik nodig om cron te starten?

Cron is een systeemproces dat al op de achtergrond draait. Alles wat je moet doen, is het bewaren van je opdrachten in een crontab. Cron controleert deze bestanden elke minuut en voert de betreffende taken dan uit.


Hoe weet ik of mijn crontab goed werkt?

Het kan lastig zijn om een crontab te maken, omdat het regelmatig voor komt dat een script het prima doet vanaf de opdrachtregel (prompt), maar niet functioneert in cron. Dit is te wijten aan het verschil in 'runtime environment'. Het is dus erg handig dat cron zijn resultaten via e-mail naar de crontabgebruiker zend.

Het volgende heeft betrekking op OSX 10.1 en eerder. Zie hier onder voor Jaguar-instructies.

Om lokale post te ontvangen moet je een speciale mail account maken in Mail.app. De volgende tip komt van www.macosxhints.com:

"An easier way"
Geschreven door: frjo op din 8 mei om 11:05 am.

Je hoeft sendmail niet te activeren om lokale post te bezorgen, zodat dit eigenlijk alles is wat je moet doen om lokale post (en dus cron's post) te krijgen. Nu je toch bezig bent, kun je ook root's post naar je eigen account laten doorsturen. Maak een bestand ".forward", zet hier je korte gebruikersnaam in en plaats het bestand in root's thuismap "/private/var/root".

Het volgende heeft betrekking op OSX 10.2 (Jaguar).

Het 'Unix mail'-accounttype is niet meer aanwezig in Mail.app's accountopties in Jaguar.

Hoe kunnen we weer lokale post ontvangen:

Test: Let wel:

Op deze manier post lezen werkt. En het blijft werken tenzij je post verwijdert uit je lokale inbox. Als je dat doet, vervangt Mail de link naar /var/mail/ door een normaal mbox-bestand. Je moet de link weer herstellen om je lokale post weer te kunnen lezen.

Bestaat er een crontaak die een script lanceert die controleert of 'mbox' nog steeds een link is of weer opnieuw gelinkt moet worden... :-)?


Hoe weet ik of een taak op de juiste tijd uitgevoerd wordt?

Of: je maakt een mailaccount zoals hier boven beschreven en laat je script/programma een paar regels schrijven. Of: je test het door het laten veranderen van een testbestand door je script: "touch /tmp/crontest". Je kunt nadien naar het datum/tijdstempel kijken om te controleren of de taak op de juiste tijd werd uitgevoerd.

Een snelle test kun je doen door een programma als TextEdit naar het hoofdvenster van CronniX te slepen. Zet de starttijd een minuut vooruit en wacht tot TextEdit weer te voorschijn komt.


M'n crontab is naar z'n malle moer en CronniX kan 'em niet meer lezen. Wat te doen?

Gebruik het volgende commando in de terminal om je crontab te bekijken:
crontab -l
(Dat is een kleine letter el, niet het getal een (1))

Als je je crontab wilt verwijderen om weer bij het begin te beginnen:
crontab -r

Als je je crontab in een bestand wilt bewaren dat je met een tekstverwerker kunt bewerken:
crontab -l > ~/my_crontab
Via deze 'pijplijn' komt je crontab in het bestand 'my_crontab' in je thuismap

Nadat je je tekstverwerker hebt losgelaten op 'my_crontab' (gebruik 'Platte tekst' als je TextEdit gebruikt, RTF-formaat is nog nooit cron's beste vriend geweest), kun je je crontab weer installeren:
crontab ~/my_crontab

Dit was cron in een notendop. Ik hoop dat al deze kennis CronniX niet overbodig heeft gemaakt.


Home