Difference between revisions of "Cygwin"

From dbawiki
Jump to: navigation, search
(Diagnose problems)
(How to run a crontab in Cygwin on Windows)
Line 1: Line 1:
 
===How to run a crontab in Cygwin on Windows===
 
===How to run a crontab in Cygwin on Windows===
* Install cygrunsrv and cron packages from the admin bundle (with 'Install from internet" option)
+
Just to mention first that you could bypass cron altogether with this little trick:<br />
 +
Create a scheduled task with the windows scheduler by calling the shell program
 +
<pre>
 +
C:\cygwin\bin\bash.exe -l -c /cygwin/path/to/shell
 +
</pre>* Install cygrunsrv and cron packages from the admin bundle (with 'Install from internet" option)
 
* From a Cygwin prompt, type:
 
* From a Cygwin prompt, type:
 
<pre>
 
<pre>
Line 13: Line 17:
 
cygrunsrv --start cron
 
cygrunsrv --start cron
 
</pre>
 
</pre>
or don't use cron at all!<br />
+
 
Create a scheduled task with the windows scheduler by calling the shell program
 
<pre>
 
C:\cygwin\bin\bash.exe -l -c /cygwin/path/to/shell
 
</pre>
 
 
====Configure cron====
 
====Configure cron====
 
Run this from a Cygwin terminal
 
Run this from a Cygwin terminal

Revision as of 14:57, 28 November 2014

How to run a crontab in Cygwin on Windows

Just to mention first that you could bypass cron altogether with this little trick:
Create a scheduled task with the windows scheduler by calling the shell program

C:\cygwin\bin\bash.exe -l -c /cygwin/path/to/shell
* Install cygrunsrv and cron packages from the admin bundle (with 'Install from internet" option)
  • From a Cygwin prompt, type:
cygrunsrv --install cron --path /usr/sbin/cron --args -n
  • Start the cron daemon from a Windows prompt with:
net start cron

or from a Cygwin prompt with:

cygrunsrv --start cron

Configure cron

Run this from a Cygwin terminal

cron-config

Show system log of possible problems from the cron daemon (service)

/usr/bin/cronevents

Diagnose problems

Check installed modules

cygcheck.exe -c

Check current status

cygrunsrv -Q cron

If you get

(CRON) error (can't switch user context)

this means that the cron service is trying to run jobs as the "Local System" account. Right-click on the service and change the user it runs jobs as to be the one you want.