Installare l'interfaccia della riga di comando di Azure in Linux

L'interfaccia della riga di comando di Azure è uno strumento da riga di comando multipiattaforma che può essere installato localmente nei computer Linux. È possibile usare l'interfaccia della riga di comando di Azure in Linux per connettersi ad Azure ed eseguire comandi amministrativi nelle risorse di Azure. L'interfaccia della riga di comando in Linux consente l'esecuzione di vari comandi tramite un terminale usando prompt della riga di comando interattivi o uno script. Quando si è pronti per installare l'interfaccia della riga di comando di Azure in Linux, è consigliabile usare una gestione pacchetti di distribuzione Linux. Selezionare lo strumento di gestione pacchetti appropriato per la distribuzione dalle opzioni precedenti. Se non si dispone di una delle gestioni pacchetti elencate, è possibile installare manualmente l'interfaccia della riga di comando di Azure in Linux selezionando l'opzione Installa script .

La versione corrente dell'interfaccia della riga di comando di Azure è 2.49.0. Per informazioni sulla versione più recente, vedere le note sulla versione. Per individuare la versione installata e verificare se è necessario aggiornarla, eseguire az version.

Panoramica

Per le distribuzioni Linux con dnf, ad esempio RHEL 8/9 o CentOS Stream 8/9, sono disponibili pacchetti RPM per l'interfaccia della riga di comando di Azure.

Avviso

L'interfaccia della riga di comando di Azure 2.39.0 (rilasciata il 08/02/2022) è l'ultima versione supportata in RHEL 7 e Centos 7 e continuerà a ricevere correzioni di sicurezza fino alla fine della durata dei sistemi operativi. Microsoft non fornirà altri aggiornamenti o correzioni di bug in questa versione.

L'interfaccia della riga di comando di Azure e lo script di installazione linux continueranno a essere sviluppati e supportati da Microsoft. I pacchetti forniti dai repository Red Hat e CentOS vengono gestiti e supportati dalle rispettive distribuzioni.

La versione corrente dell'interfaccia della riga di comando di Azure è 2.49.0. Per informazioni sulla versione più recente, vedere le note sulla versione. Per individuare la versione installata e verificare se è necessario aggiornarla, eseguire az version.

Importante

Il pacchetto RPM dell'interfaccia della riga di comando di Azure dipende dal pacchetto python3. Nel sistema potrebbe trattarsi di una versione di Python che risale a una data precedente al requisito di Python 3.6.x. Se questo è il caso, trovare un pacchetto python3 sostitutivo.

Tenere presente che Python 2 ha raggiunto la fine della vita (EOL) il 1° gennaio 2020 e non riceverà più aggiornamenti. L'interfaccia della riga di comando ha eliminato il supporto per Python 2.7 dalla versione 2.1.0. Le versioni più recenti potrebbero non essere eseguite correttamente usando Python 2.7.

Nota

Usare gestione yum pacchetti se si usano sistemi Linux che non supportano la dnf gestione pacchetti.

Nota

Il azure-cli pacchetto supporta l'architettura ARM64 da 2.46.0.

Installazione

  1. Importare la chiave del repository Microsoft.

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  2. Per RHEL 9 o CentOS Stream 9, aggiungere packages-microsoft-com-prod il repository:

    sudo dnf install -y https://packages.microsoft.com/config/rhel/9.0/packages-microsoft-prod.rpm
    

    Per RHEL 8 o CentOS Stream 8, aggiungere packages-microsoft-com-prod il repository:

    sudo dnf install -y https://packages.microsoft.com/config/rhel/8/packages-microsoft-prod.rpm
    

    Per RHEL 7 o CentOS 7, aggiungere azure-cli il repository:

    echo -e "[azure-cli]
    name=Azure CLI
    baseurl=https://packages.microsoft.com/yumrepos/azure-cli
    enabled=1
    gpgcheck=1
    gpgkey=https://packages.microsoft.com/keys/microsoft.asc" | sudo tee /etc/yum.repos.d/azure-cli.repo
    
  3. Eseguire l'installazione con il comando dnf install.

    sudo dnf install azure-cli
    

Installazione di una versione specifica

È prima necessario configurare azure-cli le informazioni sul repository, come illustrato in precedenza. Le versioni disponibili sono disponibili nelle note sulla versione dell'interfaccia della riga di comando di Azure.

  1. Per visualizzare le versioni disponibili con il comando:

    dnf list --showduplicates azure-cli
    
  2. Per installare una versione specifica:

    sudo dnf install azure-cli-<version>-1.el7
    

Risoluzione dei problemi

Di seguito sono riportati alcuni problemi comuni che possono verificarsi durante l'installazione con dnf. Se si verifica un problema non trattato in questo articolo, segnalarlo in GitHub.

Eseguire l'installazione in RHEL 7.6 o altri sistemi senza Python 3

Se è possibile, aggiornare il sistema a una versione con il supporto ufficiale per python 3.6+ il pacchetto. In caso contrario, è necessario installare prima un pacchetto python3 e quindi installare l'interfaccia della riga di comando di Azure senza dipendenza.

È possibile usare il comando seguente per scaricare e installare lo script di installazione dell'interfaccia della riga di comando di Azure con python 3.6 la compilazione dall'origine:

curl -sL https://azurecliprod.blob.core.windows.net/rhel7_6_install.sh | sudo bash

È anche possibile eseguire questo codice passo passo:

Innanzitutto, l'interfaccia della riga di comando di Azure richiede SSL 1.1+ e sarà necessario compilare dall'origine prima di compilare openssl 1.1python3:

sudo dnf install gcc gcc-c++ make ncurses patch wget tar zlib zlib-devel -y
# build openssl from source
cd ~
wget https://www.openssl.org/source/openssl-1.1.1d.tar.gz
tar -xzf openssl-1.1.1d.tar.gz
cd openssl-1.1.1d
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl
make
sudo make install
# configure shared object lookup directory so that libssl.so.1.1 can be found
echo "/usr/local/ssl/lib" | sudo tee /etc/ld.so.conf.d/openssl-1.1.1d.conf
# reload config
sudo ldconfig -v

Compilare quindi Python 3 dall'origine:

PYTHON_VERSION="3.6.9"
PYTHON_SRC_DIR=$(mktemp -d)
wget -qO- https://www.python.org/ftp/python/$PYTHON_VERSION/Python-$PYTHON_VERSION.tgz | tar -xz -C "$PYTHON_SRC_DIR"
cd $PYTHON_SRC_DIR/Python-$PYTHON_VERSION
./configure --prefix=/usr --with-openssl=/usr/local/ssl
make
sudo make install

Infine, seguire i passaggi 1 e 2 dell'istruzione di installazione per aggiungere il repository dell'interfaccia della riga di comando di Azure. A questo punto è possibile scaricare il pacchetto e installarlo senza dipendenza.

Nota

Se il plug-in di download dnf non è già installato, si verifica un command not found errore durante l'esecuzione del codice seguente. Usare dnf install 'dnf-command(download)' per installare il plug-in di download dnf.

sudo dnf download azure-cli
sudo rpm -ivh --nodeps azure-cli-*.rpm

In alternativa, è anche possibile installare Python 3 usando un repository aggiuntivo. Usare questo metodo, se è stato configurato python3 , ma viene comunque visualizzato l'errore python3: command not found. Assicurarsi che sia stato incluso nel percorso.

scl enable rh-python36 bash

Il proxy blocca la connessione

Se non è possibile connettersi a una risorsa esterna a causa di un proxy, assicurarsi di aver impostato correttamente le variabili HTTP_PROXY e HTTPS_PROXY nella shell. Per sapere quali host e porte usare per questi proxy, è necessario contattare l'amministratore di sistema.

Questi valori vengono rispettati da numerosi programmi Linux, inclusi quelli usati nel processo di installazione. Per impostare questi valori:

# No auth
export HTTP_PROXY=http://[proxy]:[port]
export HTTPS_PROXY=https://[proxy]:[port]

# Basic auth
export HTTP_PROXY=http://[username]:[password]@[proxy]:[port]
export HTTPS_PROXY=https://[username]:[password]@[proxy]:[port]

Importante

Se si è protetti da un proxy, è necessario impostare queste variabili della shell per connettersi ai servizi di Azure con l'interfaccia della riga di comando. Se non si usa l'autenticazione di base, è consigliabile esportare queste variabili nel file .bashrc. Seguire sempre i criteri di sicurezza aziendale e i requisiti definiti dall'amministratore di sistema.

Per usare sempre questo proxy, è opportuno configurare in modo esplicito dnf. Assicurarsi che nella sezione [main] di /etc/dnf/dnf.conf siano presenti le righe seguenti:

[main]
# ...
proxy=http://[proxy]:[port] # If your proxy requires https, change http->https
proxy_username=[username] # Only required for basic auth
proxy_password=[password] # Only required for basic auth

Per ottenere la chiave di firma Microsoft e il pacchetto dal repository, il proxy deve consentire le connessioni HTTPS all'indirizzo seguente:

  • https://packages.microsoft.com

Non è possibile installare o eseguire l'interfaccia della riga di comando nel sottosistema Windows per Linux

Dato che il sottosistema Windows per Linux (WSL) è un livello di conversione delle chiamate di sistema basato sulla piattaforma Windows, potrebbe verificarsi un errore quando si prova a installare o eseguire l'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando usa alcune funzionalità che potrebbero contenere un bug in WSL. Se si verifica un errore indipendentemente dal modo in cui si installa l'interfaccia della riga di comando, è probabile che il problema riguardi WSL e non il processo di installazione dell'interfaccia della riga di comando.

Per risolvere i problemi dell'installazione di WSL e possibilmente i problemi riscontrati:

  • Se possibile, eseguire un processo di installazione identico in un computer o una VM Linux per verificare se ha esito positivo. Se riesce, il problema è quasi certamente correlato a WSL. Per avviare una VM Linux in Azure, vedere la documentazione su come creare una VM Linux nel portale di Azure.
  • Verificare di eseguire l'ultima versione di WSL. Per ottenere l'ultima versione, aggiornare l'installazione di Windows 10.
  • Verificare la presenza di problemi aperti relativi a WSL che potrebbero risolvere il problema riscontrato. Spesso sono disponibili suggerimenti su soluzioni alternative al problema o informazioni su una versione in cui verrà risolto.
  • Se non si trovano problemi esistenti per il problema riscontrato, segnalare un nuovo problema relativo a WSL assicurandosi di includere la maggiore quantità di informazioni possibile.

Se i problemi di installazione o esecuzione in WSL persistono, valutare la possibilità di installare l'interfaccia della riga di comando per Windows.

Aggiornamento

L'interfaccia della riga di comando include un comando predefinito per eseguire l'aggiornamento all'ultima versione:

az upgrade

Nota

Il comando az upgrade è stato aggiunto nella versione 2.11.0 e non funziona con le versioni precedenti alla 2.11.0. Le versioni precedenti possono essere aggiornate reinstallando come descritto in Installare l'interfaccia della riga di comando di Azure.

Per impostazione predefinita, questo comando aggiorna anche tutte le estensioni installate. Per altre opzioni di az upgrade, vedere la pagina di informazioni di riferimento sui comandi.

È anche possibile aggiornare l'interfaccia della riga di comando di Azure con il comando dnf update.

sudo dnf update azure-cli

Disinstallare

È possibile disinstallare l'interfaccia della riga di comando di Azure. Prima di eseguire la disinstallazione, usare il comando az feedback per segnalare aspetti da migliorare o correggere. L'obiettivo è realizzare un'interfaccia della riga di comando di Azure priva di bug e facile da usare. Se è stato rilevato un bug, segnalarlo in GitHub.

  1. Rimuovere il pacchetto dal sistema.

    sudo dnf remove azure-cli
    
  2. Se non si prevede di reinstallare l'interfaccia della riga di comando, rimuovere le informazioni del repository.

    sudo rm /etc/yum.repos.d/azure-cli.repo
    
  3. Se non si usano altri pacchetti Microsoft, rimuovere la chiave di firma.

    MSFT_KEY=`rpm -qa gpg-pubkey /* --qf "%{version}-%{release} %{summary}\n" | grep Microsoft | awk '{print $1}'`
    sudo rpm -e --allmatches gpg-pubkey-$MSFT_KEY
    

Avviso

L'ultimo pacchetto dell'interfaccia della riga di comando di Azure sviluppato da Microsoft per SUSE Linux Enterprise Server (SLES) e OpenSUSE (Leap) è la versione 2.38.0 (rilasciata il 07/05/2022). È possibile continuare a usare versioni cronologiche dell'interfaccia della riga di comando di Azure in questi sistemi, ma non saranno presenti ulteriori aggiornamenti o correzioni di bug da Microsoft per tali versioni.

L'interfaccia della riga di comando di Azure e lo script di installazione linux continueranno a essere sviluppati e supportati da Microsoft. I pacchetti forniti dai repository SUSE/OpenSUSE vengono gestiti e supportati da SUSE.

Panoramica

In Azure, SUSE e OpenSUSE virtual machines (VM) in base alle immagini Azure Marketplace hanno già installato l'interfaccia della riga di comando di Azure Command-Line.

Per installare l'interfaccia della riga di comando di Azure in SUSE/OpenSUSE, scegliere uno dei metodi seguenti:

  1. Usare il pacchetto Enterprise fornito da SUSE nei repository SUSE/OpenSUSE.

  2. Usare il metodo di installazione descritto nella scheda "Install script (any)".

Installare l'interfaccia da riga di comando di Azure

Installare da repository SUSE o OpenSUSE

Importante

Il pacchetto RPM dell'interfaccia della riga di comando di Azure dipende dal pacchetto python3. Nel sistema potrebbe trattarsi di una versione di Python che risale a una data precedente al requisito di Python 3.6.x. Se questo è il caso, trovare un pacchetto python3 sostitutivo.

Tenere presente che Python 2 ha raggiunto la fine della vita (EOL) il 1° gennaio 2020 e non riceverà più aggiornamenti. L'interfaccia della riga di comando ha eliminato il supporto per Python 2.7 dalla versione 2.1.0. Le versioni più recenti potrebbero non essere eseguite correttamente usando Python 2.7.

sudo zypper install -y azure-cli

Installare con lo script di installazione

È possibile installare manualmente l'interfaccia della riga di comando di Azure in qualsiasi versione di Linux usando l'opzione Installa script .

Se si esegue l'aggiornamento alla versione più recente usando questo metodo, assicurarsi di disinstallare prima la versione precedente e tutti i repository aggiunti per tale versione.

Installare dai repository Microsoft

Per installare la versione cronologica più recente dell'interfaccia della riga di comando di Azure usando i repository Microsoft, seguire questa procedura.

Questo pacchetto è stato testato con SLES 15 e OpenSUSE Leap 15.1)

  1. Installare curl:

    sudo zypper install -y curl
    
  2. Importare la chiave del repository Microsoft:

    sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc
    
  3. Creare le informazioni del repository azure-cli locale:

    sudo zypper addrepo --name 'Azure CLI' --check https://packages.microsoft.com/yumrepos/azure-cli azure-cli
    
  4. Aggiornare l'indice del pacchetto zypper ed eseguire l'installazione:

    sudo zypper install --from azure-cli azure-cli
    

    Digitare 2 per procedere con l'installazione ignorando alcune dipendenze.

Installare una versione specifica

È prima necessario configurare azure-cli le informazioni sul repository, come illustrato in precedenza. Le versioni disponibili sono disponibili nelle note sulla versione dell'interfaccia della riga di comando di Azure.

  1. Visualizzare le versioni disponibili usando questo comando:

    zypper search --details --match-exact azure-cli
    
  2. Per installare una versione specifica:

    sudo zypper install --from azure-cli azure-cli=<version>-1.el7
    

Risoluzione dei problemi

Di seguito sono riportati alcuni problemi comuni che possono verificarsi durante l'installazione con zypper. Se si verifica un problema non trattato in questo articolo, segnalarlo in GitHub.

NotImplementedError nella VM OpenSUSE 15

La macchina virtuale OpenSUSE 15 ha un'interfaccia della riga di comando di Azure preinstallata con la versione 2.0.45, che è obsoleta e presenta problemi con az login. Rimuovere questa versione insieme alle relative dipendenze prima di seguire l'istruzione Installa per aggiungere l'interfaccia della riga di comando di Azure più recente:

sudo zypper rm -y --clean-deps azure-cli

Se l'interfaccia della riga di comando di Azure è stata aggiornata senza rimuovere le dipendenze della versione 2.0.45, le relative dipendenze precedenti potrebbero influire sulla versione più recente dell'interfaccia della riga di comando di Azure. È necessario aggiungere di nuovo la versione precedente per collegarla alle relative dipendenze, quindi rimuovere azure-cli insieme alle dipendenze:

# The package name may vary on different system version, run 'zypper --no-refresh info azure-cli' to check the source package format
sudo zypper install --oldpackage azure-cli-2.0.45-4.22.noarch

sudo zypper rm -y --clean-deps azure-cli

Eseguire l'installazione in SLES 12 o altri sistemi senza Python 3.6

In SLES 12 il pacchetto predefinito python3 è 3.4 e non supportato dall'interfaccia della riga di comando di Azure. Eseguire prima i passaggi da 1 a 3 delle istruzioni di installazione per aggiungere il repository azure-cli. Creare quindi una versione successiva di python3 dall'origine. Infine, è possibile scaricare il pacchetto dell'interfaccia della riga di comando di Azure e installarlo senza dipendenza.

È possibile usare il comando seguente per installare o aggiornare l'interfaccia della riga di comando di Azure in base ai passaggi precedenti. Lo script installerà Python 3.8 in /usr/local/azcli e lo userà l'interfaccia della riga di comando di Azure impostando un alias di az su PATH=/usr/local/azcli/bin:$PATH az. È anche possibile scaricare lo script e modificarlo in base alle proprie esigenze. Ad esempio, è possibile modificare la versione di Python o il percorso di installazione.

curl -sL https://azurecliprod.blob.core.windows.net/sles12_install_v2.sh | sudo bash

Per la prima installazione, tenere presente di eseguire il comando seguente per attivare l'alias:

source ~/.bashrc

Il proxy blocca la connessione

Se non è possibile connettersi a una risorsa esterna a causa di un proxy, assicurarsi di aver impostato correttamente le variabili HTTP_PROXY e HTTPS_PROXY nella shell. Per sapere quali host e porte usare per questi proxy, è necessario contattare l'amministratore di sistema.

Questi valori vengono rispettati da numerosi programmi Linux, inclusi quelli usati nel processo di installazione. Per impostare questi valori:

# No auth
export HTTP_PROXY=http://[proxy]:[port]
export HTTPS_PROXY=https://[proxy]:[port]

# Basic auth
export HTTP_PROXY=http://[username]:[password]@[proxy]:[port]
export HTTPS_PROXY=https://[username]:[password]@[proxy]:[port]

Importante

Se si è protetti da un proxy, è necessario impostare queste variabili della shell per connettersi ai servizi di Azure con l'interfaccia della riga di comando. Se non si usa l'autenticazione di base, è consigliabile esportare queste variabili nel file .bashrc. Seguire sempre i criteri di sicurezza aziendale e i requisiti definiti dall'amministratore di sistema.

È anche possibile configurare zypper in modo esplicito (tramite yast2) per usare sempre questo proxy. A questo scopo, eseguire il comando yast2 proxy come utente con privilegi avanzati e inserire le informazioni richieste nel modulo. Se nel sistema è disponibile un gestore finestre, è anche possibile usare il riquadro Network Services > Proxy in YaST Control Center.

Per la configurazione avanzata o per altre informazioni, vedere la documentazione relativa alla configurazione dei proxy in OpenSUSE.

Per ottenere la chiave di firma Microsoft e ottenere il pacchetto dal repository, il proxy deve consentire le connessioni HTTPS agli indirizzi seguenti:

  • https://packages.microsoft.com
  • https://download.opensuse.org

Non è possibile installare o eseguire l'interfaccia della riga di comando nel sottosistema Windows per Linux

Dato che il sottosistema Windows per Linux (WSL) è un livello di conversione delle chiamate di sistema basato sulla piattaforma Windows, potrebbe verificarsi un errore quando si prova a installare o eseguire l'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando usa alcune funzionalità che potrebbero contenere un bug in WSL. Se si verifica un errore indipendentemente dal modo in cui si installa l'interfaccia della riga di comando, è probabile che il problema riguardi WSL e non il processo di installazione dell'interfaccia della riga di comando.

Per risolvere i problemi dell'installazione di WSL e possibilmente i problemi riscontrati:

  • Se possibile, eseguire un processo di installazione identico in un computer o una VM Linux per verificare se ha esito positivo. Se riesce, il problema è quasi certamente correlato a WSL. Per avviare una VM Linux in Azure, vedere la documentazione su come creare una VM Linux nel portale di Azure.
  • Verificare di eseguire l'ultima versione di WSL. Per ottenere l'ultima versione, aggiornare l'installazione di Windows 10.
  • Verificare la presenza di problemi aperti relativi a WSL che potrebbero risolvere il problema riscontrato. Spesso sono disponibili suggerimenti su soluzioni alternative al problema o informazioni su una versione in cui verrà risolto.
  • Se non si trovano problemi esistenti per il problema riscontrato, segnalare un nuovo problema relativo a WSL assicurandosi di includere la maggiore quantità di informazioni possibile.

Se i problemi di installazione o esecuzione in WSL persistono, valutare la possibilità di installare l'interfaccia della riga di comando per Windows.

Problema del certificato SSL

Quando un certificato è interrotto o obsoleto in un computer, potrebbe essere visualizzato un errore che indica che curl non è riuscito a verificare la legittimità del server e pertanto non è stato possibile stabilire una connessione sicura. Aggiornare il certificato per correggere il problema.

sudo zypper update-ca-certificates

Aggiornamento

L'interfaccia della riga di comando include un comando predefinito per eseguire l'aggiornamento all'ultima versione:

az upgrade

Nota

Il comando az upgrade è stato aggiunto nella versione 2.11.0 e non funziona con le versioni precedenti alla 2.11.0. Le versioni precedenti possono essere aggiornate reinstallando come descritto in Installare l'interfaccia della riga di comando di Azure.

Per impostazione predefinita, questo comando aggiorna anche tutte le estensioni installate. Per altre opzioni di az upgrade, vedere la pagina di informazioni di riferimento sui comandi.

È anche possibile aggiornare il pacchetto con il comando zypper update.

sudo zypper refresh
sudo zypper update azure-cli

Disinstallare

È possibile disinstallare l'interfaccia della riga di comando di Azure. Prima di eseguire la disinstallazione, usare il comando az feedback per segnalare aspetti da migliorare o correggere. L'obiettivo è realizzare un'interfaccia della riga di comando di Azure priva di bug e facile da usare. Se è stato rilevato un bug, segnalarlo in GitHub.

  1. Rimuovere il pacchetto dal sistema.

    sudo zypper remove -y azure-cli
    
  2. Se non si prevede di reinstallare l'interfaccia della riga di comando, rimuovere le informazioni del repository.

    sudo zypper removerepo azure-cli
    
  3. Se non si usano altri pacchetti Microsoft, rimuovere la chiave di firma Microsoft.

    MSFT_KEY=`rpm -qa gpg-pubkey /* --qf "%{version}-%{release} %{summary}\n" | grep Microsoft | awk '{print $1}'`
    sudo rpm -e --allmatches gpg-pubkey-$MSFT_KEY
    

Panoramica

Gestione apt pacchetti contiene pacchetti x86_64 e ARM64 per l'interfaccia della riga di comando di Azure testata nelle distribuzioni seguenti. Non è disponibile alcun pacchetto ARM64 per Ubuntu 18.04.

Distribuzione Versione
Ubuntu 18.04 LTS (Bionic Beaver), 20.04 LTS (Focal Fossa), 22.04 (Jammy Medfish)
Debian 10 (Buster), 11 (Bullseye)

Avviso

È possibile continuare a usare versioni cronologiche dell'interfaccia della riga di comando di Azure nei sistemi precedenti, ma non saranno presenti aggiornamenti o correzioni di bug. Prendere in considerazione l'aggiornamento a versioni più recenti di Ubuntu o Debian per usare l'interfaccia della riga di comando di Azure più recente.

Avviso

Ubuntu 20.04 (Focal Fossa) e 20.10 (Groovy Gorilla) includono un pacchetto azure-cli versione 2.0.81 fornito dal repository universe. Questo pacchetto è obsoleto e non è consigliato. Se il pacchetto è installato, rimuoverlo prima di continuare eseguendo il comando sudo apt remove azure-cli -y && sudo apt autoremove -y. Per altre informazioni su , vedere Gestione dei pacchetti Ubuntu o richiedere ubuntu.apt remove

Nota

Il azure-cli pacchetto supporta l'architettura ARM64 da 2.46.0.

Opzione di installazione

Sono disponibili due opzioni per installare l'interfaccia della riga di comando di Azure nel sistema. È possibile scaricare uno script di installazione che eseguirà automaticamente i comandi di installazione oppure è possibile eseguire manualmente i comandi di installazione in un processo dettagliato, se si preferisce. Entrambi i metodi sono descritti di seguito.

Opzione 1: Eseguire l'installazione con un unico comando

Il team che si occupa dell'interfaccia della riga di comando di Azure ha uno script per eseguire tutti i comandi di installazione in un unico passaggio. Questo script viene scaricato tramite curl e inviato tramite pipe direttamente a bash per installare l'interfaccia della riga di comando.

Per esaminare il contenuto dello script prima dell'esecuzione, è sufficiente scaricarlo usando curl ed esaminarlo nell'editor di testo preferito.

curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash

Opzione 2: Istruzioni dettagliate per l'installazione

Se si preferisce una procedura di installazione dettagliata, completare i passaggi seguenti per installare l'interfaccia della riga di comando di Azure.

  1. Ottenere i pacchetti necessari per il processo di installazione:

    sudo apt-get update
    sudo apt-get install ca-certificates curl apt-transport-https lsb-release gnupg
    
  2. Scaricare e installare la chiave di firma Microsoft:

    sudo mkdir -p /etc/apt/keyrings
    curl -sLS https://packages.microsoft.com/keys/microsoft.asc |
        gpg --dearmor |
        sudo tee /etc/apt/keyrings/microsoft.gpg > /dev/null
    sudo chmod go+r /etc/apt/keyrings/microsoft.gpg
    
  3. Aggiungere il repository software dell'interfaccia della riga di comando di Azure:
    AZ_REPO=$(lsb_release -cs)
    echo "deb [arch=`dpkg --print-architecture` signed-by=/etc/apt/keyrings/microsoft.gpg] https://packages.microsoft.com/repos/azure-cli/ $AZ_REPO main" |
        sudo tee /etc/apt/sources.list.d/azure-cli.list
    
  4. Aggiornare le informazioni del repository e installare il pacchetto azure-cli:

    sudo apt-get update
    sudo apt-get install azure-cli
    

Installazione di una versione specifica

Configurare le informazioni sul azure-cli repository come illustrato in precedenza. Le versioni disponibili sono disponibili nelle note sulla versione dell'interfaccia della riga di comando di Azure.

  1. Per visualizzare le versioni disponibili con il comando :

    apt-cache policy azure-cli
    
  2. Per installare una versione specifica:

    sudo apt-get install azure-cli=<version>-1~bullseye
    

Risoluzione dei problemi

Di seguito sono riportati alcuni problemi comuni che possono verificarsi durante l'installazione con apt. Se si verifica un problema non trattato in questo articolo, segnalarlo in GitHub.

Nessun problema di moduli in Ubuntu 20.04 (Focal)/WSL

Se è stato installato azure-cli in Focal senza aggiungere il repository software dell'interfaccia della riga di comando di Azure nel passaggio 3 delle istruzioni di installazione manuale o tramite questo script, è possibile che si verifichino problemi perché il pacchetto azure-cli 2.0.81 installato dal repository focal/universe è obsoleto e quindi non vengono trovati moduli denominati 'decorator' o 'antlr4'. Rimuoverlo eseguendo sudo apt remove azure-cli -y && sudo apt autoremove -y, quindi seguire le istruzioni indicate in precedenza per installare il pacchetto azure-cli più recente.

lsb_release non restituisce la versione della distribuzione base corretta

Alcune distribuzioni derivate da Ubuntu o debian (ad esempio Linux Mint) potrebbero non restituire il nome di versione corretto da lsb_release. Questo valore viene usato nel processo di installazione per determinare il pacchetto da installare. Se si conosce il nome di codice della versione Ubuntu o Debian da cui deriva la distribuzione, è possibile impostare manualmente il AZ_REPO valore quando si aggiunge il repository. In caso contrario, cercare le informazioni relative alla distribuzione in uso in merito a come determinare il nome in codice della distribuzione base e impostare AZ_REPO sul valore corretto.

Nessun pacchetto per la distribuzione in uso

In alcuni casi, un pacchetto aggiornato dell'interfaccia della riga di comando di Azure non è immediatamente disponibile dopo una versione di distribuzione. L'interfaccia della riga di comando di Azure è progettata per essere resiliente in relazione alle versioni future delle dipendenze e si basa sul minor numero possibile di dipendenze. Se non è disponibile alcun pacchetto per la distribuzione base in uso, provare un pacchetto per una distribuzione precedente.

A tale scopo, impostare manualmente il valore di AZ_REPO durante l'aggiunta del repository. Per le distribuzioni Ubuntu, usare il repository più recente jammy :

AZ_REPO="jammy"

Per le distribuzioni Debian, usare il repository più recente bullseye :

AZ_REPO="bullseye"

Importante

Le distribuzioni rilasciate prima di Ubuntu Bionic e Debian Buster non sono supportate.

Installazione dell'interfaccia della riga di comando di Azure non riuscita in elementary OS (eOS)

eOS non riesce a installare l'interfaccia della riga di comando di Azure perché lsb_release restituisce HERA, ovvero il nome della versione di eOS. La soluzione consiste nel correggere il file /etc/apt/sources.list.d/azure-cli.list e modificare hera main in bionic main.

Contenuto del file originale:

deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ hera main

Contenuto del file modificato

deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ bionic main

Il proxy blocca la connessione

Se non è possibile connettersi a una risorsa esterna a causa di un proxy, assicurarsi di aver impostato correttamente le variabili HTTP_PROXY e HTTPS_PROXY nella shell. Per sapere quali host e porte usare per questi proxy, è necessario contattare l'amministratore di sistema.

Questi valori vengono rispettati da numerosi programmi Linux, inclusi quelli usati nel processo di installazione. Per impostare questi valori:

# No auth
export HTTP_PROXY=http://[proxy]:[port]
export HTTPS_PROXY=https://[proxy]:[port]

# Basic auth
export HTTP_PROXY=http://[username]:[password]@[proxy]:[port]
export HTTPS_PROXY=https://[username]:[password]@[proxy]:[port]

Importante

Se si è protetti da un proxy, è necessario impostare queste variabili della shell per connettersi ai servizi di Azure con l'interfaccia della riga di comando. Se non si usa l'autenticazione di base, è consigliabile esportare queste variabili nel file .bashrc. Seguire sempre i criteri di sicurezza aziendale e i requisiti definiti dall'amministratore di sistema.

Per usare sempre questo proxy, è opportuno configurare in modo esplicito apt. Assicurarsi che nella sezione /etc/apt/apt.conf.d/ di un file di configurazione di apt siano presenti le righe seguenti. È consigliabile usare il file di configurazione globale esistente, un file di configurazione proxy esistente, 40proxies o 99local. In ogni caso, attenersi ai requisiti previsti dall'amministrazione del sistema.

Acquire {
    http::proxy "http://[username]:[password]@[proxy]:[port]";
    https::proxy "https://[username]:[password]@[proxy]:[port]";
}

Se il proxy non usa l'autenticazione di base, rimuovere la parte [username]:[password]@ dell'URI del proxy. Per maggiori informazioni sulla configurazione del proxy, vedere la documentazione ufficiale di Ubuntu:

Per ottenere la chiave di firma Microsoft e il pacchetto dal repository, il proxy deve consentire le connessioni HTTPS all'indirizzo seguente:

  • https://packages.microsoft.com

Non è possibile installare o eseguire l'interfaccia della riga di comando nel sottosistema Windows per Linux

Dato che il sottosistema Windows per Linux (WSL) è un livello di conversione delle chiamate di sistema basato sulla piattaforma Windows, potrebbe verificarsi un errore quando si prova a installare o eseguire l'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando usa alcune funzionalità che potrebbero contenere un bug in WSL. Se si verifica un errore indipendentemente dal modo in cui si installa l'interfaccia della riga di comando, è probabile che il problema riguardi WSL e non il processo di installazione dell'interfaccia della riga di comando.

Per risolvere i problemi dell'installazione di WSL e possibilmente i problemi riscontrati:

  • Se possibile, eseguire un processo di installazione identico in un computer o una VM Linux per verificare se ha esito positivo. Se riesce, il problema è quasi certamente correlato a WSL. Per avviare una VM Linux in Azure, vedere la documentazione su come creare una VM Linux nel portale di Azure.
  • Verificare di eseguire l'ultima versione di WSL. Per ottenere l'ultima versione, aggiornare l'installazione di Windows 10.
  • Verificare la presenza di problemi aperti relativi a WSL che potrebbero risolvere il problema riscontrato. Spesso sono disponibili suggerimenti su soluzioni alternative al problema o informazioni su una versione in cui verrà risolto.
  • Se non si trovano problemi esistenti per il problema riscontrato, segnalare un nuovo problema relativo a WSL assicurandosi di includere la maggiore quantità di informazioni possibile.

Se i problemi di installazione o esecuzione in WSL persistono, valutare la possibilità di installare l'interfaccia della riga di comando per Windows.

Aggiornamento

L'interfaccia della riga di comando include un comando predefinito per eseguire l'aggiornamento all'ultima versione:

az upgrade

Nota

Il comando az upgrade è stato aggiunto nella versione 2.11.0 e non funziona con le versioni precedenti alla 2.11.0. Le versioni precedenti possono essere aggiornate reinstallando come descritto in Installare l'interfaccia della riga di comando di Azure.

Per impostazione predefinita, questo comando aggiorna anche tutte le estensioni installate. Per altre opzioni di az upgrade, vedere la pagina di informazioni di riferimento sui comandi.

È anche possibile usare apt-get upgrade per aggiornare il pacchetto dell'interfaccia della riga di comando.

sudo apt-get update && sudo apt-get upgrade

Nota

Questo comando aggiorna tutti i pacchetti installati nel sistema che non hanno subito modifiche relative alle dipendenze. Per eseguire l'aggiornamento solo dell'interfaccia della riga di comando, usare apt-get install.

sudo apt-get update && sudo apt-get install --only-upgrade -y azure-cli

Disinstallare

È possibile disinstallare l'interfaccia della riga di comando di Azure. Prima di eseguire la disinstallazione, usare il comando az feedback per segnalare aspetti da migliorare o correggere. L'obiettivo è realizzare un'interfaccia della riga di comando di Azure priva di bug e facile da usare. Se è stato rilevato un bug, segnalarlo in GitHub.

  1. Eseguire la disinstallazione con apt-get remove:

    sudo apt-get remove -y azure-cli
    
  2. Se non si prevede di reinstallare l'interfaccia della riga di comando di Azure, rimuovere le relative informazioni del repository:

    sudo rm /etc/apt/sources.list.d/azure-cli.list
    
  3. Se non si usano altri pacchetti da Microsoft, rimuovere la chiave di firma:

    sudo rm /etc/apt/trusted.gpg.d/microsoft.gpg
    
  4. Rimuovere eventuali pacchetti non necessari:

    sudo apt autoremove
    

Panoramica

Le RPMS vengono rilasciate per Azure Linux.

Nota

Il azure-cli pacchetto supporta l'architettura ARM64 da 2.46.0.

Installazione

  1. Installare il set ufficiale di certificati radice attendibili di Microsoft:

    sudo tdnf install ca-certificates
    
  2. Installare l'interfaccia della riga di comando di Azure:

    sudo tdnf install azure-cli
    

Installare una versione specifica

Le versioni disponibili sono disponibili nelle note sulla versione dell'interfaccia della riga di comando di Azure.

Per visualizzare le versioni disponibili con il comando:

tdnf list azure-cli

Per installare una versione specifica:

sudo tdnf install azure-cli-<version>-1

Aggiornamento

Aggiornare l'interfaccia della riga di comando di Azure con il tdnf update comando:

sudo tdnf update azure-cli

Disinstallare

È possibile disinstallare l'interfaccia della riga di comando di Azure. Prima di eseguire la disinstallazione, usare il comando az feedback per segnalare aspetti da migliorare o correggere. L'obiettivo è realizzare un'interfaccia della riga di comando di Azure priva di bug e facile da usare. Se è stato rilevato un bug, segnalarlo in GitHub.

Rimuovere il pacchetto dal sistema:

sudo tdnf remove azure-cli

Panoramica

Nota

Si consiglia vivamente di installare l'interfaccia della riga di comando con una gestione pacchetti. Uno strumento di gestione pacchetti consente di ottenere sempre gli aggiornamenti più recenti e garantisce la stabilità dei componenti dell'interfaccia della riga di comando. Verificare se esiste un pacchetto per la distribuzione prima di eseguire l'installazione manuale.

L'interfaccia della riga di comando richiede il software seguente:

Importante

L'interfaccia della riga di comando di Azure ha eliminato il supporto per Python 2.7 dalla versione 2.1.0. Le versioni più recenti potrebbero non essere eseguite correttamente usando Python 2.7.

Eseguire l'installazione o l'aggiornamento

Sia l'installazione che l'aggiornamento dell'interfaccia della riga di comando di Azure richiedono la ripetizione dell'esecuzione dello script di installazione.

curl -L https://aka.ms/InstallAzureCli | bash

Lo script può anche essere scaricato ed eseguito nell'ambiente locale. Potrebbe essere necessario riavviare la shell in modo da rendere effettive le modifiche.

Risoluzione dei problemi

Di seguito sono riportati alcuni problemi comuni che possono verificarsi durante l'installazione manuale. Se si verifica un problema non trattato in questo articolo, segnalarlo in GitHub.

Errore curl di tipo "Object Moved"

Se viene restituito da curl un errore relativo al parametro -L o se viene visualizzato un messaggio di errore che include il testo "Object Moved", provare a usare l'URL completo invece dell'URL di reindirizzamento aka.ms:

curl https://azurecliprod.blob.core.windows.net/install | bash

Comando az non trovato

Se non è possibile eseguire il comando dopo l'installazione usando bash o zsh, provare a cancellare la cache hash dei comandi della shell e verificare se il problema è risolto.

hash -r

Questo problema può verificarsi anche se la shell non è stata riavviata dopo l'installazione. Assicurarsi che il percorso del comando az sia in $PATH. La posizione del comando az è

 <install path>/bin

Il proxy blocca la connessione

Se non è possibile connettersi a una risorsa esterna a causa di un proxy, assicurarsi di aver impostato correttamente le variabili HTTP_PROXY e HTTPS_PROXY nella shell. Per sapere quali host e porte usare per questi proxy, è necessario contattare l'amministratore di sistema.

Questi valori vengono rispettati da numerosi programmi Linux, inclusi quelli usati nel processo di installazione. Per impostare questi valori:

# No auth
export HTTP_PROXY=http://[proxy]:[port]
export HTTPS_PROXY=https://[proxy]:[port]

# Basic auth
export HTTP_PROXY=http://[username]:[password]@[proxy]:[port]
export HTTPS_PROXY=https://[username]:[password]@[proxy]:[port]

Importante

Se si è protetti da un proxy, è necessario impostare queste variabili della shell per connettersi ai servizi di Azure con l'interfaccia della riga di comando. Se non si usa l'autenticazione di base, è consigliabile esportare queste variabili nel file .bashrc. Seguire sempre i criteri di sicurezza aziendale e i requisiti definiti dall'amministratore di sistema.

Per ottenere gli script di installazione, il proxy deve consentire le connessioni HTTPS agli indirizzi seguenti:

  • https://aka.ms/
  • https://azurecliprod.blob.core.windows.net/
  • https://pypi.python.org
  • Endpoint usati da gestione pacchetti della distribuzione (se presente) per i pacchetti di base

Non è possibile installare o eseguire l'interfaccia della riga di comando nel sottosistema Windows per Linux

Dato che il sottosistema Windows per Linux (WSL) è un livello di conversione delle chiamate di sistema basato sulla piattaforma Windows, potrebbe verificarsi un errore quando si prova a installare o eseguire l'interfaccia della riga di comando di Azure. L'interfaccia della riga di comando usa alcune funzionalità che potrebbero contenere un bug in WSL. Se si verifica un errore indipendentemente dal modo in cui si installa l'interfaccia della riga di comando, è probabile che il problema riguardi WSL e non il processo di installazione dell'interfaccia della riga di comando.

Per risolvere i problemi dell'installazione di WSL e possibilmente i problemi riscontrati:

  • Se possibile, eseguire un processo di installazione identico in un computer o una VM Linux per verificare se ha esito positivo. Se riesce, il problema è quasi certamente correlato a WSL. Per avviare una VM Linux in Azure, vedere la documentazione su come creare una VM Linux nel portale di Azure.
  • Verificare di eseguire l'ultima versione di WSL. Per ottenere l'ultima versione, aggiornare l'installazione di Windows 10.
  • Verificare la presenza di problemi aperti relativi a WSL che potrebbero risolvere il problema riscontrato. Spesso sono disponibili suggerimenti su soluzioni alternative al problema o informazioni su una versione in cui verrà risolto.
  • Se non si trovano problemi esistenti per il problema riscontrato, segnalare un nuovo problema relativo a WSL assicurandosi di includere la maggiore quantità di informazioni possibile.

Se i problemi di installazione o esecuzione in WSL persistono, valutare la possibilità di installare l'interfaccia della riga di comando per Windows.

Disinstallare

È possibile disinstallare l'interfaccia della riga di comando di Azure. Prima di eseguire la disinstallazione, usare il comando az feedback per segnalare aspetti da migliorare o correggere. L'obiettivo è realizzare un'interfaccia della riga di comando di Azure priva di bug e facile da usare. Se è stato rilevato un bug, segnalarlo in GitHub.

Disinstallare l'interfaccia della riga di comando eliminando direttamente i file dal percorso scelto al momento dell'installazione. Il percorso di installazione predefinito è la home directory dell'utente ($HOME).

  1. Rimuovere i file dell'interfaccia della riga di comando installati.

    rm -r <install location>/lib/azure-cli
    rm <install location>/bin/az
    
  2. Modificare il file $HOME/.bash_profile per rimuovere la riga seguente:

    <install location>/lib/azure-cli/az.completion
    
  3. Se si usa bash o zsh, ricaricare la cache dei comandi della shell.

    hash -r
    

Rimuovi dati

Se non si prevede di reinstallare l'interfaccia della riga di comando di Azure, rimuovere i dati.

rm -rf ~/.azure

Passaggi successivi

Ora che l'interfaccia della riga di comando di Azure è stata installata, passare a una breve presentazione delle relative funzionalità e dei comandi comuni.