# File lib/god/process.rb, line 245 def spawn(command) fork do ::Process.setsid ::Process::Sys.setgid(Etc.getgrnam(self.gid).gid) if self.gid ::Process::Sys.setuid(Etc.getpwnam(self.uid).uid) if self.uid Dir.chdir "/" $0 = command STDIN.reopen "/dev/null" STDOUT.reopen self.log, "a" STDERR.reopen STDOUT # close any other file descriptors 3.upto(256){|fd| IO::new(fd).close rescue nil} exec command unless command.empty? end end