Checking processes without PIDs
Dan Nelson
dnelson at allantgroup.com
Mon Nov 27 13:33:23 PST 2006
In the last episode (Nov 27), jhall at vandaliamo.net said:
> I have written a script to determine if processes are running. I am
> using, as an example,
>
> ps -ax | grep -c postgrey
>
> Ocassionally, I am receiving a notification a process is not running
> (and it varies which process I receive notifications for). And, when
> checking, the process actually is running.
>
> Is there a better way to determine if a process is running than using ps
> and grep?
Reading the program's pidfile and checking to see if that pid still
exists is the best way. That only works if your program generates a
pidfile, though. Most of the time they're in /var/run or a
subdirectory. If it doesn't generate a pidfile, you can try the pgrep
command, which is better than a "ps|grep" combo because it won't ever
accidentally match itself.
--
Dan Nelson
dnelson at allantgroup.com
More information about the freebsd-questions
mailing list