path /tmp 不对应于常规文件
path /tmp does not correspond to a regular file
当我有
时会发生这种情况
- /tmp 目录中的可执行文件(比如 /tmp/a.out)
- 根运行shell
- linux
- selinux on(RedHat、CentOS 等的默认设置)
显然试图 运行 位于 /tmp/directory 中的可执行文件作为 root 撤销权限。除了关闭 selinux 之外,知道如何解决这个问题吗?谢谢
您可以在您想要 运行.
中的 /tmp 中的二进制文件或目录(包含二进制文件)上设置文件上下文
sudo semanage fcontext -a -t bin_t /tmp/location
然后恢复:
sudo restorecon -vR /tmp/location
看看 /tmp
目录的挂载选项,很可能你有 no-exec
选项(这样做有很多安全原因,第一个是任何人都可以把/tmp
目录中的一个文件)
当我有
时会发生这种情况- /tmp 目录中的可执行文件(比如 /tmp/a.out)
- 根运行shell
- linux
- selinux on(RedHat、CentOS 等的默认设置)
显然试图 运行 位于 /tmp/directory 中的可执行文件作为 root 撤销权限。除了关闭 selinux 之外,知道如何解决这个问题吗?谢谢
您可以在您想要 运行.
中的 /tmp 中的二进制文件或目录(包含二进制文件)上设置文件上下文sudo semanage fcontext -a -t bin_t /tmp/location
然后恢复:
sudo restorecon -vR /tmp/location
看看 /tmp
目录的挂载选项,很可能你有 no-exec
选项(这样做有很多安全原因,第一个是任何人都可以把/tmp
目录中的一个文件)