विंडोज सर्विस रिबूट के बाद स्वतः शुरू नहीं होती है?


10

हमें .NET में कुछ विंडोज सेवाएं लिखी गई हैं। वे मिमी mmc के भीतर मैन्युअल रूप से ठीक करना शुरू करते हैं, लेकिन स्वचालित पर सेट होने के बावजूद, मशीन को पावर (या रिबूट करने) पर वे कभी भी शुरू नहीं करते हैं।

अद्यतन ईवेंट लॉग में, "xyz प्रारंभ" देखने के बजाय, अन्य सभी सेवाओं को शुरू करने के साथ, मैं बस देखता हूं "xyz सेवा बंद अवस्था में प्रवेश कर गई है।" और एक अलग त्रुटि जो कहती है कि "एक टाइमआउट (30000 मिलीसेकंड) तक पहुँच गया था, जबकि slsvc सेवा से लेनदेन की प्रतिक्रिया की प्रतीक्षा कर रहा था।"

यदि मैं मैन्युअल रूप से उन्हें शुरू करता हूं, तो मुझे उम्मीद के अनुसार इवेंट लॉग में एक सामान्य प्रविष्टि मिलती है, और सब ठीक है - जब तक कि अगले विंडोज अपडेट पैच जो एक रिबूट को मजबूर करता है और सभी सेवाएं फिर से बंद हो जाती हैं।

कोई विचार? मैंने उन्हें बिना किसी स्पष्ट अंतर के विलंबित प्रारंभ में स्थापित करने का प्रयास किया है।


मुझे एक बार कुछ अनुसूचित कार्यों के साथ एक समान समस्या थी, जिसे मैंने अंततः खोजा कि मैं उपयोगकर्ता नाम बदलकर कार्य को फिर से बना सकता हूं जैसे कि इसे बनाया गया था। मैंने पाया कि मैं केवल हटाने और कार्यों को फिर से बनाने के द्वारा समस्या को आसानी से ठीक कर सकता हूं। यह निश्चित रूप से इसके साथ एक समान दृष्टिकोण के लायक है - सेवा को हटाने और इसे फिर से बनाने का प्रयास करें। यह मदद कर सकता है यदि आपका यकीन नहीं है कि कैसे करना है। FYI करें, निर्धारित कार्य समस्या कोई और नहीं होती है, मुझे लगता है कि कुछ बिंदु पर कुछ अद्यतन इसे निर्धारित करते हैं।
डेविएरैंडम

मैं सोच रहा था कि क्या वे शुरू करने में विफल रहे हैं क्योंकि वे एक अन्य सेवा पर निर्भर हैं (जो अभी शुरू नहीं हुई है)। क्या आप सिस्टम लॉग के भीतर सेवा शुरू करने में विफलता देख सकते हैं?
नवमांश

@DaveRandom वास्तव में हर बार जब हम एक नया संस्करण तैनात करते हैं, तो ऐसा होता है, इसलिए ऐसा प्रतीत नहीं होता है कि इस समस्या को हटाने / जोड़ने से दुर्भाग्य से हल होता है
जेम्स क्रॉली

कुछ नए विवरणों के साथ @newmanth प्रश्न अपडेट किया गया - पता चला कि इवेंट लॉग एंट्रीज थीं जो मुझे याद आ गईं
जेम्स क्रॉली

मैंने रोब के उत्तर में आपकी टिप्पणी पर ध्यान दिया कि .NET एकमात्र निर्भरता है। क्या आप जानते हैं कि डेवलपर्स ने सेवा के विकास में किसी तीसरे पक्ष के एपीआई का उपयोग किया था? यदि हां, तो शायद कुछ लाइसेंसिंग तंत्र है जिसे अवरुद्ध किया जा रहा है?
नवमीं

जवाबों:


3

उसके लिए एक फिक्स है। देखें: http://support.microsoft.com/kb/922918

बात यह है, एक सेवा की आवश्यकता हो सकती है ldap या किसी अन्य रिमोट एक्सेस की वजह से देरी का सामना करना पड़ रहा है। यह विशेष रूप से तब हो सकता है जब सर्वर शुरू हो रहा हो। विलंब का विस्तार करके आप यह सुनिश्चित कर सकते हैं कि सेवा शुरू हो जाएगी।

इस सेवा को शुरू करने में इतना समय क्यों लगता है, इसका निवारण करना बेहतर होगा। क्या आपका पर्यावरण अनियंत्रित है? क्या आपको उस सेवा पर प्रदर्शन समस्याएँ मिली हैं, जो सेवा शुरू होने में देरी हो रही है?


विशेष रूप से शुरू होने वाली सेवा का कैसे निवारण किया जा सकता है? क्या विस्तृत लॉगिंग को सक्षम करने का कोई तरीका है?
केनी एविट

1

जब आप कहते हैं कि "हमें कुछ विंडोज सेवाएं मिली हैं" तो आपका क्या मतलब है? मुझे सुझाव है कि वे आंतरिक रूप से आपके संगठन के किसी व्यक्ति द्वारा बनाए गए हैं? यदि ऐसा है तो आप उन्हें किसी और की तुलना में यहां डिबग करने के लिए बेहतर स्थिति में हैं - इन सेवाओं की खिड़कियों के घटकों पर क्या निर्भरता है और क्या आपके प्रोग्रामर इन सेवाओं की उपलब्धता के लिए परीक्षण करने और अपनी सेवाओं के शुरू होने पर उनके ऑनलाइन आने का इंतजार करने पर विचार करते हैं। ?

क्या आपने इन सेवाओं को सॉफ़्टवेयर लाइसेंसिंग सेवा की निर्भरता के रूप में स्थापित करने पर विचार किया है (जो कि slsvc है)?

से http://support.microsoft.com/kb/193888

एक नई निर्भरता बनाने के लिए, उस सेवा का प्रतिनिधित्व करने वाले उपकुंजी का चयन करें जिसे आप विलंब करना चाहते हैं, संपादन पर क्लिक करें और फिर मूल्य जोड़ें पर क्लिक करें। एक नया मान नाम "DependOnService" (उद्धरण चिह्नों के बिना) REG_MULTI_SZ के डेटा प्रकार के साथ बनाएं और फिर ठीक पर क्लिक करें। जब डेटा संवाद बॉक्स प्रकट होता है, तो प्रत्येक पंक्ति के लिए एक प्रविष्टि के साथ इस सेवा से पहले शुरू करने के लिए पसंद की जाने वाली सेवाओं के नाम या नाम लिखें और फिर ठीक पर क्लिक करें।

डेटा संवाद बॉक्स में आपके द्वारा दर्ज की जाने वाली सेवा का नाम उस सेवा का सटीक नाम है जैसा कि सेवा कुंजी के तहत रजिस्ट्री में दिखाई देता है।

जब कंप्यूटर शुरू होता है, तो यह इस प्रविष्टि का उपयोग यह सत्यापित करने के लिए करता है कि इस मूल्य में सूचीबद्ध सेवा या सेवाएं निर्भर सेवा शुरू करने का प्रयास करने से पहले शुरू की जाती हैं।


धन्यवाद Rob - वे आंतरिक हैं - लेकिन केवल निर्भरता .NET फ्रेमवर्क है, जो मुझे विश्वास नहीं है कि एक सेवा के रूप में चलता है। यह स्टार्टअप में कुछ और की आवश्यकता नहीं है ...
जेम्स क्रॉली

0

इसके साथ प्रयास करें:

ट्रिगर इवेंट को परिभाषित करने के लिए निम्न कमांड चलाएँ जो आपके वातावरण के अनुकूल हो। इस उदाहरण में, कमांड यह निर्धारित करती है कि एक होस्ट को आईपी पता दिया जाता है या नहीं, और फिर यह सेवा शुरू या बंद हो जाती है।

sc triginfo w32time start / networkon stop / networkoff

जहाँ w32Time आपकी सेवा का नाम है

या यह कोशिश करो

https://support.microsoft.com/en-us/kb/922918

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