Using the noexec flag
If you have the /var and /tmp paths mounted with noexec flag, the installation of ESET Server Security for Linux fails with the following error message:
Invalid value of environment variable MODMAPDIR. Modules cannot be loaded.
Workaround
The commands below are executed in a Terminal window.
1.Create a folder where exec is enabled with the following owner and permission set:
/usr/lib/efs drwxrwxr-x. root eset-efs-daemons
2.Execute the following commands:
# mkdir /usr/lib/efs
# chgrp eset-efs-daemons /usr/lib/efs
# chmod g+w /usr/lib/efs/
a.In case SELinux is enabled, set the context for this folder:
# semanage fcontext -a -t tmp_t /usr/lib/efs
# restorecon -v /usr/lib/efs
3.Compile the essential modules:
# MODMAPDIR=/usr/lib/efs /opt/eset/efs/bin/upd --compile-nups
4.Set MODMAPDIR in /usr/lib/systemd/system/efs.service by adding a line to the [Service] block:
Environment=MODMAPDIR=/usr/lib/efs
5.Reload systemd service configuration:
# systemctl daemon-reload
6.Restart the efs service:
# systemctl restart efs