execप्रक्रिया शुरू करने के लिए उपयोग करना ठीक है, लेकिन इसे रोकते समय, यदि आपको किसी विशिष्ट स्क्रिप्ट या कमांड के सेट को चलाने की आवश्यकता है, तो आप pre-stopश्लोक का उपयोग कर सकते हैं ।
pre-stop exec shutdown.sh
मुझे लगता है कि आपने केवल एक निष्पादन श्लोक का उपयोग करने की कोशिश की है और यह काम नहीं किया, संभवतः इसलिए कि आपके डेमॉन को कुछ विशेष सफाई की आवश्यकता है। ध्यान दें कि अच्छी तरह से व्यवहार किए गए डेमोंन्स को काम बंद होने पर अपस्टार्ट से एक संकेत प्राप्त करना चाहिए, और यदि वे सिग्नल को उचित रूप से संभालते हैं तो अतिरिक्त सफाई की आवश्यकता नहीं होनी चाहिए।
नौकरी रोकना इसमें SIGTERM को भेजना है। यदि ऐसा कुछ है जो SIGTERM से पहले किया जाना है, तो इसे यहाँ करें। यकीनन, सेवाओं को बहुत अच्छी तरह से SIGTERM को संभालना चाहिए, इसलिए यह आवश्यक नहीं होना चाहिए।
अगर वहाँ कुछ भी महत्वपूर्ण है, डिस्क के लिए एक फ्लश की तरह, और मार समय बढ़ाने के लिए एक विकल्प नहीं है, पूर्व रोक यह करने के लिए एक बुरी जगह नहीं है
जब आप नौकरी रोकते हैं तो पूरे वर्कफ़्लो के लिए इस अनुभाग को पढ़ें । जब प्री-स्टॉप चलाया जाता है, तो नोटिस करें और बाद में प्रक्रिया को एक सिग्नल कैसे भेजा जाता है, जो कि सामान्य रूप से नौकरियों को रोकने के लिए अपस्टार्ट हैंडल करता है।
मेरा स्रोत आधिकारिक उपस्टार्ट कुकबुक है: http://upstart.ubuntu.com/cookbook/