Tôi đã khởi chạy chương trình của mình ở tiền cảnh (một chương trình daemon), và sau đó tôi đã giết nó kill -9
, nhưng tôi vẫn còn một thây ma và tôi không thể giết nó kill -9
. Làm thế nào để tiêu diệt một quá trình zombie?
Nếu zombie là một quá trình chết (đã bị giết), làm thế nào tôi loại bỏ nó khỏi đầu ra của 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
nói gì Đó là, cha mẹ của 1163 là ai? Đó là quá trình phải chấm dứt.