So beheben Sie den Fehler: Extern verwaltete Umgebung in Pip
Veröffentlicht: 2025-01-20Wenn Sie ein Python-Entwickler sind, ist beim Versuch, Pakete zu installieren oder zu aktualisieren, möglicherweise ein Fehler im Zusammenhang mit der „extern verwalteten Umgebung“ in Pip aufgetreten. Dieser Fehler tritt häufig auf, wenn Sie versuchen, Python-Pakete in einer vom System verwalteten Umgebung zu installieren oder zu ändern, beispielsweise wenn Sie eine Python-Distribution verwenden, die vom Paketmanager Ihres Betriebssystems verwaltet wird (z. B. APT unter Ubuntu oder Homebrew unter macOS). Wenn Sie die Ursachen verstehen und lernen, wie Sie dieses Problem beheben können, können Sie Zeit und Frustration sparen.
Inhaltsverzeichnis
Was ist der Fehler „Extern verwaltete Umgebung“?
Der Fehler „Extern verwaltete Umgebung“ tritt auf, wenn Sie versuchen, ein Paket in einer Python-Umgebung zu installieren oder zu aktualisieren, die nicht von Ihnen, sondern von Ihrem Betriebssystem oder einem Distributionspaketmanager kontrolliert wird. In solchen Umgebungen ist die Paketverwaltung (einschließlich Installationen, Updates und Entfernungen) häufig eingeschränkt, um die Systemstabilität sicherzustellen.
Pip, der Paketmanager für Python, erkennt, wenn die Umgebung extern verwaltet wird (außerhalb einer typischen benutzergesteuerten Umgebung wie einer virtuellen Umgebung oder einer isolierten Python-Installation) und löst diesen Fehler aus, um potenzielle Konflikte zu verhindern.
Häufige Fehlermeldung:
ERROR: Cannot install package because it is managed by the system's package manager.
Ursachen des Fehlers
- System-Python : Wenn Sie in der Standard-Python-Umgebung des Systems arbeiten, beispielsweise einer, die mit Ihrem Betriebssystem vorinstalliert war, kann dies den Fehler „Extern verwaltete Umgebung“ auslösen. Einige Betriebssysteme kontrollieren die Paketverwaltung streng, um versehentliche Änderungen zu verhindern, die Systemtools oder Abhängigkeiten zerstören könnten.
- Paketverwaltungskonflikt : Wenn Sie sowohl Pip als auch den Paketmanager eines Betriebssystems (z. B.
apt
,brew
oderyum
) verwenden, kann es zu Konflikten bei der Verwaltung bestimmter Python-Pakete kommen, was zu Einschränkungen bei der Installation oder Aktualisierung führt. - Berechtigungsproblem : In bestimmten vom System verwalteten Python-Umgebungen fehlen dem Benutzer möglicherweise die erforderlichen Berechtigungen zum Installieren oder Ändern von Paketen, insbesondere systemweiten Paketen.
- Fehlkonfiguration der virtuellen Umgebung : Wenn Sie versuchen, Pakete außerhalb einer virtuellen Umgebung zu installieren, oder wenn Ihre Umgebung nicht richtig eingerichtet ist, erlaubt Ihnen Pip möglicherweise nicht, die Installation durchzuführen.
So beheben Sie den Fehler „Extern verwaltete Umgebung“.
1. Verwenden Sie eine virtuelle Umgebung
Die effektivste Lösung ist die Nutzung einer virtuellen Umgebung . Virtuelle Umgebungen sind vom Python-System isoliert und ermöglichen Ihnen die freie Installation und Verwaltung von Paketen, ohne die vom System verwalteten Bibliotheken zu beeinträchtigen.
Schritte zum Erstellen einer virtuellen Umgebung:
- Installieren Sie
virtualenv
(falls nicht installiert):pip install virtualenv
- Erstellen Sie eine virtuelle Umgebung:
virtualenv venv
Dadurch wird eine neue isolierte Umgebung im Verzeichnis
venv/
erstellt. - Aktivieren Sie die virtuelle Umgebung:
- Unter Windows:
.\venv\Scripts\activate
- Unter macOS/Linux:
source venv/bin/activate
- Unter Windows:
- Jetzt können Sie Pakete installieren, ohne dass der Fehler „Extern verwaltete Umgebung“ auftritt.
pip install <package-name>
- So deaktivieren Sie die virtuelle Umgebung:
deactivate
Durch den Einsatz virtueller Umgebungen können Sie Konflikte mit dem System-Python vermeiden und Abhängigkeiten für jedes Projekt frei verwalten.
2. Verwenden Sie das Flag --user
für die Installation auf Benutzerebene
Wenn Sie keine virtuelle Umgebung nutzen möchten oder können, können Sie Python-Pakete auf Benutzerebene installieren, indem Sie das Flag --user
verwenden. Dadurch werden Pakete im Home-Verzeichnis Ihres Benutzers installiert und der systemweite Paketmanager umgangen.
So installieren Sie ein Paket mit dem Flag --user
:
pip install --user <package-name>
Dadurch wird das Paket nur für Ihr Benutzerkonto installiert und der Fehler im Zusammenhang mit der vom System verwalteten Umgebung vermieden.
3. Aktualisieren Sie Pip und Setuptools
Manchmal kann der Fehler mit veralteten Versionen von Pip oder Setuptools zusammenhängen. Stellen Sie sicher, dass Sie die neuesten Versionen verwenden, indem Sie diese aktualisieren:
pip install --upgrade pip setuptools
Durch ein Upgrade dieser Tools können Kompatibilitätsprobleme behoben werden, die den Fehler verursachen könnten.
4. Suchen Sie nach Konflikten mit dem Systempaket-Manager
Wenn Sie eine vom System verwaltete Umgebung verwenden, kann es zu Konflikten zwischen den vom Paketmanager des Betriebssystems installierten Paketen und den von Pip verwalteten Paketen kommen. Beispielsweise könnten unter Linux über apt
oder yum
Python-Pakete installiert sein, die mit den Versionen in Konflikt stehen, die Pip zu installieren versucht.
Um diese Konflikte zu vermeiden:
- Überprüfen Sie, welcher Paketmanager Python und Pakete installiert hat.
- Deinstallieren Sie ggf. in Konflikt stehende Pakete mit dem Paketmanager des Systems (z. B.
apt-get remove python3-pip
unter Ubuntu). - Verwenden Sie Pip in einer kontrollierteren Umgebung (z. B. einer virtuellen Umgebung oder einer Benutzerinstallation).
5. Stellen Sie sicher, dass die Berechtigungen korrekt sind
Stellen Sie sicher, dass Sie über die erforderlichen Berechtigungen zum Installieren oder Ändern von Paketen verfügen. Auf einigen Systemen müssen Sie möglicherweise sudo
(unter Linux/macOS) Ihren Pip-Befehlen voranstellen:
sudo pip install <package-name>
Seien Sie jedoch vorsichtig, wenn Sie sudo
verwenden, da es die Python-Umgebung des Systems verändern und möglicherweise Probleme mit anderer Software verursachen kann, die von Python abhängt.
6. Suchen Sie nach fehlendem pip
oder python3-pip
Wenn in Ihrer System-Python-Installation Pip oder das erforderliche Paket python3-pip
fehlt, installieren Sie es über den Paketmanager Ihres Systems. Zum Beispiel:
- Unter Ubuntu/Debian:
sudo apt-get install python3-pip
Sobald Pip installiert ist, können Sie es weiterhin zum Verwalten von Paketen verwenden, ohne dass der Fehler „Extern verwaltete Umgebung“ auftritt.
Abschluss
Der Fehler „extern verwaltete Umgebung“ in Pip ist ein häufiges Problem, das auftritt, wenn versucht wird, Pakete in einer systemgesteuerten Python-Umgebung zu installieren. Um das Problem zu lösen, ist die Verwendung einer virtuellen Umgebung die effektivste Lösung, da sie eine kontrollierte und isolierte Umgebung für die Verwaltung von Abhängigkeiten bietet. Alternativ kann die Verwendung des Flags --user
, das Aktualisieren von Pip und setuptools oder das Sicherstellen, dass Sie über die richtigen Berechtigungen verfügen, zur Behebung des Fehlers beitragen.
Wenn Sie die Grundursachen dieses Fehlers verstehen und diese Lösungen befolgen, können Sie Ihre Python-Pakete reibungslos und ohne unnötige Unterbrechungen installieren und verwalten.