我已经以用户stavros的身份运行了一个程序,我想给相同的用户使用superorctl重新启动它的权限。不幸的是,我只能用sudo来做,否则我会在socket.py中得到一个permission denied错误。如何允许自己重新启动管理进程?
就我个人而言,我认为以root身份运行superord是一个坏主意,但如果你想这样做,同时允许其他用户完全重新启动,以下是我的做法。
1/在你的系统上创建一个具有重启权限的管理员组
2/将相关用户放入组主管
3/在superord配置中,在[unix_http_server]部分使用以下行:
chmod=0770 ; socket file mode (default 0700)
chown=root:supervisor ; socket file uid:gid owner
它将保证admin套接字可以被选定的用户访问。
4/在系统重生模式(init, systemd, upstart等)的init机制中添加supervisor。这取决于你的系统。重生模式意味着进程在崩溃或停止时将自动重新启动。
也许您应该尝试使用用户stavros
重新启动superviord
进程。