Using the noexec flag

If you have the /var and /tmp paths mounted with noexec flag, the installation of ESET Endpoint Antivirus 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/eea drwxrwxr-x. root eset-eea-daemons

2.Execute the following commands:

# mkdir /usr/lib/eea

# chgrp eset-eea-daemons /usr/lib/eea

# chmod g+w /usr/lib/eea/

a.In case SELinux is enabled, set the context for this folder:

# semanage fcontext -a -t tmp_t /usr/lib/eea

# restorecon -v /usr/lib/eea  

3.Compile the essential modules:

# MODMAPDIR=/usr/lib/eea /opt/eset/eea/bin/upd --compile-nups   

4.Set MODMAPDIR in /usr/lib/systemd/system/eea.service by adding a line to the [Service] block:

Environment=MODMAPDIR=/usr/lib/eea

5.Reload systemd service configuration:

# systemctl daemon-reload 

6.Restart the eea service:

# systemctl restart eea