जवाबों:
आप /etc/rcX.d/ के तहत सिम्लिंक का नाम बदलकर आदेश बदल सकते हैं, जहां x आपका रन स्तर होगा।
आपको Sxx या Kxx से शुरू होने वाली फ़ाइलों का एक गुच्छा दिखाई देगा। S लिंक को स्टार्टअप के दौरान पता लगाया जाता है जबकि K को शटडाउन के लिए पार्स किया जाता है। यहाँ xx आदेश का प्रतिनिधित्व करता है।
लेकिन यह आदेश एक कारण के लिए सेट किया गया है, इसलिए उन्हें बदलते समय सावधान रहें। उदाहरण के लिए। नेटवर्किंग सबसिस्टम शुरू होने के बाद ही ntpd शुरू होना चाहिए।
इसे मैन्युअल रूप से करने के बजाय, अन्य उत्तरों में सुझाए गए अनुसार, आप init स्क्रिप्ट को भी बदल सकते हैं। हेडर के लिए ऐसी लाइन जोड़ें:
# chkconfig: 35 90 10
यह chkconfig
रनलेवल 3 और 5 के लिए सेवा को जोड़ने का निर्देश देगा , जिसमें 90 की शुरुआती स्थिति और 10 की मार की स्थिति होगी।
chkconfig off servicename && chkconfig on servicename
आप अपने रनवे और आरडीडी निर्देशिकाओं के बारे में थोड़ा पढ़ना चाहते हैं । R.d निर्देशिकाओं के अंदर आप S20apache K10apache की तरह S और K लिंक पा सकते हैं, जो मूल रूप से स्टार्टअप / स्क्रिप्ट को बंद करने का आदेश देता है।
इस आर्किटेक्चर पर कुछ बदलाव किए जा रहे हैं, लेकिन अधिकांश लाइनेक्स अभी भी इसका उपयोग कर रहे हैं।
rcorder
कुछ समय के लिए आसपास रहे हैं।
svc
, लेकिन xml सामान के बिना कर सकता है
यदि आप यहां पहुंचे हैं, तो संभावना है कि आपके पास दो सेवाएं हैं जहां एक दूसरे पर निर्भर करता है लेकिन, क्योंकि वे गलत क्रम में शुरू कर रहे हैं, निर्भरता वाला व्यक्ति शुरू करने में विफल है। सिम्बलिंक को संपादित करने के बारे में सुझाव, जानकारीपूर्ण है कि स्टार्टअप क्रम कैसे चलता है, और यह तब तक ठीक रहेगा जब तक कोई आपकी सेवा में "chkconfig" नहीं कर देता, जिस बिंदु पर सहानुभूति फिर से बनाई जाएगी क्योंकि वे मूल रूप से थे। वास्तव में, आप init स्क्रिप्ट स्तर पर समस्या से निपटना चाहते हैं, जो वास्तव में वैसे भी करने के लिए बहुत कम गड़बड़ है। यह अलग-अलग रनवे के अनुरूप भी होगा। आपको शायद उत्तर # 4 में सुझाई गई "# chkconfig" पंक्ति जोड़ने की आवश्यकता नहीं होगी क्योंकि वहाँ पहले से ही इसी तरह की रेखा होगी।
मैं MySQL डेटाबेस बैकएंड (mysqld) के साथ Openldap (थप्पड़) चलाने वाले सर्वर का एक उदाहरण का उपयोग करूँगा। उस जोड़ी को कॉन्फ़िगर करना, और आप क्यों करना चाहते हैं, एक पूरी कहानी है।
बूट करने पर, Openldap शुरू होने में विफल रहता है क्योंकि यह MySQL पर निर्भर करता है और स्टार्टअप अनुक्रम ने इसे शुरू करने की कोशिश की है - थप्पड़ की स्थिति 27 है और mysqld की स्थिति 64 है
/Etc/rc3.d/ में प्रासंगिक सिमलिंक हैं
S27slapd -> ../init.d/slapd
and
S64mysqld -> ../init.d/mysqld
मैं दो init स्क्रिप्ट्स में निर्धारित मानों की तलाश करता हूं:
[root ~]# grep chkconfig /etc/rc.d/init.d/mysqld
# chkconfig: - 64 36
[root ~]# grep chkconfig /etc/rc.d/init.d/slapd
# chkconfig: - 27 73
मैं /etc/rc.d/init.d/slapd में chkconfig लाइन को संपादित करने के लिए /etc/rc.d/init.d/mysqld (जो मैंने 85 चुना) में से एक से अधिक है।
[root ~]# grep chkconfig /etc/rc.d/init.d/slapd
# chkconfig: - 85 73
मैं "chkconfig slapd on" करता हूं और सिमिलिंक्स को रीचेक करता हूं
[root ~]# chkconfig slapd on
[root ~]# ls -l /etc/rc3.d/ | grep mysqld
lrwxrwxrwx 1 root root 16 Dec 10 13:45 S64mysqld -> ../init.d/mysqld
[root ~]# ls -l /etc/rc3.d/ | grep slapd
lrwxrwxrwx 1 root root 15 Apr 28 14:18 S85slapd -> ../init.d/slapd
अब, जब यह सर्वर शुरू होता है, तो mysqld थप्पड़ से पहले शुरू होता है और दुनिया के साथ सब ठीक होता है।