Hvis du for nylig er stødt på fejlen "eksternt-administreret-miljø", mens du installerer pip-pakker på Linux, kan du se, hvordan du løser det.
Hvis du ofte arbejder med Python og for nylig er skiftet til Ubuntu 23.04 eller Fedora version 38, er chancerne for, at du stødte på fejlen "eksternt-administreret-miljø" ved installation af pakker med Python-pakkehåndteringen, pip.
Dette kunne være frustrerende og ret overraskende, da denne fejl aldrig ville dukke op i de ældre versioner af Ubuntu, Fedora og andre distributioner. Lad os lære, hvad der præcist forårsager denne fejl, og hvordan du kan rette den hurtigt.
Hvorfor opstår fejlen "eksternt administreret miljø".
De seneste versioner af alle Linux-distributioner overtager standarderne defineret i PEP-668. Disse ændringer sikrer, at pip-pakker ikke vil blive installeret i en global kontekst som standard.
Dette blev implementeret i et forsøg på at undgå konflikt mellem distributionens pakkehåndtering og Python pakkehåndteringsværktøjer. Du kan lære om detaljerne i
officiel PEP-668 dokumentation. Hvis du ønsker at vende tilbage eller tilsidesætte denne mekanisme, kan du tage tre tilgange.1. Slet filen "EKSTERNT ADMINISTRERET".
Dette er den enkleste rettelse til pip-fejlen "eksternt styret". Alt du skal gøre er at navigere til /usr/lib/python3.xx og slet EKSTERNT STYRET fil i mappen. Her er kommandoerne til at gøre det:
cd /usr/lib/python3.11
sudo rm EXTERNALLY-MANAGED
Det er alt, du skal gøre for at rette fejlen. Hvis du vælger at gendanne denne mekanisme, skal du oprette den samme fil igen med berøringskommandoen:
sudo touch EXTERNALLY-MANAGED
Nu skulle du være i stand til at installere pakker problemfrit med pip eller pip3.
2. Brug virtuelle miljøer til at installere pip-pakker
En anden tilgang, du kan tage, er at bruge virtuelle miljøer til dit Python-projekt. Virtuelle miljøer er en fantastisk måde at isolere programspecifikke pakker fra operativsystemet og giver dig også mulighed for pænt at organisere dit projekt.
Sådan opretter du et virtuelt miljø og installerer pakker med pip:
- Først skal du oprette det virtuelle miljø med:
python3 -m venv venv
- Kilde aktiveringsfilen inde i bin-mappen ved hjælp af kildekommandoen:
source venv/bin/activate
Din shell-prompt skal opdateres med navnet på det virtuelle miljø. Nu vil du være i stand til at installere alle Python-pakker, du ønsker.
Som du kan se, er openai Python-pakken kunne ikke installeres i starten, men efter oprettelse og skift til et virtuelt miljø, bliver den installeret fejlfrit.
3. Brug pipx til at installere Python-pakker
pipx er et værktøj til at installere Python-pakker i virtuelle og isolerede miljøer. Det automatiserer trin som at skabe virtuelle miljøer for hver pakke og skabe symbolske links til pakkerne i .local/bin mappe, så du til enhver tid kan kalde hver pakke fra skallen.
Brug af pipx til at installere pakker hjælper dig med at undgå fejlen "eksternt administreret miljø", da det installerer pakker i virtuelle miljøer. For at bruge pipx skal du først installere det med din distributions standardpakkehåndtering.
På Ubuntu/Debian-derivater:
sudo apt-get install pipx
På Arch-baserede systemer:
sudo pacman -S pipx
På Fedora/CentOS/RHEL:
sudo dnf install pipx
Når du har installeret pipx, skal du bruge det ligesom du ville bruge pip til at installere pakker. Her er et eksempel på en kommando:
pipx install openai
For at lære mere om pipx, kan du henvise til dens man-side ved at bruge man-kommandoen.
Nu ved du, hvordan du retter fejlen "eksternt administreret".
Efter at have rettet fejlen "eksternt-administreret-miljø" bør du være i stand til at fortsætte med at arbejde på dit projekt eller øve generel Python-programmering. Hvis du er fokuseret på sidstnævnte, vil du måske tjekke de forskellige gamified måder at lære på programmering, der hjælper dig med at lære Python eller et hvilket som helst sprog meget hurtigere på en praktisk og givende vej.