systemd service and /etc/default/
Hi,
I am writing a systemd service file for a daemon (ntopng) and I would
like to know what you think is the best way to load some
configuration.
The ntopng daemon takes multiple interfaces in the format of multiple
-i command-line options. For example.
ntopng -i eth0 -i wlan0
Currently the interfaces are stored in /etc/default/ntopng
INTERFACES="eth0 wlan0"
and the sysv init script takes care of adding "-i" for each one of them.
I would like to keep the sysv compatibility and do the same in systemd.
I tried in various ways, but the two solution I could think of are:
1) change the format of INTERFACES to require inclusion of -i.
I.e
INTERFACES="-i eth0 -i wlan0"
and use EnvironmentFIle=/etc/default/ntopng. This changes the format,
complicated upgrades, and is more error prone.
2) instead of doing Exec=ntopng, Exec a script that does the mangling
and then execs ntopng.
Because both solutions do not look great to me, and I could not find
an example, I am asking your opinion.
After writing this email, I start to believe 2) is the right way, but
I would appreciate anybody's input.
Thanks,
Ludovico
Reply to: