小编use*_*217的帖子

shell 脚本在我是 root 时运行,但当从 Makefile 调用它时(仍然是 root),我的权限被拒绝

我需要运行一个调用 shell 脚本的 Make 脚本

我可以直接以 root 身份运行 shell 脚本,但是当在 makefile 上运行 make 时(仍然以 root 身份),make 被拒绝运行相同的 shell 脚本的权限?

Makefile 中有问题的行是:

PLATFORM=$(shell $(ROOT)/systype.sh)
Run Code Online (Sandbox Code Playgroud)

我可以进去并对系统上每个 Makefile 脚本的每个 PLATFORM 变量的值进行硬编码,但这将是毫无意义的修复,我想了解为什么会出现“权限被拒绝”错误:

make[1]: execvp: ../systype.sh: Permission denied
Run Code Online (Sandbox Code Playgroud)

PS:即使 shell 脚本仅包含lsecho linux拒绝 Make 实用程序运行 shell 脚本的权限,shell 脚本的内容也不是问题。

PS:从某种意义上说,我不是 make 专家,所以如果解释与 Make 有关,请尽可能具体。

linux shell makefile

1
推荐指数
1
解决办法
2887
查看次数

标签 统计

linux ×1

makefile ×1

shell ×1