我正在尝试在RPM规范文件的%post Lua脚本中使用posix.exec,例如
%post -p <lua>
posix.exec("/usr/bin/touch /tmp/test.txt")我得到了错误:
Running transaction
Installing : my-package-1.0.0-1.el7.centos.x86_64 1/1
error: lua script failed: [string "%post(my-package-1.0.0-1.el7.centos.x86_64)"]:1: exec not permitted in this context为什么会发生这个错误?如何通过posix.exec在Lua脚本中运行程序?我尝试过os.execute,它对我很有效,但我想知道为什么posix.exec会失败,而它只是为了这个目的而提供的。
RPM版本4.8.0
发布于 2021-08-29 08:34:07
我知道这个问题有点老了,但是当我遇到同样的问题时,这个出现在谷歌的搜索结果中:如果你还没有使用posix.exec替代当前的进程,rpm就会阻塞这个进程。而且exec也不会像您预期的那样运行shell命令。
您需要/想要的是os.execute
https://stackoverflow.com/questions/46845986
复制相似问题