Conseil d'administration http://linux.subogero.com/894/cron-on-cygwin/
Démarrez le cygwin-setup et ajoutez le paquet "cron" de la catégorie "Admin".
Nous allons exécuter cron en tant que service par l'utilisateur SYSTEM. Le pauvre SYSTEM a donc besoin d'un répertoire personnel et d'un shell. Le fichier "/etc/passwd" va les définir.
$ mkdir /root
$ chown SYSTEM:root /root
$ mcedit /etc/passwd
SYSTEM:*:......:/root:/bin/bash
Le début du service :
$ cron-config
Do you want to remove or reinstall it (yes/no) yes
Do you want to install the cron daemon as a service? (yes/no) yes
Enter the value of CYGWIN for the daemon: [ ] ntsec
Do you want the cron daemon to run as yourself? (yes/no) no
Do you want to start the cron daemon as a service now? (yes/no) yes
Utilisateurs locaux peuvent maintenant définir leurs tâches planifiées comme ceci (crontab lancera votre éditeur préféré) :
$ crontab -e # edit your user specific cron-table HOME=/home/foo
PATH=/usr/local/bin:/usr/bin:/bin:$PATH
# testing - one per line
* * * * * touch ~/cron
@reboot ~/foo.sh
45 11 * * * ~/lunch_message_to_mates.sh
Utilisateurs du domaine : il ne fonctionne pas. Le pauvre cron est incapable d'exécuter des tâches planifiées au nom des utilisateurs du domaine sur la machine. Mais il y a un autre moyen : cron exécute aussi des choses trouvées dans la table cron du niveau système dans "/etc/crontab". Insérez-y donc votre suffixe, afin que le SYSTÈME le fasse pour son propre compte :
$ touch /etc/crontab
$ chown SYSTEM /etc/crontab
$ mcedit /etc/crontab
HOME=/root
PATH=/usr/local/bin:/usr/bin:/bin:$PATH
* * * * * SYSTEM touch ~/cron
@reboot SYSTEM rm -f /tmp/.ssh*
Enfin, quelques mots sur les entrées crontab. Il s'agit soit de paramètres d'environnement, soit de commandes programmées. Comme nous l'avons vu plus haut, sur Cygwin, il est préférable de créer un PATH utilisable. Le répertoire de base et l'interpréteur de commandes sont normalement pris dans "/etc/passwd".
Pour ce qui est des colonnes de commandes programmées, voir la page de manuel.
Si certaines entrées crontab ne s'exécutent pas, le meilleur outil de diagnostic est le suivant :
$ cronevents