--- hastr: true layout: project title: queued short: queued tags: linux, shell, daemon, system hasgui: false hasdocs: false developers: - Evgeniy Alekseev license: GPLv3 links: ---
Daemon for starting jobs to queue of calculations. It was written as proof-of-concept.
{% highlight bash %} $ queued --help Simple daemon written on BASH for starting jobs to queue of calculations Usage: queued [ -c /etc/queued.conf ] [ -v | --version ] [ -h | --help ] Parametrs: -c PATH - path to configuration file. Default is '/etc/queued.conf' -v --version - show version and exit -h --help - show this help and exit {% endhighlight %} {% highlight bash %} $ add_queued --help add_queued [ -c /etc/queued.conf ] [ -p NUM ] [ -u USER ] [ -h | --help ] /path/to/script Parameters: -c PATH - path to configuration file. Default is '/etc/queued.conf' -p NUM - job priority -u USER - username -h --help - show this help and exit {% endhighlight %}/
you must run it as root, e.g.:
{% highlight bash %}
sudo ./install.sh
{% endhighlight %}
If no path is specified it will be installed to /
by default.I want note that all were tested on latest version of dependencies.
If you want to start the daemon just run
{% highlight bash %} systemctl start queued {% endhighlight %}If you want to enable daemon autoload run
{% highlight bash %} systemctl enable queued {% endhighlight %}But you may change path to configuration file or change parameters. To do it just copy (recommended) the source configuration file to new path
{% highlight bash %} cp /etc/queued.conf /path/to/new/queued.conf {% endhighlight %}and edit it. Then copy the source service file to /etc
:
Replace following string in the file:
{% highlight bash %} ExecStart=/usr/bin/queued {% endhighlight %}to
{% highlight bash %} ExecStart=/usr/bin/queued -c /path/to/new/queued.conf {% endhighlight %}script.sh
).script.sh.pr
) with the job priority if it is needed.script.sh.user
) with the job username if it is needed.$WORKDIR
.Also you may use add_queued
.
All settings are stored in /etc/queued.conf
. After edit them you must restart daemon
WORKDIR | Full path to directory with source jobs. Default is /var/lib/queued/work . This directory must contain source scripts script-name , a priority file (it is not necessary) script-name.pr and a file with username (it is not necessary too) script-name.user . |
---|---|
JOBDIR | Full path to directory with running jobs. Default is /var/lib/queued/job . All job files will be moved here. |
QUEUEFILE | Full path to file with queue list. Default is /var/lib/queued/queue . |
PRIORITY | Default priority. Default is 0 . The higher the value, the higher the priority of the task. |
SLEEPTIME | Time interval in minutes. Default is 5 . |
STARTASUSER | Default user. Default is root . This user will own created files. |