[英]How to start/stop service from python script running in Flask and Apache server using Debian?
我正在尝试从使用Flask和Apache运行的python脚本启动和停止服务。
例如,要从memcached获取状态,我正在使用
os.popen('service memcached status').read()
就像一个os.popen('service memcached status').read()
。
问题是当我尝试开始/停止做类似的事情时
os.popen('service memcached stop').read()
它什么也没做(我通过外壳检查服务仍在运行)
总而言之,我可以获取状态,但无法启动/停止,也不知道为什么会发生这种情况。
有人有什么建议吗?
谢谢,
我在/var/log/apache2/error.log
看到了apache日志,问题是我需要更多特权才能执行启动/停止。 但是当我尝试使用
os.popen('sudo service memcached stop').read()
我收到一个错误消息,说我应该输入su密码。
为了解决这个问题,我在shell中输入:
visudo
打开了/etc/sudoers
文件。 然后我添加了一行
www-data ALL=(ALL) NOPASSWD:ALL
我了解这意味着我向用户www-data
授予了无需密码即可执行sudo
权限。
要退出,请按Ctrl+X
,然后按y
保存。
注意: www-data
是执行apache的用户名。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.