when I do a ps -ef i have a process listed as <defunct>. Whatever
this is, a kill -9 on the pid doesn't kill it. It lists it a child
of /usr/sbin/envmond -ui cli. Noticing that, I did a /usr/sbin/
envconfig stop/start. When envconfig is stopped, the envmond and the
defunct process are gone but when I restart envconfig, the defunct
process returns.
Any help would be appreciated and if you need further information,
please let me know.
Thanks,
James
> Have a weird issue on an old DS20 running Compaq Tru64 5.1 (Rev. 732)
>
> when I do a ps -ef i have a process listed as <defunct>. Whatever
> this is, a kill -9 on the pid doesn't kill it. It lists it a child
> of /usr/sbin/envmond -ui cli. Noticing that, I did a /usr/sbin/
> envconfig stop/start. When envconfig is stopped, the envmond and the
> defunct process are gone but when I restart envconfig, the defunct
> process returns.
Not weird at all, but normal Unix behaviour. When a process (like
envmond) "fork()"s a child process but does not issue a "wait()" when
it terminates, the child process becomes a zombie (which in "ps" is
shown as "defunct"). Zombie processes cannot be killed, as you have
observed. When the parent of a zombie terminates, it non-waited-for
children are inherited by the "init" process (the root of all
processes) which reaps the zombies.
In other words, envmond has a bug.
--
Stefaan A Eeckels
--
Isn't it amazing how a large number of evil morons can give the
appearance of being a single evil genius? --Mel Rimmer