sysvinit पोस्टफ़िक्स स्टार्टअप स्क्रिप्ट - केवल "स्थिति" तर्क के साथ कहा जाता है


0

मुझे बूट पर पोस्टफ़िक्स शुरू न होने की समस्या है। boot.log कोई भी जानकारी नहीं दिखाता है। बाद में उपसर्ग सेवा शुरू करना उम्मीद के मुताबिक काम करता है।

मैंने स्टार्टअप स्क्रिप्ट में डिबग जानकारी जोड़ी। निम्नलिखित पंक्तियों को जोड़ा गया था:

exec >> /var/log/postfix-init.log 2>&1
set -x +v
echo SERVICE START INITIATED AT: `date +"%Y-%m-%d_%H:%M:%S"`
echo $@

इससे मुझे यह जानकारी मिली कि स्क्रिप्ट को "प्रारंभ" तर्क के साथ कभी नहीं बुलाया गया था। यह केवल "स्टेटस" तर्क के साथ स्टार्टअप पर दो बार कॉल करता है, इस प्रकार वास्तव में सेवा शुरू नहीं करता है।

मेरा सिस्टम निम्नलिखित है:

root@...:/#lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.5 LTS
Release:    12.04
Codename:   precise

जैसा कि मैंने पहले ही कहा है, सेवा को शुरू करना service postfix startया उसके साथ invoke-rc.d postfix startकाम करना, लेकिन बूट समय पर शुरू करने के लिए मुझे पोस्टफ़िक्स की आवश्यकता है।

रनलेवल को इसके साथ जोड़ा गया update-rc.d postfix defaults:

# ls /etc/rc*.d/*postfix
/etc/rc0.d/K20postfix  /etc/rc2.d/S20postfix  /etc/rc4.d/S20postfix  /etc/rc6.d/K20postfix
/etc/rc1.d/K20postfix  /etc/rc3.d/S20postfix  /etc/rc5.d/S20postfix

इसके अलावा, मैंने इसे हटाने ( update-rc.d -f postfix remove) और जोड़ने की कोशिश की है। मैं वास्तव में उत्सुक हूं कि स्टार्टअप पर "प्रारंभ" तर्क के साथ सेवा को क्यों नहीं बुलाया गया। मैं यह अनुमान लगा रहा हूं कि यह यहाँ है, लेकिन इसे कैसे हल किया जाए, इस पर कोई विचार नहीं है।

किसी भी तरह की सहायता का स्वागत किया जाएगा! मैंने पहले ही इस पर घंटों बर्बाद किया।

संपादित करें: मैंने ps -faxuअपने डिबग संदेशों में भी जोड़ा और पता चला, कि स्थिति को रिज़ॉल्वॉन्फ़ से बुलाया जाता है। तो वास्तव में समस्या यह है, कि पोस्टफिक्स इनिट स्क्रिप्ट स्टार्टअप पर कभी निष्पादित नहीं होती है।

जवाबों:


0

समस्या एक कस्टम इनिट स्क्रिप्ट थी जिसे पोस्टफ़िक्स इनिट स्क्रिप्ट से पहले निष्पादित किया गया था, जिसे कभी भी समाप्त नहीं किया गया था।

इससे भी बेहतर डिबग लाइन, जिसने मुझे और अधिक जानकारी दी कि क्या चल रहा था:

# remember to set shebang to bin/bash
exec > >(tee -a /var/log/postfix-init.log)
exec 2>&1
set -x +v
echo
echo SERVICE CMD INITIATED AT: `date +"%Y-%m-%d_%H:%M:%S"`
echo $@
ps faxu

लेकिन अंत में मुझे जो अंतिम संकेत दिया गया वह यह था कि बूट स्क्रिप्ट में बताई गई कस्टम स्क्रिप्ट के बाद कोई अन्य स्क्रिप्ट नहीं चलाई गई थी

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