Så här fixar du pip-felet 'externt hanterad miljö' på Linux

Så här fixar du pip-felet 'externt hanterad miljö' på Linux
Läsare som du hjälper till att stödja MUO. När du gör ett köp med hjälp av länkar på vår webbplats kan vi tjäna en affiliate-provision. Läs mer.

Om du ofta arbetar med Python och nyligen bytte till Ubuntu 23.04 eller Fedora version 38, är chansen stor att du stötte på felet 'externt hanterad miljö' när du installerade paket med Python-pakethanteraren, pip.





Dagens video från MUO SCROLL FÖR ATT FORTSÄTTA MED INNEHÅLL

Detta kan vara frustrerande och ganska överraskande eftersom det här felet aldrig skulle dyka upp i de äldre versionerna av Ubuntu, Fedora och andra distributioner. Låt oss lära oss exakt vad som orsakar det här felet och hur du snabbt kan åtgärda det.





Varför felet 'externt hanterad miljö' uppstår

  pip externt hanterat fel

De senaste versionerna av alla Linux-distributioner antar de standarder som definieras i PEP-668. Dessa ändringar säkerställer att pip-paket inte installeras i ett globalt sammanhang som standard.





Detta implementerades i ett försök att undvika konflikter mellan distributionens pakethanterare och Python-pakethanteringsverktyg. Du kan lära dig mer om detaljerna i officiell PEP-668-dokumentation . Om du vill återställa eller åsidosätta den här mekanismen kan du ta tre tillvägagångssätt.

1. Ta bort filen 'EXTERNT HANTERAD'.

  tar bort EXTERNT HANTERAD fil

Detta är den enklaste korrigeringen av pip-felet 'externt hanterad'. Allt du behöver göra är att navigera till /usr/lib/python3.xx och ta bort EXTERNT HANTERAD filen i katalogen. Här är kommandona för att göra det:



 cd /usr/lib/python3.11 
sudo rm EXTERNALLY-MANAGED

Det är allt du behöver göra för att åtgärda felet. Om du väljer att återställa den här mekanismen, skapa samma fil igen med pekkommandot :

begagnad dator reservdel nära mig
 sudo touch EXTERNALLY-MANAGED

Nu ska du kunna installera paket sömlöst med pip eller pip3.





hur man ansluter xbox one controller till pc med bluetooth

2. Använd virtuella miljöer för att installera pip-paket

Ett annat tillvägagångssätt du kan ta är att använda virtuella miljöer för ditt Python-projekt . Virtuella miljöer är ett utmärkt sätt att isolera programspecifika paket från operativsystemet och låter dig även organisera ditt projekt snyggt.

Så här skapar du en virtuell miljö och installerar paket med pip:





  1. Skapa först den virtuella miljön med:
     python3 -m venv venv
  2. Käll in den aktiverade filen i bin-katalogen med hjälp av källkommandot:
     source venv/bin/activate

Din skalprompt bör uppdateras med namnet på den virtuella miljön. Nu kommer du att kunna installera alla Python-paket du vill.

  att använda venv löser det externt hanterade felet

Som du kan se openai Python-paketet kunde inte installeras till en början, men efter att ha skapat och bytt till en virtuell miljö, installeras det felfritt.

3. Använd pipx för att installera Python-paket

  installera paket med pipx

pipx är ett verktyg för att installera Python-paket i virtuella och isolerade miljöer. Det automatiserar steg som att skapa virtuella miljöer för varje paket och skapa symboliska länkar till paketen i .local/bin mapp så att du kan anropa varje paket från skalet hela tiden.

Att använda pipx för att installera paket hjälper dig att undvika felet 'externt hanterad miljö' när det installerar paket i virtuella miljöer. För att använda pipx, installera det först med standardpakethanteraren för din distribution.

På Ubuntu/Debian-derivat:

 sudo apt-get install pipx

På Arch-baserade system:

 sudo pacman -S pipx

På Fedora/CentOS/RHEL:

vilken webbläsare fungerar med windows xp
 sudo dnf install pipx

När du har installerat pipx, använd det precis som du skulle använda pip för att installera paket. Här är ett exempel på kommando:

 pipx install openai

För att lära dig mer om pipx kan du gå till dess man-sida med hjälp av man-kommandot.

Nu vet du hur du åtgärdar felet 'externt hanterad'.

Efter att ha fixat felet 'externt hanterad miljö' bör du kunna fortsätta arbeta med ditt projekt eller öva allmän Python-programmering. Om du är fokuserad på det senare, kanske du vill kolla in de olika spelifierade sätten att lära dig programmering som hjälper dig att lära dig Python, eller vilket språk som helst mycket snabbare på ett praktiskt och givande sätt.