【发布时间】:2017-02-16 11:11:44
【问题描述】:
我正在 SUSE 服务器中构建项目源代码。 项目 build.sh 调用“lzma”命令来压缩内核。 项目 build.sh 需要“sudo”才能访问某些系统命令。 但是我试过执行“sudo ./build.sh”,shell总是报错:“lzma: command not found.”
我可以使用我的用户帐户在 shell 中执行“lzma”。它工作正常。 我还编写了一个名为“test.sh”的测试shell脚本,它调用“lzma”命令。 我发现如果我用 "sudo" 执行 "test.sh" ,它会失败并显示相同的错误消息。 但是如果我在没有“sudo”的情况下执行“test.sh”,它就可以正常工作。 为什么?
【问题讨论】:
-
sudo重置环境变量作为安全措施。这意味着您的PATH可能会被中断。