# slicd - simple lightweight Linux cron daemon
slicd is a Linux cron daemon aiming to be small, simple and lightweight. It
doesn't try to support every possible feature under the sun, and while not a
requirement is perfectly fitted to run under a supervision suite.
It comes as a few modules :
- **slicd-parser** : to parse crontabs into one "compiled" file
The parser's job is to process all system & user crontabs and compile them
into a single file, in a ready-to-use format for the scheduler.
See slicd-parser(1) for information on supported format/syntax of crontabs.
- **slicd-sched** : the scheduler, aka the actual cron daemon
The scheduler simply loads the compiled crontabs, determines the next time a
job needs to run and simply waits for it. It doesn't need to wake up every
minute (as most cron daemons do) and handles time changes (manual, NTP,
DST...) fine.
It also doesn't actually run anything, but simply prints on its stdout one
line for each job to run, in the form USERNAME:COMMAND LINE
- **slicd-exec** : the exec daemon, to actually run jobs
The scheduler's stdout is aimed to be piped into this daemon's stdin, which
will handle forking and executing the command line. It will report all forks
& reaped children on its stdout, as well as anything printed on a child's
stdout or stderr.
It is important to note that it doesn't do any drop of privileges or
environment changes, instead you're supposed to do this making sure it execs
into the right tools; such as one to drop privileges to a specific user, one
to set up the correct environment, etc
In addition, a few extra tools are provided, meant to be used alongside
slicd-exec(1) :
- **setuid** : drop privileges to the specified user
- **miniexec** : minimal parsing & execing of command-line
## Free Software
slicd - Copyright (C) 2016 Olivier Brunel <jjk@jjacky.com>
slicd is free software: you can redistribute it and/or modify it under the
terms of the GNU General Public License as published by the Free Software
Foundation, either version 3 of the License, or (at your option) any later
version.
slicd is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with
slicd (COPYING). If not, see http://www.gnu.org/licenses/
## Want to know more?
Some useful links if you're looking for more info:
- [official site](http://jjacky.com/slicd "slicd @ jjacky.com")
- [source code & issue tracker](https://github.com/jjk-jacky/slicd "slicd @ GitHub.com")
- [PKGBUILD in AUR](https://aur.archlinux.org/packages/slicd "AUR: slicd")
Plus, slicd comes with man pages.