Come correggere l’errore pip “ambiente gestito esternamente” su Linux

Se lavori spesso con Python e recentemente sei passato a Ubuntu 23.04 o Fedora versione 38, è probabile che ti sia imbattuto nell’errore “ambiente gestito esternamente” durante l’installazione dei pacchetti con il gestore pacchetti Python, pip.

Ciò potrebbe essere frustrante e piuttosto sorprendente poiché questo errore non verrebbe mai visualizzato nelle versioni precedenti di Ubuntu, Fedora e altre distribuzioni. Impariamo cosa sta causando esattamente questo errore e come risolverlo rapidamente.

Perché si verifica l’errore “ambiente gestito esternamente”.

Le ultime versioni di tutte le distribuzioni Linux stanno adottando gli standard definiti in PEP-668. Queste modifiche garantiscono che i pacchetti pip non verranno installati in un contesto globale per impostazione predefinita.

  I 5 migliori SSD NVMe da utilizzare con Linux (edizione 2021)

Ciò è stato implementato nel tentativo di evitare conflitti tra il gestore dei pacchetti della distribuzione e gli strumenti di gestione dei pacchetti Python. Puoi conoscere i dettagli nel documentazione ufficiale PEP-668. Se desideri ripristinare o ignorare questo meccanismo, puoi adottare tre approcci.

1. Cancellare il File “GESTITO ESTERNAMENTE”.

Questa è la soluzione più semplice all’errore pip “gestito esternamente”. Tutto quello che devi fare è accedere a /usr/lib/python3.xx ed eliminare il file EXTERNALLY-MANAGED nella directory. Ecco i comandi per farlo:

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

Questo è tutto ciò che devi fare per correggere l’errore. Se scegli di ripristinare questo meccanismo, crea nuovamente lo stesso file con il comando touch:

 sudo touch EXTERNALLY-MANAGED 

Ora dovresti essere in grado di installare i pacchetti senza problemi con pip o pip3.

2. Utilizzare ambienti virtuali per installare pacchetti pip

Un altro approccio che puoi adottare è utilizzare ambienti virtuali per il tuo progetto Python. Gli ambienti virtuali sono un ottimo modo per isolare pacchetti specifici del programma dal sistema operativo e consentono anche di organizzare in modo ordinato il tuo progetto.

  Come riavviare o spegnere Linux utilizzando la riga di comando

Ecco come creare un ambiente virtuale e installare i pacchetti con pip:

  • Innanzitutto, crea l’ambiente virtuale con:
     python3 -m venv venv 
  • Ottieni il fileactivate all’interno della directory bin utilizzando il comando source:
     source venv/bin/activate 
  • Il prompt della shell dovrebbe essere aggiornato con il nome dell’ambiente virtuale. Ora sarai in grado di installare tutti i pacchetti Python che desideri.

    Come puoi vedere, all’inizio non è stato possibile installare il pacchetto openai Python, ma dopo averlo creato ed essere passato a un ambiente virtuale, viene installato in modo impeccabile.

    3. Usa pipx per installare i pacchetti Python

    pipx è un’utilità per l’installazione di pacchetti Python in ambienti virtuali e isolati. Automatizza passaggi come la creazione di ambienti virtuali per ciascun pacchetto e la creazione di collegamenti simbolici ai pacchetti nella cartella .local/bin in modo da poter chiamare ciascun pacchetto dalla shell in ogni momento.

      5 migliori docking station per laptop da utilizzare con Linux (edizione 2021)

    L’uso di pipx per installare i pacchetti ti aiuta a evitare l’errore “ambiente gestito esternamente” mentre installa i pacchetti in ambienti virtuali. Per utilizzare pipx, installalo innanzitutto con il gestore pacchetti predefinito della tua distribuzione.

    Sui derivati ​​​​di Ubuntu/Debian:

     sudo apt-get install pipx 

    Sui sistemi basati su Arch:

     sudo pacman -S pipx 

    Su Fedora/CentOS/RHEL:

     sudo dnf install pipx 

    Una volta installato pipx, usalo proprio come useresti pip per installare i pacchetti. Ecco un comando di esempio:

     pipx install openai 

    Per saperne di più su pipx, puoi fare riferimento alla sua pagina man usando il comando man.

    Ora sai come correggere l’errore “gestito esternamente”.

    Dopo aver corretto l’errore “ambiente gestito esternamente”, dovresti essere in grado di continuare a lavorare sul tuo progetto o a praticare la programmazione Python generale. Se ti concentri su quest’ultimo, potresti voler dare un’occhiata ai diversi modi gamificati di apprendimento della programmazione che ti aiuteranno a imparare Python o qualsiasi linguaggio molto più rapidamente in modo pratico e gratificante.