This is the INSTALL.txt file of the CRONw - CRON for Windows Project at
sourceforge.net. Visit the home page
and read the UPDATE.txt document, too.
Installation
We plan to create an windows style installer but for now you have to install CRONw
manually:
- Install Perl (at least version 5.8). If you can't install a newer perl please use
CRONw 1.4.1b. CRONw 2.0 won't work with Perl 5.6 (if you like to use CRONw 2.0 with
Perl 5.6 please provide some suitable patches).
Please verify that your installation was successful:
Launch the command shell and issue "perl -v
":
If it says "Command not found" or something similar you should fix that first.
Probably you have to add the perl/bin directory to your path (please use Google).
A good output of "perl -v
" should look like this:
> This is perl, v5.8.2 built for MSWin32-x86-multi-thread
> (with 25 registered patches, see perl -V for more detail)
> ... even more output
- Unpack the files from the .zip file. This will create a 'CRONw' directory holding
them. Move it somewhere. '
cd \d
' to it.
- Install the additionally needed Perl modules. Due to the lack of real installer
we decided to simplify the module installation. If you run into trouble using
option A please follow the instructions for option B:
- option A ("the easy way")
- Launch the command line.
- cd to your CRONw installation directory
- type "perl installer.pl"
you should see some output. If everything was successful you may go to 4.
- option B ("the hard way")
- Launch the command line.
- cd to your CRONw installation directory
- type the following commands
ppm install modules\Win32-Daemon.ppd
ppm install modules\Number-Compare.ppd
ppm install modules\Attribute-Handlers.ppd
ppm install modules\Text-Glob.ppd
ppm install modules\File-Find-Rule.ppd
ppm install modules\Date-Manip.ppd
ppm install modules\Params-Validate.ppd
ppm install modules\Log-Dispatch.ppd
ppm install modules\Log-Log4perl.ppd
ppm install modules\Log-Dispatch-FileRotate.ppd
- Install the script as a system service.
perl cronHelper.pl --install
(you can get additional help by issuing "cronHelper.pl --help
")
You may use the --user= and --pass= switches to specify the credentials for a certain user.
If you get errors saying that a perl module wasn't found please verify
that all modules were correctly installed (see option B).
- Start the cron service:
net start CRON
That's it. Please read "Debugging your installation" if you encounter any errors.
Debugging your installation
Most errors starting the service are due to missing modules. Please launch a command shell,
go to your CRONw directory and type perl cronService.pl
If the error message doesn't help you please look into the log located in the subdirectory 'logs'.
For additional help please use our mailing list: http://lists.sourceforge.net/lists/listinfo/cronw-devel
crontab
The structure of the file crontab is described in the online help, see below.
An alternate crontab may be named using the --crontab= switch. You may update
the crontab file while the service is running.If no crontab exists during
initialization (startup) time of the service, one will be created.
Controlling the service
Once the service is installed you can start it via
NET START CRON
The service is set to automatic startup at system startup time, so it will be
running next time you reboot or power on your computer. If you ever want to
stop the service, use
NET STOP CRON
You may pause and continue the service by these commands:
NET PAUSE CRON
NET CONTINUE CRON
The service will show up in the list of running services when a single
NET START
is fired.
You may control it via Windows' MMC administrational tools, too.
Logfiles
The logs will be written to a directory names 'logs' below the main cronw
directory. The logging can be controlled by modifing logs.conf.
You may rise the amount of log output by changing the loglevel in configureLogger ("WARN", "INFO")
into "DEBUG", "INFO", "WARN", "ERROR" or "FATAL".
Use loglevel debug with care as you'll get very big logfiles after some time.
Don't leave it enabled after testing.
Help
- cronHelper.pl
If you need some help regarding using cronHelper.pl please issue:
perl cronHelper.pl --help
Examples for cronHelper.pl usage:
perl cronHelper.pl --install
perl cronHelper.pl --install --user="Domain\User" --password="userpassword"
perl cronHelper.pl --remove
If you want to run CRONw with a local user id (different from "local system") please
use "." as domain (e.g. --user=".\Username"). Please note that the user must have the
permission to "act as part of the operating system". You may use the Windows Policy Editor
in order to grant this privilege to the desired user (group).
- Verify that your installation was correct. See "Debugging your installation" for that one.
- If you have any questions feel free use our mailing list (http://lists.sourceforge.net/lists/listinfo/cronw-devel)
Please decribe the error and the expected results a precise as possible.
Reading Eric Raymond's & Rick Moen's
"How To Ask Questions The Smart Way" may help you.
If you have problems installing CRONw or starting the service please include
the output of "perl cronService.pl" in your post.
Security
When using the default preferences all programs referenced in crontab.txt will be executed
with the local SYSTEM account. In order to keep your system secure you should ensure
that only trustworthy users have write access to "cronService.pl", "Crontab.pm",
"log.conf" and "crontab.txt".
Uninstallation
If you ever want to uninstall the software, do this: Stop the service via
NET STOP CRON
then remove it via
perl cronService.pl --remove
Now delete the directory 'CRONw' holding the files.
After that you may choose to remove the additionals modules such as Win32::Daemon.
To remove perl modules use "ppm remove <modulename>
" (e.g. "ppm remove Win32::Daemon
").
Please notice that removing perl modules may break other perl programs which need these
modules to.
We recommend not to uninstall any modules.
Credits
A huge thank goes out to Scott McMahan, who wrote the main CRON code and put
it in the public domain. He did this back in '95 on Perl 4, while nowadays he
wouldn't write such code, he says ;) The original is here:
http://www.megadodo.demon.co.uk/perl/ and here:
http://cyberreviews.skwc.com/cron.html.
Another bow goes to Dave Roth from Roth Consulting (WA, USA). He provides and
maintains the highly useful Win32::Daemon package and other useful
contributions to the Perl community. Visit http://roth.net/ for details.
Felix Schwarz did a great rewrite of most of the source, fulfilling several
open tasks at once. Thanks!
Authors
This CRON for Windows package was initially built in 2003 by Robert Kehl,
Nuremberg, Germany. Comments, suggestions and improvements are welcome at cronw
at robertkehl de, have a look at http://www.robertkehl.de for more information.
Felix Schwarz joined the team in early 2004 after thoroughly examining the
source code and surviving the horror he faced while reading it.
Bob Showalter joined in spring 2004, now we're three!