31

Monit runs with root, but i don't want to start my processes as root.. like mysql, mongrel, apache..

offby1
  • 107
  • 5
Guilherme
  • 711
  • 2
  • 7
  • 8

4 Answers4

61
 check process tomcat with pidfile /var/run/tomcat.pid
       start program = "/etc/init.d/tomcat start" 
             as uid nobody and gid nobody
       stop program  = "/etc/init.d/tomcat stop"
             # You can also use id numbers instead and write:
             as uid 99 and with gid 99
       if failed port 8080 then restart

(source)

crb
  • 7,928
  • 37
  • 53
1

i have found a answer.. i could do a: start_program = "su -c 'command here' USERiWANTtoUSE".. :)

Guilherme
  • 711
  • 2
  • 7
  • 8
0

You can do this to run as another user a specific command

exec /bin/su - userName -c "/usr/bin/nginx start"

This will run that command " " as the user you defined

Pian0_M4n
  • 178
  • 1
  • 6
-1

What operating system / distro are you using? How did you install Monit? Most dsitros 'do the right thing' and make sure things don't start as root.

Amandasaurus
  • 30,211
  • 62
  • 184
  • 246
  • i'm using debian sarge.. i've installed with apt-get.. i don't think monit can be started as other user than root.. by the way it can?.. :) – Guilherme Aug 07 '09 at 15:18
  • monit can be run by any user with `monit -c .monitrc` – Jayen Aug 09 '12 at 01:37