इस गाइड में, हम सेवाओं को सूचीबद्ध करने और उनकी स्थिति की जांच करने के लिए systemctl का उपयोग करने का तरीका बताते हैं। हम systemctl के कुछ अन्य उपयोगों को भी कवर करेंगे।
run_init . से आ रहा है सेवा, systemctl ताजी हवा की सांस है। मुझे यकीन है कि मेरे गलत होने के कई कारण हैं और मैंने इसके पक्ष और विपक्ष में बहसें सुनी हैं और कई बार अपना विचार बदला है। काम पर रोजाना इसका इस्तेमाल करने के बाद, मैं अब सिस्टमक्टल कैंप में हूं। कमांड की भाषा अब और अधिक स्वाभाविक लगती है। दिन-प्रतिदिन कार्यात्मक स्तर पर, मुझे यह पसंद है। मैंने बदलाव का स्वागत किया है, और जब भी मैं किसी पुराने सिस्टम पर काम करता हूं तो वापस जाने का विरोध करता हूं। आइए systemctl और यह कैसे काम करता है, इस पर नज़र डालते हैं।
Systemctl स्थिति
systemctl का पहला और सबसे महत्वपूर्ण उपयोग सेवा की स्थिति की जाँच करना है। यहाँ सिंटैक्स है:
#systemctl command argument #systemctl status service
systemctl स्थिति सेवा
आपकी एटीडी सेवा की जानकारी है। कुछ समय पहले शुरू हुआ (मुझे रीबूट करना चाहिए...), और सक्रिय। पीआईडी वहां अगर मुझे इसे मारने की ज़रूरत है, हालांकि हम सिस्टमक्टल के साथ भी कर सकते हैं। तो क्या जांचना है? एक त्वरित और आसान कदम, विफल सेवाओं की जाँच करें।
#systemctl --failed --type=service
systemctl – विफल – प्रकार =सेवा
इनकी जांच करें और निर्धारित करें कि क्या यह सामान्य है। आप सामान्य कैसे जानते हैं? चल रही सेवाओं की जाँच करें:
#systemctl -t service --state=active
systemctl -t service –state=active
जानकारी पढ़ने के बाद इसे सेव कर लें।
#systemctl -t service --state=active >date$systemhealth.log
बाद के दिनों में, डिफ चेक करें।
#systemctl -t service --state=active > date$systemhealth.log
#diff day1systemhealth.log day2systemhealth.log
diff day1systemhealth.log day2systemhealth.log
वहाँ तुम जाओ, अब तुम्हें पता है कि क्या कुछ ऑनलाइन होना चाहिए था। यदि आप अपने आप को एक नई प्रणाली से परिचित कर रहे हैं, तो यहां जांच के लिए सेवाओं का एक अच्छा सेट है।
दीपक
आइए बुनियादी स्टैक को देखें, हममें से अधिकांश शुरुआती दिनों में तैनात करना सीखते हैं। ओह, और यदि आप उस सेवा का नाम नहीं जानते हैं जिसे आप ढूंढ रहे हैं। कोई चिंता नहीं। systemctl के लिए टैब पूर्णता सक्षम है। बस अपाचे में टाइप करें, टैब को दो बार दबाएं, और चुनें कि आपको क्या चाहिए।
systemctl स्थिति अपाचे
#systemctl status apache2.service mongo mysql
systemctl स्थिति apache2.service mongo mysql
अधिक विस्तार में जाना चाहते हैं?
#systemctl list-dependencies apache2.service
systemctl सूची-निर्भरता apache2.service
यह सेवा की सभी निर्भरताओं को दर्शाता है। और आपको प्रत्येक की स्थिति एक अनुकूल रंगीन बिंदु के साथ देता है। अच्छे के लिए हरा, असफल के लिए लाल।
नेटवर्क
इसके बाद, सुनिश्चित करें कि नेटवर्क काम कर रहा है।
#systemctl status networking ufw wpa
systemctl स्थिति नेटवर्किंग ufw wpa
यदि यह अब तक स्पष्ट नहीं है, तो systemctl की मेरी पसंदीदा विशेषता एक साथ कई सेवाओं को नियंत्रित कर रही है। और स्वचालित रूप से कम में पाइप किया गया।
सेवाओं को नियंत्रित करना
ठीक है, तो अब आपके पास कुछ विफल सेवाओं की पहचान हो गई है। या आपने सेवा परिवर्तन लागू किया है। जैसे अपनी sshd.config फाइल को अपडेट करना, और उसे फिर से लोड करना होगा। या आप एक नई सेवा जोड़ रहे हैं, या इसे पूरी तरह से हटा रहे हैं?
यह systemctl के साथ सरल है, और आपके पास दो विकल्प हैं। पुनः लोड करें और पुनरारंभ करें . रीलोड बस नई कॉन्फ़िग फ़ाइल पढ़ता है। पुनरारंभ किसी भी कनेक्शन को छोड़ देता है और कॉन्फ़िगरेशन फ़ाइल को पुनः लोड करता है। आपकी आवश्यकता के आधार पर, दोनों के उपयोग के अपने-अपने कारण हैं।
पुनरारंभ करें और पुनः लोड करें
#systemctl restart atd #systemctl status atd
systemctl रीस्टार्ट atd
वहाँ हम जाते हैं, पुनः आरंभ। नई जानकारी जोड़ी गई। मजबूत लोड संतुलित सिस्टम के साथ, मैं पुनरारंभ करना पसंद करता हूं। मुझे पता है कि कनेक्शन फिर से चलेंगे और डाउनटाइम न के बराबर होगा। कम से कम, लगभग न के बराबर। और मुझे कुछ सिस्टम या सेवाओं के बारे में चिंता करने की ज़रूरत नहीं है जो पुनः लोड के साथ अच्छी तरह से काम नहीं कर रहे हैं। फिर भी, फिर से शुरू/पुनः लोड करने से पहले हमेशा उपयोगकर्ताओं और ग्राहकों को सूचित करें।
रोकें, शुरू करें और मारें
अगर आपको किसी सेवा को रोकना या बंद करना है तो systemctl वह भी कर सकता है।
#systemctl stop atd #systemctl start atd #systemctl kill atd #systemctl start atd
बस, फिर से शुरू करना।
systemctl स्थिति एटीd
सक्षम और अक्षम करना
नई सेवाएं जिन्हें आप बूट पर शुरू करना चाहते हैं, उन्हें सक्षम करने की आवश्यकता है।
#systemctl enable <service>
वहां हम जाते हैं, आपका सिस्टम अब समझता है कि उसे बूट पर नई सेवा शुरू करने की आवश्यकता है। अगर आप रिबूट को छोड़ना चाहते हैं, तो आगे बढ़ें और इसे अभी शुरू करें।
#systemctl disable <service>
और वहाँ हम जाते हैं। सेवा बंद कर दी। अगर आप इसे हटाना चाहते हैं, तो आपको इसे रोकना होगा और फिर अनइंस्टॉल करना होगा।
निष्कर्ष
इतना ही। इसके लिए बहुत कुछ नहीं है। एक ही उद्देश्य के लिए एक ही सेवा, आपके सिस्टम को नियंत्रित करना। और जानें शेल कमांड और अपने सिस्टम को कैसे व्यवस्थित करें।