यदि आप वास्तव में विशेष कारणों से मजबूर नहीं हैं तो मैं निम्नलिखित करने का सुझाव नहीं देता:
kill -SEGV 1 # should generate a core dumps and kernel panic
kill -ABRT 1 # should generate a core dumps and kernel panic
kill -9 1 # On old systems worked nowadays not
यह मोटा, क्रूर है और इसे पावर कॉर्ड को अनप्लग करने के करीब के बराबर माना जा सकता है ...
सही तरीका है shutdown -h now
के साथ sudo
पहले जब जरूरत।
शायद मुझे विधिपूर्वक कहना चाहिए ; नीचे देखें या बेहतर tl; डॉ।
कुछ शब्द और , उर्फ कहानी, अध्याय I
शुरुआत में ही अंत था और यह अंत तक रहेगा।
पूरे लिनक्स से निर्भर करता है प्यार ध्यान की init [ 1 ] [ 2 ] । फिर भी और निश्चित मात्रा में कृतघ्नता के बिना नहीं, एक समय था जब अच्छा लॉर्ड रूट उपयोगकर्ता इस प्रेम को धोखा दे सकता है और अचानक kill
एक असंगत ( -9
) आदेश के साथ इनिट कर सकता है ।
( शिष्टाचार की पुस्तक, काउंट्स, ड्यूक्स के लिए निर्धारित करती है और उपयोगकर्ताओं को पहले आमंत्रित करने के लिए marquisessudo
)।
फिर कुछ जादूगरों ने इनिट (बुक ऑफ से man 2 init
) की रक्षा के लिए एक आकर्षण बनाया
केवल संकेत जो कि प्रक्रिया 1, init प्रक्रिया को भेजे जा सकते हैं, वे हैं जिनके लिए init ने संकेत संचालकों को स्पष्ट रूप से स्थापित किया है। यह आश्वासन देने के लिए किया जाता है कि सिस्टम को गलती से नीचे नहीं लाया गया है।
(हमारी जासूसी रिपोर्ट [ U1 ] कि init 1 HUP 6 ABRT 11 SEGV 15 TERM 30 PWR 2 INT 10 USR1 14 ALRM 17 CHLD 32 संभाल लेगी)
तो अच्छा प्रभु रूट उपयोगकर्ता समाचार सीखते हैं और कमांड को बदलते हैं kill -ABRT 1
या kill -SEGV 1
जो आमतौर पर उत्पन्न करते हैं। कर्नेल घबराहट और एक कोर डंप।
यह काम करता है क्योंकि init पीआईडी नंबर 1 [ 2b ] को चलाने और लेने की पहली प्रक्रिया है ।
यह असुरक्षित है, नासमझ है और आपको लगता है कि यह बुरे शगुन का अभिशाप है और अभिशाप है, लेकिन अगर आप भौतिक रूप से हाथ नहीं डाल सकते हैं और इसे अनप्लग कर सकते हैं ...
शाप : यह लॉग पर नहीं लिखेगा, यह सभी प्रक्रियाओं को नहीं मारेगा और उनके समाप्त होने की प्रतीक्षा करेगा, यह एचडीडी पर ठीक से इनोड को अपडेट नहीं करेगा और न ही यह फाइल सिस्टम को अनमाउंट करेगा; यह भी मन में नहीं है कि यह ग्राफिकल विंडो और शेल हिस्टरी के विकल्पों को बचाएगा, और हमारी कल्पना से परे कई अन्य ... जैसा कि हमने कहा कि पावर कॉर्ड को अनप्लग करने के करीब बराबर, या लैपटॉप अगर बैटरी।
सही तरीका
"नॉन नोबिस, डोमिन, नॉन नोबिस, सेड नॉमिनी तुओ दा ग्लोरियम।", टेम्पलर नाइट्स मोटो। वैध (सही) जिस तरह से उपयोग करने के लिए है [ 3 ]
shutdown
sudo shutdown -h now
शटडाउन प्रणाली को सुरक्षित तरीके से नीचे लाने की व्यवस्था करता है। सभी लॉग-इन उपयोगकर्ताओं को सूचित किया जाता है कि सिस्टम नीचे जा रहा है और ...
लेकिन -h now
उनके पास इतना करने के लिए पर्याप्त समय नहीं होगा ...
कुछ शब्द और , उर्फ कहानी, अध्याय II
एक बार जब कुछ तर्क कदम आसमान से यूनिक्स के लोगों को महसूस हुए:
एक बार जब सिस्टम प्रक्रियाएं मार दी जाती हैं और फाइल सिस्टम अनमाउंट हो गए हैं, तो सिस्टम स्वचालित रूप से बंद या रिबूट हो जाता है। यह हॉल्ट या रिबूट कमांड का उपयोग करके किया जाता है, जो डिस्क में परिवर्तन को सिंक करता है और फिर वास्तविक हॉल्ट / पावर ऑफ या रिबूट का प्रदर्शन करता है। [ ४ ]
दरअसल, आजकल, हम किसी भी अधिक तीन Moirai के अस्तित्व में विश्वास नहीं करते हैं [ 5 ] का लिनक्स दुनिया , reboot
, poweroff
और halt
[ 6 ] : आधुनिक विज्ञान की ls -l $(which poweroff halt reboot)
और से एक man reboot
, इस अंधेरे उम्र पर फैलता नया प्रकाश और हमें पता चलता है यह केवल एक ही सही आदेश मौजूद है जो उनके सभी विकल्पों को पार्स करता है ताकि हम अंततः अपने कमांड नामों के विपरीत कार्यों के लिए पूछने के लिए स्वतंत्र हों! ( halt -p
या reboot -p
के लिए poweroff
, shutdown -r
के लिए reboot
...)
अब जब कि सब स्पष्ट और सभी के लिए आरामदायक लग रहा था, अफवाहें का दावा [ 7 ] कि में अंडरवर्ल्ड की systemd टूलसेट [ 8 ] एक क्रांति अनजान पूरे छोड़ने प्रदर्शन किया गया था overworld । की एक सेना के लिए धन्यवाद पश्च संगतता की परतें हम सब पर ध्यान नहीं दिया कि रिबूट, poweroff, पड़ाव [ 6 ] और यहां तक कि telinit [ 9 ] और शट डाउन [ 3 ] सब पहले से ही नए राजा systemctl घिरा रहे हैं [ 10 ]। कृपया जेडीबीपी द बार्ड [ 9 ] की मूल आवाज से पूरी कहानी सुनें क्योंकि मेरे पास और कोई सांस नहीं है।
यदि आप उबंटू पंथ के अनुयायी हैं, तो आप अभी भी उन सभी दावों [ 11 ] के कुछ समय के लिए जागरूक रह सकते हैं ।
मध्य पृथ्वी halt -f
, के init
, telinit
systemctl
सही एक से तेजी से समाधान के लिए खोज ,
लेकिन इसी तरह बुद्धिमान।
systemctl --force --force poweroff # the most close to kill -9 1
systemctl --force poweroff # rough but still safe
sudo halt -f # rough
sudo telinit 0 # or 6 # safe
kill -SIGINT 1 # cause reboot as the reboot command
kill -SIGRTMIN+4 1 # cause shutdown as the halt command
कि आप सिस्टमड के अधीन हैं या नहीं, आपको सभी सही शडाउन प्रक्रियाओं को लागू किए बिना कंप्यूटर को बंद करने में सक्षम होना चाहिए या नहीं (और इसलिए बहुत तेजी से):
halt -f
: विकल्प को निर्दिष्ट करना-f
(ध्यान दें कि आपको -f
उपरोक्त प्रक्रिया के साथ शटडाउन प्रक्रिया से बचने की आवश्यकता है) sudo poweroff -f
या इसके साथ भी sudo reboot -f -h
। दरअसल हम शटडाउन से बचने के लिए man reboot
विकल्प -f
को निर्दिष्ट करने की आवश्यकता के बारे में (और समतुल्य) से पढ़ सकते हैं :
जब --force के साथ या रनलेवल 0 या 6 में कॉल किया जाता है , तो यह टूल रिबूट (2) सिस्टम को स्वयं कॉल करता है (REBOOTCOMMAND के तर्क के साथ) और सीधे सिस्टम को रिबूट करता है ।
अन्यथा यह केवल REBOOTCOMMAND तर्क को पारित किए बिना उपयुक्त तर्कों के साथ शटडाउन (8) टूल को आमंत्रित करता है।
-f, --force
शटडाउन (8) को लागू नहीं करता है और इसके बजाय वास्तविक कार्रवाई करता है जिसे आप नाम से उम्मीद करेंगे ।
इसके अलावा आप telinit
[ 2b ] (या init
सीधे) का उपयोग कर सकते हैं
sudo telinit 0 # or 6
रनवेवल बदलने के लिए init बताने के लिए ... लेकिन अगर ऐसा है तो सीधे इसे क्यों नहीं मारेंगे?
सिस्टमड के तहत आप नासमझ डबल विकल्प का उपयोग कर सकते हैं --force --force
systemctl --force --force poweroff
व्यवस्थित मैनुअल से पढ़ना [ 10 ]
-f, --force
जब सक्षम के साथ प्रयोग किया जाता है, तो किसी भी मौजूदा परस्पर विरोधी समन को ओवरराइट करें।
जब , या kexec के साथ उपयोग किया जाता है halt
, तोpoweroff
reboot
सभी इकाइयों को बंद किए बिना चयनित ऑपरेशन को निष्पादित करें। हालाँकि, सभी प्रक्रियाओं को जबरन मार दिया जाएगा और सभी फ़ाइल सिस्टम केवल पढ़ने या हटाने योग्य नहीं हैं। यह इसलिए तत्काल रिबूट का अनुरोध करने के लिए एक कठोर लेकिन अपेक्षाकृत सुरक्षित विकल्प है। अगर - ऑपरेशन के लिए दो बार निर्दिष्ट किया जाता है, तो उन्हें किसी भी प्रक्रिया को समाप्त किए बिना या किसी भी फाइल सिस्टम को अनमाउंट किए बिना तुरंत निष्पादित किया जाएगा। चेतावनी: निर्दिष्ट करना - इनमें से किसी भी ऑपरेशन के साथ दो बार लागू करने से डेटा हानि हो सकती है।
Ps> टेल JdeBP द बार्ड [ 7 ] से वेरिएंट के बारे में प्रेरणा लें ।