." intlink tagname rest .de intlink . ie \\n[www-html] \{\ . HTML \\$1\\$2 . \} . el \{ \fB\\$1\fR\\$2 \} .. ." extlink URL text rest .de extlink . ie \\n[www-html] \{\ . HTML \\$2\\$3 . \} . el \{ \fB\\$1\fR\\$3 \} .. .de manlink . ie \\n[www-html] \{\ . HTML \\$2\\$3 . \} . el \{ \fB\\$2\fR\\$3 \} .. .de paragraph .HTML

.P .. .de section . ie \\n[www-html] \{\ .HTML

\\$1

. \} . el \{ .SH \\$1 . \} .. .de subsection . ie \\n[www-html] \{\ .HTML

\\$1

. \} . el \{ .SS \\$1 . \} .. ." type name (args ..." .de func .HTML

.HTML
\\$1 \fB\\$2\fR\\$3 .. .de args .br .HTML
\\$1 .. .de endfunc .br .HTML
.P .. .de options . HTML
.. .de option . ie \\n[www-html] \{\ . HTML "
\\$1
" . \} . el \{ .HP \\$1 .br . \} .. .de optionparagraph .HTML

.IP .. .de endoptions . HTML

.. .de list .HTML .. .ds PA uschedule .ds VE 0.7.1 .ds CL admin .TH uscheduled 8 \*(VE \*(PA .hy 0 .URL "Uwe Ohse" ../uwe.html .br .URL "The uschedule package" ../uschedule.html .paragraph .SH NAME uscheduled - a job scheduler .LINE .SH SYNOPSIS \fBuscheduled\fR [-d DIR] .SH DESCRIPTION \fBuscheduled\fR reads information about a number of jobs from \fIDIR\fR, or, if this is not given, from \fI~/.uschedule/\fR. .paragraph It then sleeps until one or more of the jobs have to be run, at which point it will try to run and either reschedule or delete them. .paragraph \fBuscheduled\fR runs under the rights of the user for whom the programs are started. It changes to \fIDIR\fR on startup and runs in an own session. It doesn't detach from the terminal or move itself into the background. .paragraph All time calculation is done in UTC. .SH "JOB EXECUTION" If \fBuscheduled\fR needs to start a job the following will be done: .list .entry "uscheduled forks a new process." .entry "the new process redirects /dev/null" to file descriptors one and two, if desired. .entry "the new process changes to $HOME." .entry "the new process executes the program." .entry "uscheduled reschedules the job. .endlist The users program will inherit the environment of the daemon, unless otherwise indicated during job creation time. The standard input will be redirected from /dev/null. By default the file descriptors one and two (standard and error output) are not redirected, meaning that the output will go into the same log files as the output of the daemon, if any. .SH "SIGNAL HANDLING" \fBuscheduled\fR exits gracefully on SIGTERM. It reloads the job specifications on SIGHUP. .SH AUTHOR Uwe Ohse, uwe@ohse.de .SH "SEE ALSO" .manlink uschedule.html uschedule(1) , .manlink intro.html uschedule_intro(7) . .HTML