2012-08-22 3 views
6

मैं तीन फ़ाइलें यह पृष्ठभूमि में चलाने के लिए माना जाता है मैं टर्मिनल बंद करने के बाद। यह एक अंतहीन पाश में, मेरी दूसरी वेबसाइट की उपलब्धता की जांच करता है।एसएसएच के माध्यम से प्रक्रिया कैसे शुरू करें, तो यह चल रहा है? monitor.sh, जो अजगर स्क्रिप्ट शुरू होता है:</p> <pre><code>sudo python ./webCheck & sudo python ./apiCheck & </code></pre> <p>और otherones, webCheck & apiCheck:

मैं इसे काम नहीं कर सकता, मैं नोहअप की कोशिश कर रहा हूं, लेकिन सिंटैक्स सही नहीं हो सकता। वेब चेक को सुडो के साथ चलाना होगा। क्या शू स्क्रिप्ट में नोहुप भी शामिल नहीं है? मुझे लगता है कि monitor.sh सिर्फ दो अन्य शुरू करना है, ताकि किसी को नोह की आवश्यकता न हो।

यह कैसे करें?

+1

मुझे नहीं लगता कि इस प्रश्न में ec2 के लिए कुछ खास है, इसलिए मैं जांचूंगा [एसएसएच क्लाइंट बंद करने के बाद पृष्ठभूमि प्रक्रिया को रोकने से रोकें] (http://stackoverflow.com/q/285015/950912) – brc

उत्तर

12

आप उपयोग करने के लिए सक्षम होना चाहिए:

sudo nohup अजगर ./webCheck & sudo nohup अजगर ./apiCheck &

मुझे नहीं लगता कि अपने monitor.sh की आवश्यकता होगी, के बाद से यह होना चाहिए है दूसरे दो शुरू करने के लिए अपेक्षाकृत कम समय ले लो। हालांकि मैं सकारात्मक नहीं हूं अगर दो चेक मॉनिटर.श के बच्चे बन जाएंगे, जो एक मुद्दा हो सकता है।

+0

काम करता है, मैं टर्मिनल को मार सकता हूं और यह अभी भी चलता है। यह सूडो पीएस का उपयोग करने के बाद दिखाई नहीं दिया, लेकिन जब मैं सूडो पीएस ऑक्स करता हूं कम, यह दिखाता है! – Kokesh

+0

खुशी है कि यह काम किया! आप nneonneo की सिफारिश को भी देखना चाह सकते हैं। आप जो करने की कोशिश कर रहे हैं उसके आधार पर कार्यक्रम को निंदा करना बेहतर समाधान हो सकता है। – gsteiner

2

http://code.activestate.com/recipes/278731-creating-a-daemon-the-python-way/ अपने कार्यक्रम को डिमनीकृत करने के लिए एक नुस्खा के लिए देखें।

अनिवार्य रूप से, यह प्रोग्राम को टर्मिनल टर्मिनल से अलग करता है, जिससे इसे पृष्ठभूमि में एक डिमन के रूप में चलाने की इजाजत मिलती है।

संबंधित मुद्दे

 संबंधित मुद्दे