可执行二进制文件正在 /dev/zero 上使用 PROT_EXEC 执行 mmap(),导致我们的 Ubuntu 20.04.2 服务器(完全更新)出现 EPERM(操作不允许)。无法替换二进制文件,供应商也不会在不久的将来提供更新。
我发现 /dev/zero 没有执行权限,原因是:udev on /dev type devtmpfs (rw,nosuid,noexec,relatime,size=32889584k,nr_inodes=8222396,mode=755)
我已经能够通过执行以下命令来确认问题已解决:$ sudo mount -o remount,exec /dev
有哪些可能的解决方案可以永久修复此问题?基本上,我只需要在 /dev/zero 上执行 exec 作为可执行二进制文件的解决方法。如果这不可能,我会假设即使在重新启动系统后也必须有一种方法可以删除 /dev 上的 noexec。
谢谢