Wie man „Die Ausführung von Skripts auf diesem System ist deaktiviert“ behebt

Wenn du mit Python-Projekten arbeitest und eine virtuelle Umgebung erstellst, kann es vorkommen, dass du beim Aktivieren der Umgebung mit folgender Fehlermeldung konfrontiert wirst:

.\.venv\Scripts\activate : Die Datei
"C:\Projekte\dspy-challenge\.venv\Scripts\Activate.ps1" kann nicht geladen werden, da
die Ausführung von Skripts auf diesem System deaktiviert ist.

Diese Fehlermeldung ist ein Sicherheitsmechanismus von Windows und zeigt an, dass PowerShell die Ausführung von Skripten auf deinem System blockiert hat. In diesem Tutorial erklären wir dir Schritt für Schritt, wie du das Problem löst.


📌 Was bedeutet diese Fehlermeldung?

Wenn du .\.venv\Scripts\activate ausführst, versucht PowerShell, die Datei Activate.ps1 zu laden – aber deine Windows-Installation hat Ausführungsrichtlinien gesetzt, die verhindern, dass Skripte ausgeführt werden.

Das ist ein Sicherheitsfeature von Microsoft, das unerwünschte oder potenziell schädliche Skripte blockiert.


🧰 Lösungsmöglichkeiten

Es gibt mehrere Wege, dieses Problem zu lösen. Wir zeigen dir die gängigsten und sichersten Methoden:


🔧 Lösung 1: Temporäre Änderung der Ausführungsrichtlinien (Empfohlen)

Öffne PowerShell als Administrator (klicke mit rechts auf das Startmenü → „Windows PowerShell (Admin)“).

Führe folgenden Befehl aus:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

Jetzt kannst du deine virtuelle Umgebung aktivieren:

.\.venv\Scripts\activate

��� Diese Einstellung gilt nur für deinen Benutzer und ist sicher, solange du vertrauenswürdige Skripte ausführst.


🔧 Lösung 2: Verwende cmd statt PowerShell

Wenn du nicht willst, dass PowerShell Skripte ausführt, kannst du einfach cmd öffnen (nicht PowerShell) und dort folgenden Befehl eingeben:

\.venv\Scripts\activate.bat

Das .bat-Skript funktioniert ohne Probleme in der Kommandozeile.


🔧 Lösung 3: Dauerhafte Änderung (nur für fortgeschrittene Nutzer)

Wenn du oft mit Skripten arbeitest, kannst du die Ausführungsrichtlinien für das gesamte System ändern:

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine

Achtung: Diese Einstellung wirkt sich auf alle Benutzer des Systems aus und sollte nur von erfahrenen Nutzern durchgeführt werden.


🔧 Lösung 4: Direkter Aufruf von Python in der virtuellen Umgebung

Wenn du nicht unbedingt die Umgebung aktivieren willst, kannst du auch direkt mit dem Python-Pfad arbeiten:

.venv\Scripts\python.exe your_script.py

🧪 Teste deine Lösung

Nachdem du eine der oben genannten Lösungen angewendet hast, solltest du folgenden Befehl eingeben können:

.\.venv\Scripts\activate

Wenn keine Fehlermeldung mehr erscheint und dein Prompt mit (venv) beginnt, ist alles in Ordnung.


📝 Fazit

Die Fehlermeldung „Die Ausführung von Skripts auf diesem System ist deaktiviert“ ist ein Sicherheitsmechanismus. Mit den oben beschriebenen Lösungen kannst du sie problemlos umgehen – ohne dein System unsicher zu machen.

Verwende die Lösung 1 für eine sichere, temporäre Anpassung. Nutze die Lösung 2, wenn du lieber mit der Kommandozeile arbeitest. Und sei vorsichtig bei dauerhaften Änderungen – nur wenn du weißt, was du tust.


📌 Bonus-Tipp: Automatisches Setup für neue Projekte

Um solche Probleme zukünftig zu vermeiden, kannst du dein Projekt-Setup automatisieren:

python -m venv .venv
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
.\.venv\Scripts\Activate.ps1

So hast du alles in einem Durchgang erledigt.