当我尝试在Ubuntu上使用LuaSocket创建一个监听任何端口的套接字时,套接字的创建失败,并显示"permission denied":
require("socket")
server, msg = socket.bind("*", 23)
if not server then print(msg) end但是,当以超级用户身份(使用sudo)执行相同的脚本时,服务器的创建工作正常。有没有什么原因导致LuaSocket无法正常创建服务器?我可以做任何事情(无论是在Lua还是在Ubuntu服务器上),这样就不需要以超级用户身份执行脚本了吗?
发布于 2012-05-21 19:21:22
这不是LuaSocket特有的问题,而是一个故意的安全限制(以及许多其他的Linux/UNIX)。非特权用户无法绑定到1024以下的端口。您可以使用privbind来解决此限制。
https://stackoverflow.com/questions/10684184
复制相似问题