कौन सी सेवाएँ चलनी चाहिए?
ईमानदार जवाब यह है कि कोई नहीं बता सकता, और जो भी सूची ऐसा दावा करती है वह ऐसी मशीन का वर्णन कर रही है जो आपकी नहीं है। जिसका जवाब दिया जा सकता है वह ज़्यादा संकरा और कहीं ज़्यादा उपयोगी है: इस मशीन पर क्या मेल नहीं खाता, और जब यह काम करती थी तब से क्या अलग है।
सामान्य सवाल का जवाब क्यों नहीं है
- सेट Windows के संस्करण, वर्ज़न और भूमिका के अनुसार अलग होता है। डोमेन कंट्रोलर, लैपटॉप और कंटेनर होस्ट लगभग हर चीज़ पर असहमत होते हैं, और एक के लिए लिखी गई सूची बाकियों के लिए गलत है।
- जो इंस्टॉल है उसका आधा Windows का नहीं है। ड्राइवर, एजेंट, अपडेट सेवाएँ, लाइसेंस डेमन: इनमें से हर एक को किसी चीज़ ने वहाँ रखा, और कोई सामान्य सूची नहीं जानती कि किसने।
- ज़्यादातर सेवाओं का रुका रहना ही अपेक्षित है। आधुनिक Windows जितना रजिस्टर करता है उसका एक छोटा हिस्सा ही शुरू करता है: बाकी किसी ट्रिगर का इंतज़ार करती हैं, जैसे डिवाइस का आना, पोर्ट का खुलना, डोमेन से जुड़ना, और रुका होना उनकी सही स्थिति है।
- “परफ़ॉर्मेंस के लिए इन्हें disable करें” वाली सूचियों से ही मशीनें टूटती हैं। जो सेवा निष्क्रिय दिखती है वही वह है जिसे कोई और चीज़ माँग पर शुरू करती है, और विफलता एक हफ़्ते बाद किसी असंबंधित जगह दिखती है।
वे सवाल जिनके जवाब हैं
जो चालू होना चाहिए और नहीं है
start:auto !status:running
Windows को इन्हें शुरू करने को कहा गया था और ये चल नहीं रहीं। स्वस्थ मशीन पर यह एक छोटी सूची है: कुछ प्रविष्टियाँ जो देर से शुरू होती हैं और फिर रुक जाती हैं। इसके अलावा कुछ भी देखने लायक है।
जो Disabled है और फिर भी चल रही है
mismatch:running
कॉन्फ़िगरेशन और स्थिति मेल नहीं खातीं। आमतौर पर किसी ने उसे रोके बिना disable कर दिया, और अगला रीस्टार्ट एक आश्चर्य होगा।
जो गायब फ़ाइल की ओर इशारा करती है
file:missing
ऐसा अनइंस्टॉल जिसने रजिस्ट्रेशन पीछे छोड़ दिया। तब तक हानिरहित जब तक कोई उसे शुरू करने की कोशिश न करे, और इस बात का सुराग कि इस मशीन पर पहले क्या था।
जिस पर किसी ने हस्ताक्षर नहीं किए
signed:no peruser:no
अपने आप में किसी चीज़ का प्रमाण नहीं, और पढ़ना शुरू करने की सही जगह। दूसरा शब्द प्रति-उपयोगकर्ता परिवारों को हटा देता है, जो वरना सूची को लगभग-एक-जैसी प्रविष्टियों से भर देते हैं।
जो सबसे मज़बूत विशेषाधिकार माँगती है
privilege:SeDebugPrivilege
एक विशेषाधिकार जो किसी प्रक्रिया को दूसरी किसी भी प्रक्रिया को खोलने देता है। मुट्ठी भर वैध सेवाएँ इसे माँगती हैं, और यह जानना ज़रूरी है कि आपकी मशीन पर कौन सी माँगती हैं।
जो ट्रिगर का इंतज़ार कर रही है
trigger:any status:stopped
इसलिए रुकी हुई कि अभी किसी ने उन्हें माँगा नहीं, इसलिए नहीं कि कुछ गलत है। यह जानना कि ये कौन सी हैं, वही तरीका है जिससे पहली सूची डरावनी नहीं रहती।
वह जो इन सबसे बेहतर है
मशीन से ही पूछें, जब वह काम कर रही थी।
मशीन के सेवा में जाने के दिन एक स्नैपशॉट लें। तब क्या यह चलना चाहिए बदलकर क्या यह तब चल रही थी जब सब काम करता था बन जाता है, एक सवाल आपकी मशीन के बारे में, किसी लेख की मशीन के बारे में नहीं।
bws snapshot create C:\baselines\web01.json --note "after the build"
# ... एक हफ़्ते, एक पैच या एक घटना के बाद
bws snapshot diff C:\baselines\web01.json --live
कॉन्फ़िगरेशन को चलने की स्थिति से अलग बताया जाता है, इसलिए जवाब चालीस सेवाएँ नहीं हैं जो संयोग से चल रही हैं, वह स्टार्टअप प्रकार है जिसे किसी ने बदला।
ड्रिफ्ट के लिए मशीन का ऑडिटकुछ भी रोकने से पहले
इस टूल में हर स्टॉप पहले अपनी योजना दिखाता है: चरण, उनके साथ क्या बंद होता है, और चेतावनी जब उनमें से कोई ऐसी चीज़ हो जिसके बिना मशीन काम नहीं करती। उनकी सूची सात की एक शुरुआती सूची है: RPC के दोनों हिस्से और DCOM लॉन्चर, खाता प्रबंधक, कुंजी अलगाव, सत्र प्रबंधक और प्लग एंड प्ले, और रिमोट डेस्कटॉप उसमें नहीं है, इसलिए रिमोट सत्र में योजना पढ़ें।