Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

आप विंडोज़ सेवाओं का प्रबंधन न केवल services.msc स्नैप-इन या sc.exe कमांड लाइन टूल से कर सकते हैं, बल्कि पावरशेल का उपयोग करके भी कर सकते हैं। इस लेख में हम पावरशेल के साथ विंडोज सेवाओं के प्रबंधन के विभिन्न परिदृश्यों पर विचार करेंगे।

Windows सेवाओं को प्रबंधित करने के लिए प्रयुक्त PowerShell Cmdlets

विंडोज सेवाओं की स्थिति देखने और उन्हें प्रबंधित करने के लिए आठ बुनियादी सेवा cmdlets हैं। सेवा प्रबंधन cmdlets की पूरी सूची प्राप्त करने के लिए, यह आदेश चलाएँ:

Get-Help \*-Service

<मजबूत> पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

  • सेवा प्राप्त करें — स्थानीय या दूरस्थ कंप्यूटर पर सेवाओं को चालू या बंद दोनों अवस्था में प्राप्त करने की अनुमति देता है;
  • नई-सेवा - एक सेवा बनाता है। cmdlet रजिस्ट्री और सेवा डेटाबेस में Windows सेवा के लिए एक नई प्रविष्टि बनाता है;
  • पुनरारंभ-सेवा - एक सेवा को पुनरारंभ करता है। cmdlet Windows सेवा नियंत्रक के माध्यम से पुनरारंभ संदेश भेजता है;
  • फिर से शुरू-सेवा - एक सेवा फिर से शुरू। cmdlet Windows सेवा प्रबंधक को एक फिर से शुरू संदेश भेजता है;
  • सेट-सेवा — किसी स्थानीय या दूरस्थ सेवा की सेटिंग्स को बदलता है, जिसमें उसकी स्थिति, विवरण, प्रदर्शित नाम या स्टार्टअप मोड शामिल है। आप इस cmdlet का उपयोग किसी सेवा को शुरू करने, रोकने या निलंबित करने के लिए भी कर सकते हैं;
  • सेवा प्रारंभ करें - एक सेवा शुरू करता है;
  • सेवा रोकें - एक सेवा को रोकता है (cmdlet विंडोज सर्विस मैनेजर को एक स्टॉपिंग मैसेज भेजता है);
  • निलंबित-सेवा - एक सेवा को निलंबित करता है। एक निलंबित सेवा अभी भी चल रही है, लेकिन यह तब तक कुछ नहीं करती है जब तक कि इसे फिर से शुरू नहीं किया जाता है (उदाहरण के लिए, रिज्यूमे-सर्विस cmdlet के साथ)।

आप Get-Help के साथ एक विशेष cmdlet का उपयोग करने का विस्तृत विवरण और उदाहरण प्राप्त कर सकते हैं:

Get-Help Start-Service

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

गेट-सर्विस के साथ विंडोज सर्विस स्टेटस कैसे चेक करें?

आप गेट-सर्विस का उपयोग करके स्थानीय या दूरस्थ कंप्यूटर पर सेवाओं और उनकी स्थिति (चल रहा/रोका) की सूची प्राप्त कर सकते हैं सीएमडीलेट। –नाम पैरामीटर नाम से सेवाओं का चयन करने की अनुमति देता है। सेवा का नाम वाइल्डकार्ड वर्ण * . का उपयोग करके निर्दिष्ट किया जा सकता है

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

यदि आप सटीक सेवा नाम नहीं जानते हैं, तो आप -डिस्प्लेनाम का उपयोग करके इसके प्रदर्शित नाम से इसे ढूंढ सकते हैं पैरामीटर। आप मूल्यों और वाइल्डकार्ड की सूची का उपयोग कर सकते हैं।

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

सेवा प्राप्त करें . का उपयोग करें -ComputerName . के साथ cmdlet दूरस्थ कंप्यूटर पर सेवा की स्थिति प्राप्त करने के लिए पैरामीटर। आप एक साथ कई दूरस्थ कंप्यूटरों पर उनके नाम अल्पविराम से अलग करके निर्दिष्ट करके सेवा की स्थिति को क्वेरी कर सकते हैं। उदाहरण के लिए, नीचे दिखाया गया कमांड दूरस्थ कंप्यूटर ny-prnt1 और ny-prnt2 पर स्पूलर सेवा स्थिति प्राप्त करता है।

Get-Service spooler –ComputerName ny-prnt1,ny-prnt2

Status Name DisplayName
------ ---- -----------
Running spooler Print Spooler
Stopped spooler Print Spooler

किसी सेवा के सभी गुण प्रदर्शित करने के लिए, चयन-वस्तु . का उपयोग करें सीएमडीलेट:

Get-Service spooler | Select-Object *

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

Select-Object cmdlet किसी सेवा के विशिष्ट गुण प्राप्त करने की अनुमति देता है। उदाहरण के लिए, आप स्पूलर सेवा का नाम, स्थिति और उपलब्ध विकल्प देखना चाहते हैं:

Get-Service Spooler | Select DisplayName,Status,ServiceName,Can* . चुनें

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

सेवा प्राप्त करें cmdlet में दो पैरामीटर हैं जो आपको सेवा निर्भरता देखने की अनुमति देते हैं:

  • -निर्भर सेवाएं दी गई सेवा पर निर्भर सेवाओं को प्रदर्शित करने की अनुमति देता है
  • -आवश्यक सेवाएं उन सेवाओं को प्रदर्शित करता है जिन पर दी गई सेवा निर्भर करती है

निम्न आदेश स्पूलर सेवा शुरू करने के लिए आवश्यक सेवाओं को प्रदर्शित करता है:

Get-Service –Name Spooler -RequiredServices

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

निम्न आदेश स्पूलर पर निर्भर सेवाओं को दिखाता है:

Get-Service –Name Spooler -DependentServices

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

यदि आप विशिष्ट स्थिति या पैरामीटर वाली सेवाओं को खोजना चाहते हैं, तो कहां-वस्तु . का उपयोग करें सीएमडीलेट। उदाहरण के लिए, चल रही सेवाओं की सूची प्राप्त करें:

Get-Service | Where-Object {$_.status -eq 'running'}

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

मैन्युअल स्टार्टअप प्रकार के साथ सेवाओं को प्रदर्शित करने के लिए, यह आदेश चलाएँ:

Get-Service | Where-Object {$_.starttype -eq 'Manual'}

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

यह जाँचने के लिए कि वर्तमान कंप्यूटर पर कोई विशिष्ट Windows सेवा मौजूद है या नहीं, निम्न PowerShell स्क्रिप्ट का उपयोग करें:

if (Get-Service "ServiceTest" -ErrorAction SilentlyContinue)
{
Write-host "ServiceTest exists"
}

पावरशेल के साथ सेवा को कैसे रोकें, प्रारंभ करें या फिर से शुरू करें?

आप स्टॉप-सर्विस . का उपयोग करके किसी सेवा को रोक सकते हैं सीएमडीलेट। स्पूलर को रोकने के लिए, कमांड चलाएँ:

Stop-Service -Name spooler

स्टॉप-सर्विस cmdlet निष्पादन के बाद कुछ भी प्रदर्शित नहीं करता है। परिणाम देखने के लिए, -PassThru . का उपयोग करें पैरामीटर।

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

कृपया ध्यान दें कि हर सेवा को रोका नहीं जा सकता है। यदि कोई आश्रित सेवाएं हैं, तो आपको एक त्रुटि दिखाई देगी:

Cannot stop service because it has dependent services. It can only be stopped if force flag set.

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

किसी सेवा को रोकने के लिए बाध्य करने के लिए, –बल . का उपयोग करें पैरामीटर। आपको याद रखना चाहिए कि सभी आश्रित सेवाएं भी बंद हो जाएंगी:

Stop-Service samss –Force -Passthru

निम्न आदेश निर्दिष्ट सेवाओं (बिट्स, स्पूलर) को रोक देगा यदि वे "रनिंग" स्थिति में हैं:

get-service bits,spooler | where {$_.status -eq 'running'} | stop-service –passthru

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

कभी-कभी सेवाएं "स्टॉपिंग" अवस्था में लटक जाती हैं और उन्हें जबरन मारना पड़ता है।

प्रारंभ-सेवा cmdlet एक रुकी हुई सेवा शुरू करता है:

Start-Service -Name spooler -PassThru

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

कोई सेवा प्रारंभ नहीं होगी, यदि उसकी कोई आश्रित सेवा बंद कर दी जाती है। उन्हें खोजने और शुरू करने के लिए निम्नलिखित पॉवरशेल वन-लाइनर का उपयोग करें:

get-service samss | Foreach { start-service $_.name -passthru; start-service $_.DependentServices -passthru}

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

निलंबित-सेवा यदि वे इस राज्य का समर्थन करते हैं तो cmdlet सेवाओं को रोक सकता है। यह जानने के लिए कि क्या किसी सेवा को निलंबित किया जा सकता है, सेवा प्राप्त करें . का उपयोग करें CanPauseAndContinue . के साथ cmdlet संपत्ति।

Get-Service samss | Format-List name, canpauseandcontinue

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

रोकी जा सकने वाली सभी सेवाओं की सूची प्रदर्शित करने के लिए, यह आदेश चलाएँ:

Get-Service | Where-Object {$_.canpauseandcontinue -eq "True"}

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

आइए SQLBrowser सेवा को निलंबित करें:

Suspend-Service -Name SQLBrowser

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

किसी निलंबित सेवा को फिर से शुरू करने के लिए, फिर से शुरू-सेवा . का उपयोग करें सीएमडीलेट:

Resume-Service -Name SQLBrowser

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

निम्न आदेश सभी निलंबित सेवाओं को फिर से शुरू करेगा:

get-service | where-object {$_.Status -eq "Paused"} | resume-service

पुनरारंभ-सेवा cmdlet एक सेवा को पुनः आरंभ करेगा:

Restart-Service -Name spooler

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

यह आदेश कंप्यूटर पर सभी बंद नेटवर्क सेवाओं को प्रारंभ करता है:

get-service net* | where-object {$_.Status -eq "Stopped"} | restart-service

इन आदेशों में –ComputerName . नहीं है पैरामीटर, लेकिन आप उन्हें इनवोक-कमांड cmdlet या पाइप का उपयोग करके दूरस्थ कंप्यूटर पर चला सकते हैं।

उदाहरण के लिए, दूरस्थ कंप्यूटर ny-prnt1 पर प्रिंट स्पूलर को पुनरारंभ करने के लिए, कमांड चलाएँ:
Get-Service Spooler -ComputerName ny-prnt1 | Start-Service

डिफ़ॉल्ट रूप से, केवल व्यवस्थापक ही Windows सेवाओं को प्रारंभ/बंद कर सकते हैं, लेकिन आप गैर-व्यवस्थापक उपयोगकर्ताओं को किसी विशिष्ट सेवा पर प्रारंभ/रोक/पुनरारंभ करने की अनुमति दे सकते हैं।

सेवा सेटिंग बदलने के लिए सेट-सेवा का उपयोग करना

सेट-सेवा cmdlet आपको स्थानीय या दूरस्थ कंप्यूटर पर किसी सेवा के पैरामीटर या सेटिंग्स को बदलने की अनुमति देता है। चूंकि सेवा की स्थिति एक संपत्ति है, आप इस cmdlet का उपयोग किसी सेवा को शुरू करने, रोकने या निलंबित करने के लिए कर सकते हैं। सेट-सेवा -स्टार्टअप प्रकार . है पैरामीटर जो किसी सेवा के स्टार्टअप प्रकार को बदलने की अनुमति देता है।

आइए स्पूलर स्टार्टअप प्रकार को स्वचालित में बदलें:

Set-Service spooler –startuptype automatic –passthru

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

आप मैन्युअल स्टार्टअप प्रकार सेट कर सकते हैं:

Set-Service spooler –startuptype manual –passthru

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

PowerShell के माध्यम से Windows सेवा कैसे बनाएं या हटाएं?

नई-सेवा - विंडोज़ में एक नई सेवा बनाने के लिए एक cmdlet है। नई सेवा के लिए नाम और निष्पादन योग्य फ़ाइल निर्दिष्ट करें (आप Windows सेवा के रूप में PowerShell स्क्रिप्ट भी चला सकते हैं)।

आइए TestSvc नाम से एक नई सेवा बनाएं:

new-service -name TestSvc -binaryPathName "C:\WINDOWS\System32\svchost.exe -k netsvcs"

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

Get-WmiObject cmdlet का उपयोग करके स्टार्टअप प्रकार और सेवा के विवरण के बारे में जानकारी प्राप्त करें।

get-wmiobject win32_service -filter "name='testservice'"

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

आप निम्न आदेश का उपयोग करके नई सेवा की सेटिंग बदल सकते हैं:

Set-Service -Name TestSvc -Description ‘My Service’ -StartupType Manual

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

किसी सेवा को हटाने के लिए, यह आदेश चलाएँ:

(Get-WmiObject win32_service -Filter ″name=′TestSvc′″).delete()

Windows सेवा चलाने वाले उपयोगकर्ता खाते को बदलें

सेवा शुरू करने के लिए उपयोग किए गए उपयोगकर्ता खाते को बदलने के लिए आप पावरशेल का उपयोग कर सकते हैं। TestSvc प्रारंभ करने के लिए उपयोग किए गए खाते का नाम प्राप्त करें:

get-wmiobject win32_service -filter "name='TestSvc'" | Select name,startname

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

Windows सेवा के लिए उपयोगकर्ता नाम और पासवर्ड बदलने के लिए, निम्न आदेश चलाएँ:

$svc = get-wmiobject win32_service -filter "name='TestSvc'"
$svc.GetMethodParameters("change")

परिवर्तन () विधि मापदंडों की सूची प्रदर्शित की जाती है। गणना करें कि StartName और StartPassword पैरामीटर कहां हैं:वे 20 वें . पर स्थित हैं और 21 सेंट क्रमशः स्थान।

पावरशेल के साथ विंडोज सेवाओं को कैसे प्रबंधित करें?

$svc | Invoke-WmiMethod -Name Change –ArgumentList @ ($null,$null,$null,$null,$null,$null,$null, $null,$null,$null,$null,$null,$null,$null,$null,$null, $null,$null,$null,"Administrator","!123Pa$$w0rd")

या आप एक जीएमएसए खाते का नाम दर्ज कर सकते हैं (इस मामले में खाता पासवर्ड निर्दिष्ट नहीं है)।

जैसा कि आप देख सकते हैं, पावरशेल विंडोज सेवाओं को प्रबंधित करना आसान बनाता है। आप सेवाओं को बना सकते हैं, रोक सकते हैं, शुरू कर सकते हैं या फिर से शुरू कर सकते हैं और उनके गुणों को बदल सकते हैं। अधिकांश cmdlets दूरस्थ कंप्यूटर पर सेवाओं को प्रबंधित करने की अनुमति देते हैं।


  1. विंडोज 10 पर पावरशेल 7.0 कैसे स्थापित करें

    डिफ़ॉल्ट रूप से पावरशेल हर विंडोज संस्करण में स्थापित होता है - विंडोज 7 एसपी1 और विंडोज सर्वर 2008 आर2 एसपी1 से शुरू होता है। पिछले कुछ वर्षों में माइक्रोसॉफ्ट ने पावरशेल के कई संस्करण जारी किए। Windows PowerShell .NET फ्रेमवर्क पर बनाया गया था और केवल विंडोज सिस्टम पर काम करता था। लेकिन हाल ही में

  1. Windows 11 पर Powershell कैसे अपडेट करें

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

  1. Windows Tags के साथ फाइल और फोल्डर को कैसे प्रबंधित करें

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