विंडोज सर्विस कैसे बनाएं


कभी-कभी आपको अपने कंप्यूटर में लॉग इन किया है या नहीं, इसे चालू रखने के लिए आपको एक ऐप या स्क्रिप्ट की आवश्यकता है। शायद यह एक बंदरगाहों की निगरानी के लिए PowerShell स्क्रिप्ट या एक वेब सर्वर आपके होम नेटवर्क पर एक पेज होस्ट कर रहा है है

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

मुझे Windows सेवा बनाने की क्या आवश्यकता है?

विंडोज 10 में विंडोज सेवा बनाने के लिए, कुछ आवश्यक शर्तें हैं:

  • कंप्यूटर पर व्यवस्थापक पहुंच
  • सेवा के रूप में चलाने के लिए कुछ (PowerShell स्क्रिप्ट, प्रोग्राम, आदि।)
  • गैर-चूसने वाला सेवा प्रबंधक (NSSM) स्थापित
  • गैर-चूसने वाला सेवा प्रबंधक क्या है?

    हाँ, आप इसे समझाए बिना ऐसा नाम नहीं छोड़ सकते। निश्चित रूप से नाम दुर्भाग्यपूर्ण है, फिर भी यह सटीक है। गैर-चूसने वाला सेवा प्रबंधक (NSSM) यकीनन एक विंडोज सेवा बनाने का सबसे आसान तरीका है जो अत्यधिक विश्वसनीय और विन्यास योग्य दोनों है। इसके अलावा, यह मुफ़्त है और खुला स्रोत सॉफ्टवेयर (OSS)।

    एनएसएसएम का उपयोग विंडोज कमांड प्रॉम्प्ट, या ग्राफिकल यूजर इंटरफेस (GUI) के माध्यम से किया जा सकता है )। इसका मतलब है कि कोई भी इसका इस्तेमाल कर सकता है। NSSM का उपयोग विंडोज के किसी भी संस्करण पर किया जा सकता है, और इसमें विंडोज 2000 भी शामिल है। 32-बिट और 64-बिट संस्करण हैं। यदि आप 64-बिट कंप्यूटर का उपयोग कर रहे हैं, तो पहले उस संस्करण को आज़माएँ। यदि यह काम नहीं करता है, तो 32-बिट संस्करण पर वापस गिरें।

    आप वेबसाइट से एनएसएसएम डाउनलोड करें, Git से क्लोन एनएसएसएम, या चॉकलेट के साथ एनएसएसएम स्थापित करें9। आप कौन सा मार्ग लेते हैं, इसके आधार पर संस्थापन विधियाँ अलग-अलग होंगी। कृपया NSSM के निर्देशों से परामर्श करें। हमारे उदाहरण के लिए, हम NSSM वेबसाइट से डाउनलोड कर रहे हैं और इसे C: \ WINDOWS \ system32

    In_content_1 all: [300x250] / dfp में इंस्टॉल कर रहे हैं: [640x360]->

    NSSM के साथ एक Windows सेवा बनाएं

    इस उदाहरण के लिए, हम लॉग करने के लिए PowerShell स्क्रिप्ट से एक सेवा बनाएंगे CPU औसत लोड प्रतिशत

    1. इस स्क्रिप्ट को कॉपी करें और log-CPULoadPercentage.ps1के रूप में उस स्थान पर सहेजें और किसी अन्य द्वारा एक्सेस किए जाने की संभावना नहीं है। निर्देशिका बनाने का प्रयास करें C: / Scriptsऔर इसे वहां संग्रहीत करें। इसके अलावा, लॉगनामक लिपियों में एक फ़ोल्डर बनाएँ। ध्यान दें कि स्क्रिप्ट का पथ C: /Scripts/log-CPULoadPercentage.ps1है। आपको बाद में इसकी आवश्यकता होगी।
    2. नोट: # प्रतीक के बाद की सभी पंक्तियाँ टिप्पणी हैं और स्क्रिप्ट को प्रभावित नहीं करेगी।

      CLS #Optional. I like to use this to clear the terminal when testing.
      #Make sure you have a folder called Logs in the same directory as this script #The log is where the records will be stored. Start-Transcript -Path "$PSScriptRoot\Logs\log-CPULoadPercentage-$(get-date -f yyyy-MM-dd).txt" -Append #While loop keeps it running until manually stopped While ($True){ #Creates a timestamp to know when the measurement was taken $timeStamp = get-date -f yyyy-MM-h:mm:ss #Gets the average load percentage at that time, then waits 5 seconds to do it again. $cpuLoadPercent = Get-CimInstance win32_processor | Measure-Object -Property LoadPercentage -Average | Select-Object Average;Start-Sleep -Seconds 5 #Isolates just the average so there isn't a weird @{Average=13} string $cpuLoadPercent = $cpuLoadPercent.Average #writes results to screen, or in this case to the log Write-Host "$timeStamp CPU Load Percentage $cpuLoadPercent" } Stop-Transcript
      1. यह या तो Windows कमांड प्रॉम्प्टया PowerShell में किया जा सकता है।इसे प्रशासक के रूप में खोलें
      2. कमांड दर्ज करें nssm logCPUAvgइंस्टॉल करें और इसे चलाएँ। NSSM सेवा इंस्टॉलरविंडो खुलेगी।
        1. पथ के बगल में दीर्घवृत्त बटन पर क्लिक करें: करने के लिएक्षेत्र, नेविगेट PowerShell.exeयह आमतौर पर C: \ Windows \ System32 \पर स्थित है। शक्तियां चुनें ..exe। पथ:और स्टार्टअप निर्देशिका:फ़ील्ड स्वचालित रूप से आबाद हो जाएंगे।
          1. निम्न तर्क:फ़ील्ड में दर्ज करें: -ExecutionPolicy Bypass -NoProfile -File "C: \ PathToScript \ get-Script.ps1" / strong>, जहां अंतिम भाग पथ है अपने PowerShell स्क्रिप्ट और स्क्रिप्ट नाम के लिए।
            1. विवरणटैब चुनें। Windows सेवा प्रबंधक में प्रदर्शन नाम:फ़ील्ड के रूप में दिखाने के लिए आप जो सेवा पसंद करते हैं उसे दर्ज करें। फिर, विवरण:फ़ील्ड में यह दर्ज करें। स्टार्टअप प्रकार:को स्वचालित, स्वचालित (विलंबित प्रारंभ), मैनुअल, या के रूप में सेट किया जा सकता है। अक्षम। इस अभ्यास के लिए, स्वचालित अच्छा है।
              1. लॉग ऑन करेंटैब चुनें। यह खाताचुनें: रेडियो बटन और खाता और पासवर्ड दर्ज करें जो सेवा के रूप में चलेगा। आपको एक खाता चुनना होगा जिसके तहत सेवा चलेगी। आदर्श रूप से, इस सेवा को चलाने के लिए आपके पास एक विंडोज़ खाता होगा। इस खाते की अनुमतियाँ केवल उसी तक सीमित होनी चाहिए जो सेवा के लिए आवश्यक हो। आप स्थानीय सिस्टम खाताचुन सकते हैं, लेकिन सुरक्षा कारणों से इसकी अनुशंसा नहीं की जाती है।

                कई अन्य टैब हैं जिन्हें अनुकूलित करने के लिए उपयोग किया जा सकता है सेवा। इस अभ्यास के लिए, उन टैब में डिफ़ॉल्ट मान पर्याप्त हैं। इंस्टॉल सेवाबटन का चयन करें।

                1. जब सेवा स्थापित हो जाती है, तो आप सेवा "logCPUAvg" को सफलतापूर्वक स्थापित करते देखेंगे!खिड़की। इसे बंद करने के लिए ठीकचुनें। यह स्थापना समाप्त करता है।
                  1. Windows सेवा प्रबंधकखोलें और सुनिश्चित करें कि सेवा वहां है।
                    1. यह सुनिश्चित करने के लिए सेवा चलाएं कि यह चलेगा।
                      1. यह सेवा चल रही है यह सत्यापित करने के लिए, कि जहां मौजूद है उसे देखने के लिए लॉग को सहेजने के लिए नेविगेट करने के लिए फ़ाइल एक्सप्लोररका उपयोग करें।
                      2. nssm-check-log.png

                        Windows सेवा हटाना NSSM के साथ

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

                        1. Windows सेवा प्रबंधकमें, सेवा रोकें। यह करें लॉग इन सीपीयू औसत लोडसेवा का चयन करके या तो टूलबार में वर्ग स्टॉप बटन का चयन करें या बाईं ओर सेवालिंक बंद करें।
                          1. Windows कमांड प्रॉम्प्टया PowerShellको प्रशासक के रूप में खोलें।
                          2. कमांड डालें nssm, logCPUAvgहटाएं और कमांड निष्पादित करें।
                            1. NSSM आपसे पुष्टि करने के लिए कहेगा। हां
                              1. जब सेवा हटा दी जाती है, तो आपको सेवा "logCPUAvg दिखाई देगा “सफलतापूर्वक निकाल दिया गया!पुष्टि। ठीकका चयन करें और आप कर रहे हैं।
                              2. यह सब है। यह सुनिश्चित करने के लिए कि अब सेवा नहीं है, सेवा प्रबंधक की जांच करना एक अच्छा विचार है। यदि आप अभी भी सेवा देखते हैं, तो आपको स्क्रीन को रीफ्रेश करने की आवश्यकता हो सकती है और इसे चला जाना चाहिए।

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

                                संबंधित पोस्ट:


                                12.11.2020