सवाल

सवाल, और सीमाएँ

जो टूल चुपचाप किसी चीज़ को कवर करने में विफल रहता है, वह उस टूल से बुरा है जो बताता है कि वह क्या नहीं कर सकता। सीमाएँ भी इसी पृष्ठ पर हैं, दो समूहों में: जिसे यह डिज़ाइन से मना करता है, और जो Windows करता है और जिसे यह टूल जैसा है वैसा ही रिपोर्ट करता है।

यह sc.exe, Get-Service या services.msc से कैसे अलग है?

sc query और Get-Service बताते हैं कि क्या चल रहा है। services.msc आपको उसे बदलने देता है, एक बार में एक पंक्ति, बिना कोई सवाल पूछने के तरीके के और बाद में बिना किसी रिकॉर्ड के। यह टूल सवाल पूछता है (start:auto !status:running), कुछ करने से पहले योजना दिखाता है, और एक स्नैपशॉट रखता है जिसकी तुलना आप एक हफ़्ते बाद कर सकते हैं। जहाँ यह किसी सेवा के बारे में sc.exe से असहमत हो, वह बग है, क्योंकि टेस्ट सूट का एक हिस्सा दोनों को चलाकर उनकी प्रविष्टि-दर-प्रविष्टि तुलना करता है। लंबी तुलना यहाँ है।

क्या इसे इंटरनेट चाहिए?

कभी नहीं। कोई टेलीमेट्री नहीं, अपडेट जाँच नहीं, क्रैश रिपोर्टिंग नहीं, खाता नहीं, किसी चीज़ का क्लाइंट नहीं। जब आप --follow-network देते हैं तभी यह एक बार नेटवर्क को छू सकता है: तब यह किसी दूसरी मशीन के शेयर पर मौजूद लॉन्च पथ को देख सकता है, और Windows को ऐसा प्रमाणपत्र लाने दे सकता है जो इस मशीन के पास पहले से नहीं है। यह डिफ़ॉल्ट रूप से बंद है, और सहायता बताती है कि क्यों। विंडो में GitHub और Donate बटन और उसके Help मेनू का पृष्ठ, दबाने पर, हर एक आपके ब्राउज़र को एक तय पता सौंपता है, और कनेक्ट आपका ब्राउज़र करता है।

क्या इसे व्यवस्थापक अधिकार चाहिए?

देखने के लिए नहीं। बदलने के लिए हाँ। इनके बिना सेवा प्रबंधक कम प्रविष्टियाँ दिखाता है और ज़्यादा मना करता है, और दोनों हिस्से सबसे ऊपर यह बता देते हैं, यह दिखावा करने के बजाय कि सूची पूरी मशीन की है। विंडो Restart as admin का विकल्प देती है। यह खुद अपने अधिकार कभी नहीं बढ़ाती।

क्या यह मुफ़्त है? क्या इसे काम पर इस्तेमाल किया जा सकता है?

दोनों का जवाब हाँ। GPL-3.0, कोई शर्त नहीं। आपका लिया हुआ स्नैपशॉट आपकी अपनी फ़ाइल है।

क्या यह मेरा सर्वर बिगाड़ देगा?

अपने आप नहीं। कोई भी चीज़ बिना ऐसी योजना के नहीं बदलती जिसे आपने देखा हो, ड्राइवरों को मना कर दिया जाता है, और जो योजना मशीन की ज़रूरत की किसी चीज़ को बंद कर देती उसमें यह लिखा होता है। जिससे यह आपको नहीं बचा सकता वह है ऐसी योजना को चला देना जिसे आपने पढ़ा नहीं। मशीन को जिन सेवाओं की ज़रूरत है उनकी सूची सात की शुरुआती सूची है: RPC के दोनों हिस्से और DCOM लॉन्चर, खाता प्रबंधक, कुंजी अलगाव, सत्र प्रबंधक और प्लग एंड प्ले। और रिमोट डेस्कटॉप उसमें नहीं है, इसलिए रिमोट सत्र में योजना पढ़ें।

क्या यह Microsoft का उत्पाद है?

नहीं। Better Windows Services एक स्वतंत्र ओपन सोर्स प्रोजेक्ट है और इसका Microsoft से कोई संबंध नहीं है, न Microsoft ने इसका समर्थन किया है और न इसे प्रायोजित किया है। Windows, Microsoft समूह की कंपनियों का ट्रेडमार्क है।

क्या प्रोग्राम मेरी भाषा में है?

नहीं। प्रोग्राम अंग्रेज़ी में बोलता है, और इसीलिए यह साइट अनूदित है। विंडो एक भाषा फ़ाइल पढ़ती है, languages\gui.<code>.json, जो निष्पादन योग्य फ़ाइल के बगल में रखी होती है, और उसे Windows की भाषा से चुनती है, बिना किसी सेटिंग के, इसलिए अनुवाद एक ऐसा योगदान है जिसे प्रोग्राम को दोबारा बिल्ड किए बिना जोड़ा जा सकता है। सूची में सेवाओं के नाम वही हैं जो आपका Windows उन्हें बताता है, यानी उस भाषा में जिसमें आपका Windows सेट है।

मेरा Windows हल्का है तो विंडो गहरी क्यों है?

यह गहरी है और Windows की सेटिंग कुछ भी हो, गहरी ही रहती है, हाई कॉन्ट्रास्ट थीम में भी। यह मानी हुई बात नहीं, जाँची हुई बात है: यह अपने रंग रखती है और पढ़ने लायक रहती है, और उस सेटिंग का पालन नहीं करती।

डिज़ाइन से

  • सिर्फ़ स्थानीय मशीन। रिमोट प्रबंधन इस संस्करण में नहीं है। दो मशीनों की तुलना के लिए हर एक पर एक स्नैपशॉट लें और दोनों फ़ाइलों की तुलना करें।
  • सिर्फ़ Windows, सिर्फ़ 64-बिट, Windows 10 1809 या Windows Server 2019 और उसके बाद के संस्करण।
  • ड्राइवरों पर ऑपरेशन आज़माए नहीं जाते, मना कर दिए जाते हैं, क्योंकि कर्नेल ड्राइवर रोकना अक्सर रीस्टार्ट के बिना वापस नहीं किया जा सकता।
  • टूल अपने विशेषाधिकार खुद नहीं बढ़ाता। जब प्रबंधक मना करता है, तो यह वैसा बता देता है और एग्ज़िट कोड 3 के साथ खत्म होता है। विंडो खुद को व्यवस्थापक के रूप में रीस्टार्ट करने की पेशकश करती है, और इस बारे में और कुछ नहीं करती।
  • प्रमाणपत्र का निरस्तीकरण जाँचा नहीं जाता। इसके लिए नेटवर्क तक पहुँचना पड़ता, और यह टूल ऐसा कभी नहीं करता। इसलिए Trusted का मतलब है कि इस मशीन पर श्रृंखला मान्य थी, यह नहीं कि तब से किसी ने प्रमाणपत्र रद्द नहीं किया।
  • विंडो शुरू होने से पहले Windows यूज़र इंटरफ़ेस फ़्रेमवर्क का एक हिस्सा अनपैक करती है। एक फ़ाइल के रूप में यह कुछ नेटिव लाइब्रेरी साथ रखती है जिन्हें Windows केवल डिस्क से लोड कर सकता है। व्यवस्थापक अधिकारों के बिना यह उन्हें हर संस्करण के पहले स्टार्ट पर खाते के अस्थायी फ़ोल्डर के नीचे एक .net फ़ोल्डर में लिखती है और वहीं से लोड करती है। व्यवस्थापक अधिकारों के साथ यह इसके बजाय Windows ड्राइव पर ProgramData\BetterWindowsServices का उपयोग करती है। यह ऐसा फ़ोल्डर है जिसे वह इस तरह बनाती है कि केवल व्यवस्थापक उसे बदल सकें, और हर स्टार्ट पर उसकी जाँच करती है। यदि वह फ़ोल्डर बन न सके, या दूसरे उसे बदल सकें, तो विंडो शुरू नहीं होती और बताती है कि कौन सा फ़ोल्डर है और क्या करना है। वहाँ जाने का मतलब है कि उन्नत अधिकारों वाली विंडो खुद को दूसरी बार शुरू करती है, जिसमें एक सेकंड का एक छोटा हिस्सा लगता है, और हर संस्करण अपनी लाइब्रेरी वहाँ (लगभग 8 MB) छोड़ देता है जब तक कोई फ़ोल्डर को हटा न दे। कमांड लाइन में ऐसी कोई लाइब्रेरी नहीं है और वह कुछ अनपैक नहीं करती।
  • उन्नत अधिकारों वाला सत्र विरासत में मिली .NET सेटिंग्स को मना करने के बजाय उनके नाम बताता है। एनवायरनमेंट में सेट प्रोफ़ाइलर, ट्रेस या डंप स्विच, या डायग्नोस्टिक पोर्ट को .NET प्रोग्राम के अंदर से बंद नहीं किया जा सकता, इसलिए व्यवस्थापक अधिकारों के साथ दोनों हिस्से जो भी मिले उन्हें सूचीबद्ध करते हैं। स्टार्टअप हुक सीधे बंद कर दिए जाते हैं।

वे चीज़ें जो Windows करता है और जिन्हें यह टूल जैसा है वैसा ही रिपोर्ट करता है

  • svchost के अंदर होस्ट की गई सेवा का लॉन्च पथ होस्ट का नाम बताता है, इसलिए फ़ाइल मौजूद है और किसने हस्ताक्षर किए दोनों उतना नहीं बताते जितना अपनी अलग प्रक्रिया वाली सेवा के लिए बताते हैं।
  • ऐसी फ़ाइल जिस पर उसका अपना हस्ताक्षर भी है और Windows कैटलॉग प्रविष्टि भी दो अलग हस्ताक्षरकर्ताओं के नाम बता सकती है। दिखाया गया प्रकाशक वह है जो फ़ाइल के अंदर है, यानी वह जो फ़ाइल को दूसरी मशीन पर देखने पर भी वही रहता है, और वह PowerShell की रिपोर्ट से अलग हो सकता है।
  • व्यवस्थापक अधिकारों के बिना सेवा प्रबंधक कम प्रविष्टियाँ सूचीबद्ध करता है और जो सूचीबद्ध करता है उसमें से ज़्यादा को मना करता है। दोनों हिस्से यह सबसे ऊपर बता देते हैं, और स्नैपशॉट इसे दर्ज करता है, क्योंकि उन्नत अधिकारों से लिए गए स्नैपशॉट की तुलना बिना अधिकारों वाले स्नैपशॉट से करने पर वरना ऐसी प्रविष्टियाँ हटाई हुई दिखतीं जिन्हें किसी ने हटाया नहीं।

कोई समस्या मिली, या कोई ऐसी सेवा जिसे यह टूल sc.exe से अलग बताता है? इश्यू ट्रैकर खुला है, और दोनों के बीच का diff वह सबसे उपयोगी चीज़ है जो आप उसमें चिपका सकते हैं।