Lua脚本无法执行bash脚本

我正在使用Lua脚本和Nginx生成ISO文件。 Lua脚本正在解析请求,应该将请求传递给genisoimage命令。

我尝试了以下代码:

local pack_cmd = "genisoimage -V" .. some_other_name
os.execute(pack_cmd)

命令没有成功执行,返回代码为3328。我尝试了绝对路径(/usr/bin/genisoimage and /bin/genisoimage)但没有效果。

我尝试了一个简单的方法-在Bash脚本中执行genisoimage命令,在Lua脚本中像这样运行它:

local pack_cmd = "bash /absoulte/path/script.sh " .. some_other_name
os.execute(pack_cmd)

仍然不行,得到相同的退出码。我还尝试捕捉错误,但似乎命令genisoimage从未执行。

local pack_cmd = "bash /absoulte/path/script.sh " .. some_other_name .." >> error.log"
os.execute(pack_cmd)

使用handles版本也不起作用

local handle = io.popen(pack_cmd)
local result = handle:read("*a")
handle:close()

如果我手动执行pack_cmd字符串,一切都OK。执行Bash脚本也可以。

点赞
用户3599280
用户3599280

问题出在 www-data 用户的权限上。

2016-04-08 13:04:20