আমি কীভাবে পাওয়ারশেল ব্যবহার করে কোনও পরিষেবা দূরবর্তীভাবে শুরু / বন্ধ করার অনুমতি দেব?


10

আমাদের কাছে পাওয়ারশেল স্ক্রিপ্ট রয়েছে যা অন্য কম্পিউটারে পরিষেবা পুনরায় চালু করে। আমরা যখন পাওয়ারশেলের অন্তর্নির্মিত পরিষেবা নিয়ন্ত্রণ সেমিডলেট ব্যবহার করি, তখন যেমন:

$svc = Get-Service -Name MyService -ComputerName myservicehostname
Stop-Service -InputObject $svc
Start-Service -InputObject $svc

আমরা এই ত্রুটিটি ফিরে পেয়েছি:

স্টপ-সার্ভিস: কম্পিউটারে 'মাইসারিসহোস্টনেম' মাই সার্ভিস পরিষেবা খুলতে পারে না।

যাইহোক, যখন আমরা sc.exe ব্যবহার করি, ঠিক তেমন:

C:\Windows\System32\sc \\myservicehostname stop MyService
C:\Windows\System32\sc \\myservicehostname start MyService

শুরু এবং স্টপ সফল।

পুনরায় চালু হচ্ছে করছেন ব্যবহারকারী না একজন প্রশাসক। পরিষেবাটি শুরু / থামাতে এবং জিজ্ঞাসা করার জন্য ব্যবহারকারীকে অনুমতি দেওয়ার জন্য আমরা সাবিনাকল ব্যবহার করি:

subinacl.exe /service MyService /GRANT=MyServiceControlUser=STO

পাওয়ারশেল কীভাবে আমার পরিষেবা বন্ধ sc.exeকরতে পারে তবে পারে?

উত্তর:


20

দেখা যাচ্ছে যে আমি যথেষ্ট অনুমতি দিচ্ছিলাম নাsubinacl । অনুদান কর্মের জন্য সম্ভাব্য অ্যাক্সেস মানগুলি হ'ল:

    F : Full Control  
    R : Generic Read  
    W : Generic Write  
    X : Generic eXecute  
  or any following values  
    L : Read controL  
    Q : Query Service Configuration  
    S : Query Service Status  
    E : Enumerate Dependent Services  
    C : Service Change Configuration  
    T : Start Service  
    O : Stop Service  
    P : Pause/Continue Service  
    I : Interrogate Service  
    U : Service User-Defined Control Commands  

আমি এস (ক্যোয়ারী সার্ভিস স্ট্যাটাস), টি (স্টার্ট সার্ভিস) এবং (স্টপ পরিষেবা) ব্যবহার করছিলাম । আমার ইও প্রয়োজন (নির্ভরশীল পরিষেবা গণনা করুন)। এটি প্রদর্শিত হয় যে পাওয়ারশেল সেমিডলেটগুলি শুরু / থামানোর সময় নির্ভরশীল পরিষেবাগুলির দিকে নজর দেওয়া দরকার।

এখানে আমার আপডেট করা subinaclআদেশ:

subinacl.exe /service MyService /GRANT=MyServiceControlUser=STOE

আপনি যদি ডাউনলোড / ব্যবহার করতে না চান তবে আপনি কার্বন মডিউলটির গ্রান্ট-সার্ভিস নিয়ন্ত্রণ নিয়ন্ত্রণ বা অনুদান-পরিষেবাপর্মেশন ফাংশনগুলির subinacl.exeমাধ্যমে পাওয়ারশেল ব্যবহার করতে পারেন । (অস্বীকৃতি: আমি কার্বন প্রকল্পের মালিক / রক্ষণাবেক্ষণকারী))


আপনার সঠিক উত্তর হিসাবে এটি চিহ্নিত করুন। ঠিক একই ইস্যুটির জন্য এটি আমার জন্য বিশাল সহায়ক ছিল :)
আলাইন ও'ডিয়া

এর subinaclআগে কখনও শুনিনি । কি দরকারী ইউটিলিটি! আমাদের বাকিদের জন্য এই তথ্যটি রেখে ফিরে আসার জন্য আপনাকে ধন্যবাদ।
ড্যান

দূরবর্তী কম্পিউটারগুলিতে পরিষেবাদি নিয়ন্ত্রণ করতে উইন্ডোজ 2016 সার্ভারের সাথে ডোমেন-না-পরিবেশে দুর্দান্ত কাজ করে।
ডগ নুডসেন

0

নিম্নলিখিত কমান্ডটি আমার উইন্ডোজ সার্ভার 2008 আর 2 মেশিনে প্রত্যাশার মতো কাজ করে।

Start-Service -InputObject $(Get-Service -Computer [ComputerName] -Name spooler)  

আপনি যদি এই ওয়ান-অফ কমান্ডটি কাজ করে কিনা তা নির্ধারণের জন্যও চেষ্টা করতে পারেন, আপনি কী তা নিশ্চিত করেছেন যে ব্যবহারকারী টার্গেট সার্ভারগুলিতে ব্যবহারকারী গোষ্ঠীর সদস্য যে একটি গোষ্ঠীর সদস্য?


আপনার স্নিপড আমার পক্ষে কাজ করে না। সুরক্ষা প্রয়োজনীয়তার কারণে, আমি ব্যবহারকারীকে ব্যবহারকারী গ্রুপের (বা কোনও বিল্ট-ইন উইন্ডোজ গ্রুপ) এর সদস্য করতে পারি না।
স্প্ল্যাটার বিটগুলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.