Check for running DHCP daemon?

Chris Angelico rosuav at gmail.com
Thu Jan 22 05:39:48 CET 2015


On Thu, Jan 22, 2015 at 2:58 PM, Jason Bailey <JBailey at emerytelcom.com> wrote:
> How would I get a list of running processes with the subprocess module? The
> documentation wasn't clear to me.

Using the ps command. :)

rosuav at dewey:~$ python3
Python 3.4.2 (default, Oct  8 2014, 10:45:20)
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> b" dhcpd\n" in subprocess.check_output(["ps","-A"])
False

rosuav at sikorsky:~$ python3
Python 3.5.0a0 (default:4709290253e3, Jan 20 2015, 21:48:07)
[GCC 4.7.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import subprocess
>>> b" dhcpd\n" in subprocess.check_output(["ps","-A"])
True

There's a DHCP server running on Sikorsky, but not on Dewey. :)

Of course, this can be faked. Any process can call itself 'dhcpd' and
pretend to be the DHCP server. It's up to you to decide how to deal
with that. (Probably by not caring, I would expect. Unless you
actually expect someone to maliciously try to confuse your script,
it's not worth the hassle of protecting yourself.)

ChrisA



More information about the Python-list mailing list