uscheduleconf - configure a scheduling service




uscheduleconf creates a svscan service directory DIR, which starts a service to uschedule for the user ACCT. The jobs will be read from JOBDIR (or ~ACCT/.uschedule, if JOBDIR is not given or only contains a minus character).

Logging information will be written to LOGDIR (or ~ACCT/.uschedule/log, if LOGDIR is not given), using the the account LOGACCT.

Version before 0.7.0 allowed to give "-" for ACCT to use the current user and "-" for LOGACCT to use ACCT for LOGACCT, but the code turned out to be buggy. See the NEWS file of the uschedule package for more information.


-n, --no-user-change
Do not change file ownership and do not switch user ids.

The default is to make ACCT and LOGACCT the owners of JOBDIR, LOGDIR and the file therein, and to switch to ACCT and LOGACCT before running uscheduled and the logging program.

With this option the caller will be the owner of all files created and the programs will run with all the rights they inherit.

This option was added in version 0.7.0.


In JOBDIR/env a number of environment variables are set (one file per variable). HOME, SHELL, USER and LOGNAME are set to values taken from the system password database.
The PATH variable is set to /command:/usr/local/bin:/usr/bin/:/bin for any user not having an uid of 0. For users with uid 0 /usr/local/sbin:/usr/sbin:/sbin will be appended.

All these variables may be changed.


Keep the following rules in mind:


Setup a scheduler for system services

Create a uschedule service for root, with the service directory /etc/root-schedule and the logging done to /var/log/root-schedule under the "misclog" account.

    uscheduleconf /etc/root-schedule root misclog \
             /etc/root-schedule/jobs /var/log/root-schedule

Setup a scheduler for a user

Create a schedule service for uwe, having the trusted commands in /etc/uwe-schedule and any parts uwe can change in ~uwe/.uschedule:

    uscheduleconf /etc/uwe-schedule uwe uwe \
             ~uwe/.uschedule ~uwe/.uschedule/logs


Uwe Ohse, uwe@ohse.de


uschedule(1), uschedulecmd(1), uschedule_intro(7).