लिनक्स में स्टार्टअप पर चल रहा कार्यक्रम बंद करो


29

मैं लिनक्स में स्टार्टअप पर चलने वाले प्रोग्राम को कैसे रोकूं। मैं स्टार्टअप से कुछ एप्स को हटाना चाहता हूं ताकि उन्हें supervisordउदाहरण के लिए apache2 द्वारा प्रबंधित किया जा सके


यही कारण है कि मैंने इसे टैग नहीं किया है ... मैं सभी विविधताओं की तलाश कर रहा हूं क्योंकि मैं काफी अलग-अलग डिस्ट्रोस के साथ काम करता हूं।
फ्रोज़ेन्स्की

जवाबों:


29

अपने डिस्ट्रो के आधार पर सिस्टम सेवाओं को सक्षम / अक्षम करने के लिए chkconfig या update-rc.d टूल का उपयोग करें।

एक redhat / suse / mandrake शैली प्रणाली पर:

sudo chkconfig apache2 off 

डेबियन पर:

sudo update-rc.d -f apache2 remove

अधिक जानकारी के लिए उनके मैन पेज चेकआउट करें।


आपको डेबियन आधारित डिस्ट्रोस पर -f (मुझे यह बल क्यों है) की आवश्यकता है?
फ्रोज़ेन्स्की 20

2
यहां खेलने के लिए फाइलों के दो सेट हैं। आपको /etc/init.d/ में वास्तविक init स्क्रिप्ट मिली है और आपके पास इसके रनवेवेल डायरेक्टरी /etc/rcrunlevel.d/ में लिंक हैं। ये लोग /etc/init.d/ में स्क्रिप्ट को इंगित करते हैं, यदि आप -f अपडेट-rd.d का उपयोग नहीं करते हैं, तो UNLESS स्क्रिप्ट को विफल नहीं करेगा /etc/init.d/ में पहले ही हटा दिया गया है। यदि आप का उपयोग करते हैं -f अद्यतन- rc.d लिंक फ़ाइलों को ठीक से हटा देगा, भले ही /etc/init.d/ स्क्रिप्ट हटा दी गई हो या नहीं।
जैकसन

आह, यह बहुत मायने रखता है, मैं भूल गया था कि रनलेवल स्क्रिप्ट सिर्फ init स्क्रिप्ट के लिंक थे। अतिरिक्त स्पष्टीकरण के लिए धन्यवाद।
फ्रोज़ेन्स्की

6

यदि आप एक आधुनिक उबंटू प्रणाली और कुछ अन्य विकृतियों के साथ काम कर रहे हैं, तो आपको पारंपरिक init स्क्रिप्ट और अपवर्ड स्क्रिप्ट के संयोजन से निपटना पड़ सकता है। Init स्क्रिप्ट प्रबंधित करना अन्य उत्तरों द्वारा कवर किया जाता है। बूट पर स्टार्ट अप सेवा को रोकने का एक तरीका निम्नलिखित है:

# mv /etc/init/servicename.conf /etc/init/servicename.conf.disabled

इस विधि के साथ समस्या यह है कि यह आपको सेवा का उपयोग शुरू करने की अनुमति नहीं देता है:

# service start servicename

इसका एक विकल्प यह है कि servicename.confआप अपने पसंदीदा संपादक में फाइल खोलें और जो भी लाइनें शुरू हों, उन पर टिप्पणी करें:

start on

यही है, इसे बदलें

#start on ...

जहां "..." जो कुछ भी पहले "शुरू" पर था। इस तरह, जब आप इसे फिर से सक्षम करना चाहते हैं, तो आपको यह याद रखने की ज़रूरत नहीं है कि "स्टार्ट ऑन" पैरामीटर क्या थे।

अंत में, यदि आपके पास अपस्टार्ट का नया संस्करण है, तो आप विन्यास फाइल के अंत में "मैनुअल" शब्द जोड़ सकते हैं। आप इसे सीधे शेल से कर सकते हैं:

# echo "manual" >> /etc/init/servicename.conf

यह फ़ाइल में पहले के वाक्यांशों पर किसी भी "शुरुआत" को नजरअंदाज करने का कारण होगा।


2

हाल ही में फेडोरा और फ्यूचर आरएचईएल सिस्टम पर

systemctl disable httpd.service

httpd सेवा को अक्षम कर देगा


धन्यवाद! मैंने कई तरीके आजमाए थे, लेकिन इस systmctlकमांड ने ठीक काम किया।
प्रिय.जा.जेउस

1

सभी स्टार्टअप सेवाओं को सूचीबद्ध करने के लिए

    systemctl

किसी सेवा को स्टार्ट अप पर चलने से रोकने के लिए

    sudo systemctl disable servicename

उदाहरण के लिए अगर हमें स्टार्टअप पर ssh सर्वर चलाना बंद करना है

    sudo systemctl disable sshd.service

हम इसका उपयोग करके इसे फिर से सक्षम कर सकते हैं

    sudo systemctl enable sshd.service

लगभग हर लिनक्स वितरण बूटस्ट्रैपिंग स्टार्टअप सेवाओं के लिए सिस्टमड का उपयोग करता है। तो ऊपर के आदेश अधिकांश डिस्ट्रोस के लिए काम करते हैं।


यू एंड एल में आपका स्वागत है, और आपके योगदान के लिए धन्यवाद! मैं यह बताना चाहता हूं कि यह प्रश्न अब लगभग आठ साल पुराना है, इसलिए स्वीकृत उत्तर समय के लिए सही था। Systemctl का उपयोग करना अब सही हो सकता है , लेकिन यह एक अलग प्रश्न के लिए सही है ।
जेफ स्कालर

@ विस्तृत विवरण के लिए धन्यवाद। इसने मुझे यह समझने में मदद की कि मेरे एक्सयूबंटू में बूट स्टार्टअप कैसे काम करता है।
प्रेय.बी.जेस 15

0

Slackware और Arch linux में बूट को रोकने / शुरू करने के समान तरीके हैं, ऊपर दिए गए Ubuntu और Redhat- शैली के उदाहरणों से अलग।

Slackware और Arch linuxes दोनों में, sh लिपियों की निर्देशिका में मौजूद है /etc/rc.d, आमतौर पर डेमॉन प्रति स्क्रिप्ट, या सबसिस्टम प्रति एक स्क्रिप्ट।

उदाहरण के लिए, स्लैकवेयर अपाचे वेब सर्वर को एक स्क्रिप्ट के साथ शुरू करता है /etc/rc.d/rc.httpd, जिसे सिस्टम स्टार्टअप के दौरान उचित समय पर "स्टार्ट" के तर्क के साथ बुलाया जाता है। आर्क लाइनक्स में अलग-अलग नाम वाली स्क्रिप्ट हैं, लेकिन एक ही तरह की बात चलती है।

स्लैकवेयर पर सिस्टम बूट के दौरान शुरू करने से कुछ प्रक्रिया रखने के लिए, आप बस उपयुक्त स्क्रिप्ट को /etc/rc.d में निष्पादित नहीं करते हैं। अगले बूट पर शुरू से अपाचे रखने के लिए:

chmod -x /etc/rc.d/rc.httpd

बूट पर आरंभ हुई अपाचे को रोकने के लिए: /etc/rc.d/rc.httpd stop आपको रूट करने की आवश्यकता होगी।

आर्क थोड़ा अधिक जटिल है। फ़ाइल /etc/rc.conf, एक शेल स्क्रिप्ट, एक सरणी DAEMONS है। Apache को बूट से शुरू करने के लिए, आप इस लाइन को /etc/rc.conf में बदल देंगे:

DAEMONS=(hal syslog-ng network netfs crond alsa sshd httpd ntpd postgresql)

इस लाइन के लिए:

DAEMONS=(hal syslog-ng network netfs crond alsa sshd ntpd postgresql)

पहले से ही निष्पादित अपाचे को रोकने के लिए, आप /etc/rc.d/httpd stopरूट के रूप में निष्पादित करेंगे।


0

Ubuntu 10.04 पर आप GUI से कुछ स्टार्टअप प्रोग्राम को नियंत्रित कर सकते हैं।

SystemPreferencesStartup Applications

स्टार्टअप अनुप्रयोग प्राथमिकताएं


1
मूल छवि अब नहीं है।
tshepang

-1

1) आप कीबोर्ड पर सुपरकी टैप करें 2) 'स्टार्टअप एप्लिकेशन' 3 के लिए खोज करें) आप कौन से प्रोग्राम को 4 को अक्षम करना चाहते हैं, इस बात का जवाब दें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.