Using the noexec flag
If you have the /var and /tmp paths mounted with noexec flag and restricted write for /opt, 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 |
3.Replace /opt/eset/lib/modules with symlink:
# rmdir /opt/eset/lib/modules # ln -s /usr/lib/efs /opt/eset/lib/modules |
4.Compile the essential modules:
# /opt/eset/efs/bin/upd --compile-nups |
5.Restart the efs service:
# systemctl restart efs |
If a normal, unprivileged user runs efs utilities, you can get the same error when the user's home directory is mounted noexec.
Workaround
a.Either allow others to use /opt/eset/lib/modules:
# chmod o+rwx /opt/eset/lib/modules |
b.Or change permissions for linked folder, when used:
# chmod o+rwx /usr/lib/efs |
c.Or run utility with specified MODMAPDIR variable, for example:
$ MODMAPDIR=/usr/lib/efs-user/ /opt/eset/efs/bin/lslog -s |
NOTE The user needs to have permissions rwx in the folder used. |