def _start(self, foreground = True):
if self.username is None:
if os.getuid() == 0:
sys.stderr.write("Refusing to run as superuser\n")
sys.exit(1)
self.pw = pwd.getpwuid(os.getuid())
else:
self.pw = pwd.getpwnam(self.username)
if os.getuid() not in (0, self.pw.pw_uid):
sys.stderr.write("Cannot run as user \"%s\"\n" % (self.username, ))
sys.exit(1)
setproctitle(self.procname)
if not foreground:
self._drop_priv()
self.pre_daemonize()
self._daemonize()
if self.pidfile:
self._write_pid()
self._open_log(syslog = self.syslog)
else:
self._drop_priv()
self.pre_daemonize()
self._open_log(syslog = False, debug = True)
self.run()
评论列表
文章目录