|
NAMEuschedule_intro - an introduction to the uschedule packageDESCRIPTIONuschedule is not cron and uschedule is not at - it does offer similar functionality, but is not intended to be a drop-in replacement. It works differently. It's designed to be different.The uschedule package contains a number of tools, described below, to manage the scheduling of jobs. The uscheduled daemon is run by supervise. DefinitionsA registered command defines what to run. A command may simply call a script or program somewhat, but may also be a complicated shell script. A command has an unique identifier (often simply called Job-ID or ID).A uscheduled job defines when to run a command. TOOLSThis section give an general outline of the tools. More specific information may be find in the manuals.uscheduleduscheduled(8) is the scheduler daemon. It sleeps in the background until some job has to be started.uschedulecmduschedulecmd(1) is used to register a command and to give it an ID.uscheduleuschedule(1) schedules a registered command for execution at a certain time or time pattern.uschedulelistuschedulelist(1) lists scheduled jobs or commands.uschedulermuschedulerm(1) deletes scheduled jobs or commands. This is a frontend to `rm', nothing more.uschedulecpuschedulecp(1) copies a registered command.uscheduleedituscheduleedit(1) is used to edit commands.uscheduleconfuscheduleconf(1) creates a schedule service. This is usually used by a system operator.uscheduleruntimelimituscheduleruntimelimit(1) may be used to limit the run time of jobs.FILE SYSTEM LAYOUTAssuming that /etc/schedule-USER has been set up by the system administrator using uscheduleconf like this:uscheduleconf /etc/schedule-USER USER USER then /etc/schedule-USER and ~USER/.uschedule will contain: A `/etc/schedule-USER/run' scriptThis runs as root and is only writable for root. It changes to the users schedule directory (~USER/.uschedule by default) and then starts ~USER/.uschedule/runThis script is the place where the system administrator may enforce local policy, including resource limits. A `/etc/schedule-USER/log/run' scriptThis runs as root and is only writable for root. It changes to the users schedule log directory (~USER/.uschedule/log by default) and then starts ~USER/.uschedule/log/runThis script is the second place where the system administrator may enforce local policy, including resource limits. A `~USER/.uschedule/run' scriptThis reads a number of environment variables from .uschedule/env/ and starts the .uschedule daemon. The user may change this script as he pleases.A `~USER/.uschedule/log/run' scriptThis starts the multilog process. By default logging goes into the log directory. The user may change this script as he pleases.SECURITYAll processes run under the account of the user. The uschedule does not add any insecurity to the system, unless it has been misconfigured. By default the configuration is secure - unless you place uschedule service directories in insecure places.EXAMPLESSetting up a scheduling service for USERAs root:uscheduleconf /etc/schedule-USER USER USER ln -s /etc/schedule-USER /service Setting up a commandto execute ~/bin/dosomething As user:uschedulecmd -i dosomething ~/bin/dosomething Schedule it to run at 0800 and 1300while not allowing the job at 0800 to start past 0930 and not allowing the job at 1300 to start past 1430.As user do: uschedule --late 5400 dosomething '*-*-* 08:00:00' uschedule --late 5400 dosomething '*-*-* 13:00:00' Schedule it to run at 0000 on every first day of the yearwhile allowing it to start up to 30 seconds late:uschedule --late 30 dosomething '*-1-1 13:00:00' AUTHORUwe Ohse, uwe@ohse.deSEE ALSOuscheduled(8), uschedule(1), uschedulecmd(1), uschedulelist(1), uscheduleedit(1), uschedulecp(1), uschedulerm(1), uscheduleconf(1), uscheduleruntimelimit(1).The homepage may be more up-to-date, see
Visit the GSP FreeBSD Man Page Interface. |