Automatic start by using systemd

From Aquarium-Control
Revision as of 08:41, 30 December 2024 by Uwe (talk | contribs) (Automatic start of main control application by using systemd)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

The content of systemd unit file /lib/systemd/system/aquarium-ctrl.service as following:

[Unit]

Description=Aquarium Control Application

After=multi-user.target


[Service]

Type=forking

ExecStart=bash /usr/local/bin/aquarium-ctrl-startup.sh

[Install]

WantedBy=multi-user.target


Upon creation/modification of the unit file, one must run the command sudo systemctl daemon-reload in order to activate the changes.

For starting the control application manually via systemd, one can use the command sudo systemctl start aquarium-ctrl.

The startup script creates a set of POSIX message queues and sets their access rights before starting the control application to run in the background.

  1. !/bin/bash
  2. Creating message queues for operation or test of aquarium_control

sudo touch /dev/mqueue/aquarium_control.5UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.5UXp sudo touch /dev/mqueue/aquarium_control.4UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.4UXp sudo touch /dev/mqueue/aquarium_control.6UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.6UXp sudo touch /dev/mqueue/aquarium_control.7UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.7UXp sudo touch /dev/mqueue/aquarium_control.8UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.8UXp sudo touch /dev/mqueue/aquarium_control.9UXp sudo chmod o+rwx /dev/mqueue/aquarium_control.9UXp /usr/local/bin/aquarium_control > /dev/null&