Installing EFM as an Operating System Service

The EFM executable supports installation as a service on most Linux distributions. This is an optional installation step that is not required if you prefer to start the EFM server from the efm.sh executable included in the EFM bin directory.

You can start the application as a service by using either init.d or systemd.

Install EFM as an init.d Service

To install EFM as an init.d service, symlink bin/efm.sh to init.d.
$ sudo ln -s /path/to/efm/bin/efm.sh /etc/init.d/efm
Once installed, you can start and stop the service as you would other OS services. For example:
$ service efm start
To configure EFM to start automatically on system boot, use update-rc.d. See man update-rc.d for information on using this utility.

Install EFM as a systemd Service

Most modern Linux distributions now use systemd as the successor to init.d (System V). In many cases you can continue to use init.d, but it is also possible to launch EFM using systemd as a service configuration.

To install EFM as a systemd service, create a file named efm.service in the /etc/systemd/system directory. For example:
[Unit]
Description=efm
After=syslog.target

[Service]
User=efm
ExecStart=/path/to/efm/bin/efm.sh
SuccessExitStatus=143

[Install]
WantedBy=multi-user.target