Powershell'de 'Komut Dosyalarını Çalıştırma Bu Sistemde Devre Dışı Bırakıldı' Hatası Nasıl Onarılır?

Powershell, Microsoft tarafından geliştirilen ve yayınlanan bir görev otomasyon ve yönetim çerçevesidir. Bir komut satırı kabuğu ve ilişkili bir dilden oluşur. Kullanıcılar programda çok sayıda cmdlet yürütebilirler. Ancak, oldukça yakın bir zamanda, kullanıcıların bir betiği çalıştıramadığı ve “ Bu Sistemde Komut Dosyasını Devre Dışı Bıraktı ” ya da “ Bu sistemde komut dosyalarının çalıştırılması devre dışı bırakıldı ” hatası Powershell'de ortaya çıktığı birçok rapor geliyor. .

“Bu Bilgisayarda Çalışan Komut Dosyaları Devre Dışı Bırakıldı” Hatası

Bu yazıda, bu hatanın neden olabileceğinin nedenini ve bunu kalıcı olarak düzeltmek için bazı uygun çözümler tartışacağız. Çatışmayı önlemek için adımları dikkatli ve doğru bir şekilde uyguladığınızdan emin olun.

“Bu Komut Dosyalarını Çalıştırma Bu Sistemde Devre Dışı Bırakıldı” Hatasına Ne Sebep Olur?

Birden fazla kullanıcıdan çok sayıda rapor aldıktan sonra, konuyu incelemeye karar verdik ve araştırmamız, hatanın aşağıdaki sorundan kaynaklandığını gösteriyor.

  • Devre Dışı Komut Dosyaları: Powershell'de çalıştırdığınız her Komut Dosyasının çalışması için güvenilir kaynaklardan gelen bir düzeyde doğrulama olması gerekir. Bununla birlikte, bazı durumlarda, komut dosyası doğrulama yapmış olsa bile, kısıtlı erişim nedeniyle yürütme işlemi durdurulur. Mesele şu ki Windows, betiğin yürütülebilmesi için bypass etmesi gereken bir “Yürütme Politikası” na sahip. Yürütme Politikası “Kısıtlı” olarak ayarlanmışsa, bilgisayarda hiçbir komut dosyası çalıştırılamaz.

Şimdi problemin doğası hakkında temel bir anlayışa sahip olduğunuza, çözümlere doğru ilerleyeceğiz.

1. Çözüm: Kod Ekleme

Bilgisayarınızda belirli bir komut dosyasını yürütme politikasını değiştirme zorluğundan geçmeden çalıştırmak istiyorsanız, komut dosyasına ilke yoluyla erişim sağlayan komut için her zaman bir kod parçası ekleyebilirsiniz. Bunun için:

  1. Çalışma komut istemini açmak için “ Windows ” + “ R ” tuşlarına basın.
  2. Yönetici erişimini sağlamak için “ Powershell ” yazın ve aynı anda “ Shift ” + “ Ctrl ” + “ Entertuşlarına basın.

    “Powershell” de yazıp “Shift” + “Alt” + “Enter” tuşlarına basın
  3. Aşağıdaki komut gibi belirli bir betiği çalıştırmak için komutu yazın.
     c: \> powershell -ExecutionPolicy ByPass -Dosya script.ps1 
  4. Enter ” tuşuna basın ve sorunun devam edip etmediğini kontrol edin .

2. Çözüm: Yürütme Politikasını Değiştirme

Yürütme politikası, belirli bir komut dosyasını çalıştırmak için Powershell'e erişim sağladığından, kısıtlanmış olarak ayarlanmışsa, tüm komut dosyalarının yürütülmesini engeller. Durumunuza bağlı olarak politikayı ayarlayabileceğiniz farklı modlar vardır. Bu modlar:

  • Sınırlı: Bu mod, bilgisayarda herhangi bir komut dosyasının çalıştırılmasına izin vermiyor.
  • AllSigned: Bu modu seçerek, yalnızca güvenilir bir yayıncı tarafından imzalanan ilkeler bilgisayarda çalıştırılabilir.
  • RemoteSigned: Tüm indirilen Komut Dosyaları güvenilir bir yayıncı tarafından imzalanmalıdır.
  • Sınırsız: Herhangi bir komut dosyasında hiçbir kısıtlama yoktur.

Artık yürütme politikasının hangi seviyelere ayarlanabileceğini bildiğinize göre, gereksinimlerinize bağlı olarak sizin için en iyisini seçebilirsiniz. Uygulama politikasını değiştirmek için:

  1. Çalışma komut istemini açmak için “ Windows ” + “ R ” tuşlarına basın.
  2. Yönetici erişimini sağlamak için “Powershell” yazın ve aynı anda “ Shift ” + “ Ctrl ” + “ Entertuşlarına basın.

    “Powershell” de yazıp “Shift” + “Alt” + “Enter” tuşlarına basın
  3. Aşağıdaki komutu yazın ve uygulamak için “Enter” tuşuna basın.
     Set-ExecutionPolicy Remotesigned 

    Not:RemoteSigned ” sözcüğü, yukarıda belirtildiği gibi istediğiniz güvenlik seviyesi ile değiştirilmelidir.

  4. Evet'i belirtmek için “ Y ” ye basın; bu, Grup İlkesini istenen seviyeye değiştirir.

    Grup Politikasını Değiştirme
  5. Sorunun devam edip etmediğini kontrol edin .

Ilginç Haberler