উপরের উত্তরের মতো, যে কোনও প্রক্রিয়া বন্ধ করার সবচেয়ে শক্তিশালী উপায় হ'ল SIGKILL
উদাঃ kill -9 process_id
।
তবে, এমন প্রক্রিয়াগুলি বিদ্যমান যা কেবল অসম্ভব এবং অসম্ভবও Force Quit
নয় kill
। তারা zombie
প্রক্রিয়া হিসাবে ডাকা হয় ।
এখানে একটি শর্ট স্ক্রিপ্ট যা zombie
দুটি মিনিটের জন্য একটি প্রক্রিয়া তৈরি করবে :
perl -e 'if($p=fork) {print "unkillable pid:$p\n" ;system("ps -l"); sleep(120)}'
টার্মিনালে উপরের স্ক্রিপ্টটি চালনা করুন এবং পরবর্তী ফলাফলের মতো আপনি আউটপুট পাবেন:
unkillable pid:50571
UID PID PPID F CPU PRI NI SZ RSS WCHAN S ADDR TTY TIME CMD
501 47380 47379 4006 0 31 0 2448416 2900 - S 0 ttys000 0:00.36 -bash
501 50570 47380 4006 0 31 0 2443512 1424 - S+ 0 ttys000 0:00.01 perl -e if($p=fork) {print "u
#THIS-> 501 50571 50570 2006 0 0 0 0 0 - Z+ 0 ttys000 0:00.00 (perl)
501 12795 12794 4006 0 31 0 2448296 1752 - S+ 0 ttys001 0:00.75 -bash
501 50123 50122 4006 0 31 0 2448296 2688 - S+ 0 ttys002 0:00.14 -bash
আপনি যদি অযোগ্যযোগ্য প্রক্রিয়াটির জন্য স্থিতি কলামটি পরীক্ষা করেন (এই ক্ষেত্রে: 50571) আপনি Z
পতাকাটি দেখতে পাচ্ছেন , এর অর্থ কি zombie
।
আপনি যেকোন kill
সিগন্যাল প্রেরণের চেষ্টা করতে পারেন (উদাঃ kill -9 50571
) এবং প্রক্রিয়াটি এখনও বিদ্যমান থাকবে। যাইহোক, এটি আপনার সিস্টেমে খুব বেশি ক্ষতি করে না, কারণ এটি বাস্তবে বিদ্যমান নেই - কেবল প্রক্রিয়া সারণী দখল করে।
উপরের উদাহরণে, 120 সেকেন্ডের মধ্যে এটি সাফ হয়ে যাবে।