L’automazione è ovunque oggi nell’IT. Dalla fornitura di macchine virtuali alla distribuzione di siti web, l’automazione è fondamentale soprattutto quando devi gestire più elementi. Anche la gestione dei file tra lo storage di Azure e il tuo computer locale può essere automatizzata utilizzando un programma di utilità chiamato AzCopy.
AzCopy è un’utilità standalone che consente la gestione dello storage di Azure. Con AzCopy, è possibile eseguire diverse operazioni. In questo articolo, ci concentreremo su:
- Creazione di contenitori di storage
- Copia dei file locali nei contenitori
- Copia dei file tra i contenitori
Iniziamo!
Se preferisci imparare tramite video, puoi anche guardare un video di TechSnips strettamente correlato a ciò che imparerai in questo articolo.
Prerequisiti
Questo articolo sarà una procedura guidata che illustra vari compiti. Se desideri seguirla, assicurati di soddisfare i seguenti requisiti prima di iniziare.
- Un abbonamento ad Azure. Se non lo hai ancora, puoi richiedere una sottoscrizione di prova.
- Un account di archiviazione di Azure. Si prega di fare riferimento a Crea un account di archiviazione per saperne di più.
- AzCopy è stato scaricato e autenticato (controlla l’articolo Come Scaricare e Installare lo Strumento AzCopy per imparare come configurare questo)
Creazione di Nuovi Contenitori di Archiviazione
Prima di tutto, utilizziamo AzCopy per creare nuovi contenitori di archiviazione in un account di archiviazione esistente. Nell’esempio che userai, creerai due nuovi contenitori chiamati container1 e container2.
Nota: Prima di creare un nuovo contenitore, devi conoscere l’URL del punto di accesso del contenitore. L’URL del punto di accesso segue il formato: https://[storageaccountname].blob.core.windows.net/[container_name].
Prima, definisci l’URL del punto di accesso. In questo esempio, i contenitori verranno creati in un account di archiviazione chiamato storageaccount1207 creando due URL del punto di accesso:
- https://storageaccount1207.blob.core.windows.net/container1
- https://storageaccount1207.blob.core.windows.net/container2
Ora che conosci gli URL del punto di accesso, utilizza il comando azcopy make
passando ciascun URL del punto di accesso come parametro come mostrato di seguito.

Copiare File da/a Contenitori Azure
Una volta creato un contenitore di archiviazione, probabilmente ti stai chiedendo “Come carico su Azure Blob Storage?”. Puoi farlo con AzCopy utilizzando il comando azcopy copy
. Puoi utilizzare AzCopy per copiare PST, VHD e altro.
Utilizzo dell’Autenticazione OAuth
Quando si utilizza AzCopy per copiare file nei blob, si hanno un paio di opzioni per l’autenticazione. Poiché si presume che tu abbia già effettuato l’autenticazione su Azure Storage (poiché era nei prerequisiti), puoi semplicemente eseguire azcopy copy
specificando un percorso file locale seguito da un URL del contenitore come mostrato di seguito.
Non specificando nessun altro parametro, si utilizza l’autenticazione OAuth.

Come si fa a confermare che il file è stato copiato nel contenitore del blob di Azure? Puoi utilizzare il comando azcopy list [URL del contenitore]
. Vedi l’esempio di seguito che mostra che il file file1.txt
esiste.

Per scaricare un file dal blob di Azure nella directory locale, è sufficiente invertire i posti degli argomenti di origine e destinazione. Vedi l’esempio di seguito.

Utilizzo di un Token di Accesso Condiviso (SAS)
Per utilizzare un token SAS, è necessario prima generarne uno. Se non sai come generare un token SAS, consulta l’articolo Come Generare un Token SAS di Azure per Accedere agli Account di Archiviazione.
Una volta disponibile un token SAS, è possibile aggiungere il token all’URL del contenitore di destinazione come parametro HTTP come mostrato di seguito.
Se stai utilizzando PowerShell e hai memorizzato il token in una variabile (ad es. $token
), puoi passare quella variabile invece della stringa del token completa come nel comando seguente.

Utilizzando lo stesso token (supponendo che sia ancora valido), puoi anche scaricare file dallo storage di Azure allo storage locale. L’esempio qui sotto copia il file file1.txt
dallo storage di Azure con un token SAS.
Nel codice qui sotto, puoi vedere che questa volta invece di aggiungere il token dopo il nome del contenitore, viene aggiunto prima il nome del file. Questo istruisce AzCopy a copiare un file specifico usando l’autenticazione SAS.

Copiare una directory da/a uno storage di Azure
Se hai molti file da trasferire o scaricare da Azure, puoi anche copiare intere directory in una volta sola usando azcopy copy
. Il comando per farlo non è molto diverso da quello che usi per copiare singoli file.
Di seguito puoi vedere un comando che copia ricorsivamente la cartella C:\\MyDir
nel contenitore blob container1. Il parametro --recursive
è fondamentale qui. Il flag --recursive
alla fine del comando indica che tutti i contenuti dalla directory genitore e dalle eventuali sottodirectory che possono esistere verranno copiati.
Puoi vedere di seguito che dieci file all’interno della cartella C:\MyDir sono stati tutti copiati con successo in base al riepilogo del lavoro.

Copiare file tra contenitori di Azure Storage
In tutto questo articolo, hai usato abbastanza il comando azcopy copy
. Non c’è bisogno di fermarsi ora! Non solo puoi copiare directory e file da/per on-prem, ma puoi anche copiare i blob tra contenitori di archiviazione.
Invece di utilizzare un percorso di file locale, cambieresti i parametri per utilizzare un URL del contenitore blob come origine e un altro URL del contenitore blob come destinazione.
Hai già creato due contenitori di archiviazione chiamati container1 e container2. In questa sezione, copiamo file, directory e persino l’intero contenitore di blob da container1 a container2.
Per copiare i file da un contenitore all’altro, prima genera un nuovo token SAS. Dato che i due contenitori appartengono allo stesso account di archiviazione, lo stesso token può essere usato sia per l’origine che per la destinazione.
Assumendo che tu abbia salvato la stringa del token in una variabile chiamata $token
(se esegui azcopy con PowerShell), puoi facilmente copiare tutti i dati da un contenitore di archiviazione all’altro come mostrato di seguito.
Prememoria: Dai un’occhiata all’articolo Come generare un token SAS di Azure per accedere agli account di archiviazione se non sai come generare un token SAS.

Altre operazioni utili di AzCopy
Oltre a copiare file e cartelle, ci sono altre operazioni di copia che puoi eseguire con AzCopy. Alcune di queste sono:
- Copiare file specifici (filtrati).
- Copiare una directory in un’altra directory nel contenitore di blob.
- Copia da Amazon AWS a Azure Storage.
Se vuoi conoscere tutto ciò che AzCopy può fare, controlla i contenuti della guida eseguendo azcopy -h
. Troverai molti altri comandi utili oltre al comando copy
su cui ti sei concentrato esclusivamente in questo articolo. Puoi vedere uno screenshot di questi comandi di seguito.

Per saperne di più, visita la pagina AzCopy Copy. Poi puoi provare questi comandi da solo utilizzando le tecniche apprese in questo articolo.
Riepilogo
In questo articolo hai imparato come utilizzare AzCopy per trasferire file tra il locale e lo storage di Azure. Hai anche imparato come eseguire queste operazioni utilizzando OAuth e il token di firma di accesso condiviso per l’autenticazione. Hai visto quali altri comandi di AzCopy sono disponibili e come trovarli.
I hope this article has helped you get started with AzCopy and sparked your interest in using it more as part of your administration or development tasks. Thank you!