जवाबों:
नए उपस्टार्ट सिस्टम पर, जब आप GUI का उपयोग करके लॉगिन करते हैं तो सत्र प्रारंभ प्रक्रिया शुरू होती है। चूंकि उबंटू अपस्टार्ट का उपयोग करता है, इसलिए init
आपके सत्र के लिए एक प्रक्रिया है। pstree -ps $$
किसी टर्मिनल में इसका उपयोग करके परीक्षण करें :
$ pstree -ps $$
init(1)───lightdm(1741)───lightdm(9511)───init(9526)───/usr/bin/termin(9570)─┬─gnome-pty-helpe(9734)
└──zsh(7944)
इसलिए जब आप दौड़ते हैं killall init
, तो आप init
पीआईडी 1 को नहीं मार रहे हैं (क्योंकि आपके पास विशेषाधिकार नहीं है), लेकिन आपका सत्र init
, जो इस उदाहरण में पीआईडी 9526 होगा।
चूंकि यह init
आपके जीयूआई सत्र के लिए शासी प्रक्रिया है, इसलिए यह आपके सत्र को मारता है और इसलिए आपको लॉग आउट किया जाता है।
pkill
इसके बजाय पसंद करते हैं killall
क्योंकि killall
सोलारिस जैसी अन्य प्रणालियों पर पूरी तरह से अलग काम करता है ...
killall
सभी को मारता है। इसलिए यह नाम।
killall init
के रूप में root
एक अच्छा विचार की तरह प्रतीत नहीं होता है - विशेष रूप से एक पर उपयोगी प्रणाली - मुझे लगता है कि init
एक कर्नेल आतंक अगर यह मर जाता है, क्योंकि यह करने के लिए इरादा नहीं है कभी एक तक पहुंचने का कारण बनता है return
यह के अंत में main
कोड पाश।