Apache / httpd बूट पर स्वचालित रूप से शुरू नहीं हो रहा है


11

मेरे पास Apache2 Amazon Linux AMI रिलीज़ 2012.03 पर स्थापित है। मैं इसे मैन्युअल रूप से ठीक शुरू करने में सक्षम हूं, बिना किसी त्रुटि के उपयोग के /etc/init.d/httpd start। हालाँकि, यह स्वचालित रूप से शुरू नहीं होता है जब मशीन को बूट किया जाता है।

ऐसा प्रतीत होता है कि मेरी rc * .d निर्देशिकाओं में सब कुछ ठीक से कॉन्फ़िगर किया गया है। यहाँ का परिणाम है find /etc/rc.d -name "*httpd*" | xargs ls -l:

-rwxr-xr-x 1 root root 3371 Feb 16  2012 /etc/rc.d/init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc0.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc1.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc2.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc3.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc4.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc5.d/K15httpd -> ../init.d/httpd
lrwxrwxrwx 1 root root   15 Apr 14  2012 /etc/rc.d/rc6.d/K15httpd -> ../init.d/httpd

मैं समझता हूं कि मैं /etc/init.d/httpd startकमांड डाल सकता हूं /etc/rc.local, लेकिन क्या वह वर्कअराउंड नहीं है? यह अपने आप शुरू क्यों नहीं हो रहा है? आर सी में अन्य सामान * .d निर्देशिका बूटअप (मंगोल, पोस्टफिक्स, आदि) पर ठीक शुरू होता है। धन्यवाद!


माइक, मुझे लगता है कि आप अमेज़न AMI डिस्ट्रो के साथ chkconfig --list और chkconfig का उपयोग कर सकते हैं।
जेसनअज़े

chkconfig --listदिखाता है httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off... तो मैं उन्हें कैसे चालू करूं? धन्यवाद!
माइक सियालॉविक

जवाबों:


34

रनवेवेल्स को प्रबंधित करने के लिए chkconfig का उपयोग करें जिसके तहत आप यह सेवा शुरू करना चाहते हैं।

आमतौर पर chkconfig httpd पर काम करता है।


क्या होगा अगर वह काम नहीं करता है?
पॉल शेल्डरके

2
@PaulSheldrake आप एक OS चला रहे हैं जो किसी भी संयोग से systemd का उपयोग करता है? उदाहरण के लिए, Red Hat 7 परिवार में लिनक्स अब systemd का उपयोग करता है। उस मामले में आप चाहते हैंsystemctl enable httpd
जेसनअज़्ज़ेज़

@ जेसनअज़्ज़ मैं सेंटोस 6.5 का उपयोग कर रहा हूं।
पॉल शेल्डरके

@JasonAzze आप एक बार देख लेने में रुचि रखते हैं github.com/paulsheldrake/vagrant/blob/master/scripts/...
पॉल Sheldrake

@PaulSheldrake विफलता मोड क्या है? यदि आप जारी करते हैं chkconfig --list httpdकि यह रनवेवेल्स 2-5 के लिए "ऑन" है? मुझे आश्चर्य है कि अगर httpd शुरू करने की कोशिश कर रहा है, लेकिन खराब httpd कॉन्फिग के कारण तुरंत रुक गया है। क्या लॉग में सबूत है?
जेसनएजेज़

7

आपके पास कोई "S" लिंक नहीं है। सभी "के" केवल शटडाउन हैं। उसी नाम के लिंक जोड़ें, K को S के साथ बदलें।

"सामान्य तौर पर, सिस्टम" S "अक्षर से शुरू होने वाली कमांड को शुरू करता है और" K "अक्षर से शुरू होने वाले कमांड को रोकता है। अक्षर" K "से शुरू होता है, केवल तभी चलता है जब सिस्टम उच्च से रन स्तर को बदल रहा है एक निचला स्तर। कमांड "S" अक्षर से शुरू होता है जो सभी मामलों में चलता है।

अगर chkconfig का उपयोग कर रहे हैं, तो "man chkconfig" देखें। आपके मामले के लिए:

chkconfig --level 2345 httpd on

करना चाहिए।

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