我启动了一个前台程序(一个守护进程),然后用 kill -9
杀掉它,但是我得到了一个僵尸进程,而且我无法用 kill -9
杀死它。如何杀死一个僵尸进程?
如果这个僵尸进程已经被杀掉了,我该如何将其从 ps aux
的输出中删除?
root@OpenWrt:~# anyprogramd &
root@OpenWrt:~# ps aux | grep anyprogram
1163 root 2552 S anyprogramd
1167 root 2552 S anyprogramd
1169 root 2552 S anyprogramd
1170 root 2552 S anyprogramd
10101 root 944 S grep anyprogram
root@OpenWrt:~# pidof anyprogramd
1170 1169 1167 1163
root@OpenWrt:~# kill -9 1170 1169 1167 1163
root@OpenWrt:~# ps aux |grep anyprogram
1163 root 0 Z [anyprogramd]
root@OpenWrt:~# kill -9 1163
root@OpenWrt:~# ps aux |grep anyprogram
1163 root 0 Z [anyprogramd]
ps -o ppid 1163
的输出是什么?也就是说,1163的父进程是谁?那个进程必须被终止。 - William Pursell