twisted python守护进程和端口绑定
我正在使用Twisted教程中的以下脚本(稍加修改): 我将其另存为twisted python守护进程和端口绑定,python,twisted,daemon,twistd,Python,Twisted,Daemon,Twistd,我正在使用Twisted教程中的以下脚本(稍加修改): 我将其另存为finger\u daemon.tac并使用 twistd -y finger_daemon.tac \ -l /home/me/twisted/finger.log \ --pidfile=/home/me/twisted/finger.pid 但它当然不会绑定到79,因为它是一个特权端口。我也试过和sudo一起跑步,没有什么不同 然后,我尝试将TCPServer端口更改为7979,然后在运行时连接到守护进
finger\u daemon.tac
并使用
twistd -y finger_daemon.tac \
-l /home/me/twisted/finger.log \
--pidfile=/home/me/twisted/finger.pid
但它当然不会绑定到79,因为它是一个特权端口。我也试过和sudo一起跑步,没有什么不同
然后,我尝试将TCPServer
端口更改为7979,然后在运行时连接到守护进程
telnet 127.0.0.1 7979
我得到
连接被拒绝
错误。这里具体发生了什么?后台监控在Twisted中应该如何工作?运行此代码时,我看到以下日志消息:
2013-10-02 23:50:34-0700 [-] failed to set uid/gid 1/1 (are you root?) -- exiting.
然后twistd
退出。因此,您需要执行sudotwistd
,然后这就增加了一大堆python路径管理问题
为什么要设置
uid
和gid
参数?您正试图以守护进程
用户身份运行它?您不需要这样做就可以进行后台监控。只要删除应用程序的uid=1,gid=1
参数,它就可以为我工作。运行此代码时,我会看到以下日志消息:
2013-10-02 23:50:34-0700 [-] failed to set uid/gid 1/1 (are you root?) -- exiting.
然后twistd
退出。因此,您需要执行sudotwistd
,然后这就增加了一大堆python路径管理问题
为什么要设置uid
和gid
参数?您正试图以守护进程
用户身份运行它?您不需要这样做就可以进行后台监控。只需删除uid=1,gid=1
应用程序的arguments,它就可以为我工作。同样重要的是,您是如何看到错误的?twistd在Twisted上以静默方式运行,因此直接链接到提及此示例的教程将非常有用:-)。我通过运行twistd-n-y finger\u daemon.tac
看到了错误。调用时,您应该在/home/me/twisted/finger.log
中看到相同的错误。(虽然启动错误并不总是正确报告;但知道您是否看到了这一点会很有趣!)下面是uid/gid=1指示的一个示例:同样重要的是,您是如何看到错误的?twistd在Twisted上以静默方式运行,因此直接链接到提及此示例的教程将非常有用:-)。我通过运行twistd-n-y finger\u daemon.tac
看到了错误。调用时,您应该在/home/me/twisted/finger.log
中看到相同的错误。(虽然启动错误并非总是正确报告;但了解您是否看到了这一点是很有意思的!)下面是uid/gid=1指示的一个示例: