Introduzione ad AzCopy
AzCopy è un'utilità della riga di comando che è possibile usare per copiare i BLOB o i file da e verso un account di archiviazione. Questo articolo consente di scaricare AzCopy, connettersi all'account di archiviazione e di trasferire i dati.
Nota
AzCopy V10 è la versione attualmente supportata di AzCopy.
Se è necessario usare una versione precedente di AzCopy, vedere la sezione Usare la versione precedente di AzCopy di questo articolo.
Questo video illustra come scaricare ed eseguire l'utilità AzCopy.
I passaggi del video sono descritti anche nelle sezioni seguenti.
Casi d'uso per AzCopy
AzCopy può essere usato per copiare i dati in/da/tra account di archiviazione di Azure. I casi d'uso comuni in cui può verificarsi questa situazione includono:
- Copia di dati da un'origine locale in un account di archiviazione di Azure
- Copia di dati da un account di archiviazione di Azure a un'origine locale
- Copia di dati da un account di archiviazione a un altro account di archiviazione
Ognuno di questi casi d'uso ha opzioni univoche. Ad esempio, AzCopy include comandi nativi per la copia e/o la sincronizzazione dei dati. Pertanto, AzCopy è uno strumento flessibile che può essere usato per le attività di copia una tantum e scenari di sincronizzazione continua. AzCopy consente anche di specificare servizi di archiviazione specifici, ad esempio Archiviazione BLOB di Azure o File di Azure. Ciò consente di copiare dati da BLOB in file, da file in BLOB, da file in file e così via.
Per altre informazioni su questi scenari, vedere:
- Caricare file in Archiviazione BLOB di Azure usando AzCopy
- Scaricare BLOB da Archiviazione BLOB di Azure usando AzCopy
- Copiare BLOB tra account di Archiviazione di Azure usando AzCopy
- Eseguire la sincronizzazione con l'archivio BLOB di Azure mediante AzCopy
Nota
AzCopy non supporta scenari in cui l'origine o la destinazione viene modificata attivamente durante il trasferimento.
Installare AzCopy in Linux usando una gestione pacchetti
È possibile installare AzCopy usando un pacchetto Linux ospitato nel Repository software Linux per prodotti Microsoft.
Scaricare il pacchetto di configurazione del repository.
Importante
Assicurarsi di sostituire la distribuzione e la versione con le stringhe appropriate.
curl -sSL -O https://packages.microsoft.com/config/<distribution>/<version>/packages-microsoft-prod.rpm
Installare il pacchetto di configurazione del repository.
sudo rpm -i packages-microsoft-prod.rpm
Eliminare il pacchetto di configurazione del repository dopo averlo installato.
rm packages-microsoft-prod.rpm
Aggiornare i file di indice del pacchetto.
sudo dnf update
Installare AzCopy.
sudo dnf install azcopy
Scaricare il file binario portatile AzCopy
In alternativa all'installazione di un pacchetto, è possibile scaricare il file eseguibile AzCopy V10 in qualsiasi directory del computer.
- Windows 64 bit (zip)
- Windows 32 bit (zip)
- Linux x86-64 (tar)
- Linux ARM64 (tar)
- macOS (zip)
- macOS ARM64 Preview (zip)
Questi file vengono compressi come file ZIP (Windows e Mac) o come file tar (Linux). Per scaricare e decomprimere il file tar in Linux, vedere la documentazione per la distribuzione linux.
Per informazioni dettagliate sulle versioni di AzCopy, vedere la pagina relativa alla versione di AzCopy.
Nota
Se si vogliono copiare dati da e verso il servizio di archiviazione delle tabelle di Azure, installare AzCopy versione 7.3.
Eseguire Azcopy
Per praticità, è consigliabile aggiungere il percorso della directory del file eseguibile di AzCopy al percorso di sistema per facilitarne l'uso. In questo modo è possibile digitare azcopy
da qualsiasi directory nel sistema.
Se si sceglie di non aggiungere la directory AzCopy al percorso, sarà necessario modificare le directory nel percorso del file eseguibile di AzCopy e digitare azcopy
oppure .\azcopy
nei prompt dei comandi di Windows PowerShell.
In quanto proprietario dell'account di Archiviazione di Azure, non si ricevono automaticamente le autorizzazioni per l'accesso ai dati. Prima di poter eseguire qualsiasi operazione significativa con AzCopy, è necessario decidere come fornire le credenziali di autorizzazione al servizio di archiviazione.
Autorizzare AzCopy
È possibile fornire le credenziali di autorizzazione usando Microsoft Entra ID o un token di firma di accesso condiviso (SAS).
Opzione 1: Usare Microsoft Entra ID
Usando Microsoft Entra ID, è possibile specificare le credenziali una sola volta invece di dover aggiungere un token di firma di accesso condiviso a ogni comando.
Opzione 2: Usare un token di firma di accesso condiviso
È possibile aggiungere un token di firma di accesso condiviso a ogni URL di origine o di destinazione usato nei comandi di AzCopy.
Questo comando di esempio copia in modo ricorsivo i dati da una directory locale a un contenitore BLOB. Alla fine dell'URL del contenitore viene aggiunto un token di firma di accesso condiviso fittizio.
azcopy copy "C:\local\path" "https://account.blob.core.windows.net/mycontainer1/?sv=2018-03-28&ss=bjqt&srt=sco&sp=rwddgcup&se=2019-05-01T05:01:17Z&st=2019-04-30T21:01:17Z&spr=https&sig=MGCXiyEzbtttkr3ewJIh2AR8KrghSy1DGM9ovN734bQF4%3D" --recursive=true
Per altre informazioni sui token di firma di accesso condiviso e su come ottenerne uno, vedere Informazioni sulle firme di accesso condiviso (SAS).
Nota
L'impostazione Trasferimento sicuro richiesto di un account di archiviazione determina se la connessione a un account di archiviazione è protetta con Transport Layer Security (TLS). Questa opzione è attivata per impostazione predefinita.
Trasferire i dati
Dopo aver autorizzato l'identità o ottenuto un token di firma di accesso condiviso, è possibile iniziare a trasferire i dati.
Per trovare comandi di esempio, vedere uno di questi articoli.
Service | Articolo |
---|---|
Archiviazione BLOB di Azure | Caricare i file in Archiviazione BLOB di Azure |
Archiviazione BLOB di Azure | Scaricare BLOB da Archiviazione BLOB di Azure |
Archiviazione BLOB di Azure | Copiare i BLOB tra gli account di archiviazione di Azure |
Archiviazione BLOB di Azure | Eseguire la sincronizzazione con Archiviazione BLOB di Azure |
File di Azure | Trasferire dati con AzCopy e l'archivio file |
Amazon S3 | Copiare dati da Amazon S3 ad Archiviazione di Azure |
Google Cloud Storage | Copiare dati da Google Cloud Storage in Archiviazione di Azure (anteprima) |
Archiviazione di Azure Stack | Trasferire dati con AzCopy e Archiviazione di Azure Stack |
Ottenere la guida per i comandi
Per vedere un elenco di comandi, digitare azcopy -h
, quindi premere il tasto INVIO.
per informazioni su un comando specifico, è sufficiente includere il nome del comando (ad esempio: azcopy list -h
).
Elenco dei comandi
Nella tabella seguente sono elencati tutti i comandi azCopy v10. Ogni comando è collegato a un articolo di riferimento.
Comando | Descrizione |
---|---|
azcopy bench | Esegue un benchmark delle prestazioni caricando o scaricando i dati di test da o verso una posizione specificata. |
azcopy copy | Copia i dati di origine in un percorso di destinazione |
azcopy doc | Genera la documentazione per lo strumento in formato Markdown. |
azcopy env | Mostra le variabili di ambiente che possono configurare il comportamento di AzCopy. |
azcopy jobs | Sottocomandi correlati alla gestione dei processi. |
azcopy jobs clean | Rimuovere tutti i file di log e di piano per tutti i processi. |
azcopy jobs list | Visualizza informazioni su tutti i processi. |
azcopy jobs remove | Rimuovere tutti i file associati all'ID processo specificato. |
azcopy jobs resume | Riprende il processo esistente con l'ID processo specificato. |
azcopy jobs show | Mostra informazioni dettagliate per l'ID processo specificato. |
azcopy list | Elenca le entità in una risorsa specificata. |
azcopy login | Accedere all'ID Microsoft Entra per accedere alle risorse di Archiviazione di Azure. |
stato di accesso azcopy | Elenca le entità in una risorsa specificata. |
azcopy logout | Disconnette l'utente e termina l'accesso alle risorse di Archiviazione di Azure. |
azcopy make | Crea un contenitore o una condivisione file. |
azcopy remove | Eliminare BLOB o file da un account di Archiviazione di Azure. |
azcopy sync | Replica il percorso di origine nella posizione di destinazione. |
azcopy set-properties | Modificare il livello di accesso di uno o più BLOB e sostituire (sovrascrivere) i metadati e i tag di indice di uno o più BLOB. |
Nota
AzCopy non dispone di un comando per rinominare i file.
Usare in uno script
Ottenere un link di download statico
Nel corso del tempo, il link al download di AzCopy punterà alle nuove versioni di AzCopy. Se lo script scarica AzCopy, lo script potrebbe smettere di funzionare se una versione più recente di AzCopy modifica le funzionalità da cui dipende lo script.
Per evitare questi problemi, ottenere un collegamento statico (non modificabile) alla versione corrente di AzCopy. In questo modo, lo script scarica la stessa versione esatta di AzCopy ogni volta che viene eseguita.
Per ottenere il link, eseguire questo comando:
Sistema operativo | Comando |
---|---|
Linux | curl -s -D- https://aka.ms/downloadazcopy-v10-linux \| grep ^Location |
Windows PowerShell | (Invoke-WebRequest -Uri https://aka.ms/downloadazcopy-v10-windows -MaximumRedirection 0 -ErrorAction SilentlyContinue).headers.location |
PowerShell 6.1+ | (Invoke-WebRequest -Uri https://aka.ms/downloadazcopy-v10-windows -MaximumRedirection 0 -ErrorAction SilentlyContinue -SkipHttpErrorCheck).headers.location |
Nota
Per Linux, --strip-components=1
nel comando tar
rimuove la cartella di primo livello che contiene il nome della versione ed estrae invece il file binario direttamente nella cartella corrente. Ciò consente di aggiornare lo script con una nuova versione di azcopy
aggiornando solo l'URL wget
.
L'URL viene visualizzato nell'output di questo comando. Lo script può quindi scaricare AzCopy usando tale URL.
Linux
wget -O azcopy_v10.tar.gz https://aka.ms/downloadazcopy-v10-linux && tar -xf azcopy_v10.tar.gz --strip-components=1
Windows PowerShell
Invoke-WebRequest -Uri 'https://azcopyvnext.azureedge.net/release20220315/azcopy_windows_amd64_10.14.1.zip' -OutFile 'azcopyv10.zip'
Expand-archive -Path '.\azcopyv10.zip' -Destinationpath '.\'
$AzCopy = (Get-ChildItem -path '.\' -Recurse -File -Filter 'azcopy.exe').FullName
# Invoke AzCopy
& $AzCopy
PowerShell 6.1+
Invoke-WebRequest -Uri 'https://azcopyvnext.azureedge.net/release20220315/azcopy_windows_amd64_10.14.1.zip' -OutFile 'azcopyv10.zip'
$AzCopy = (Expand-archive -Path '.\azcopyv10.zip' -Destinationpath '.\' -PassThru | where-object {$_.Name -eq 'azcopy.exe'}).FullName
# Invoke AzCopy
& $AzCopy
Caratteri speciali di escape nei token di firma di accesso condiviso
Nei file batch con estensione .cmd
è necessario eseguire l'escape dei caratteri %
visualizzati nei token di firma di accesso condiviso. A tale scopo, aggiungere un carattere aggiuntivo %
accanto ai caratteri esistenti %
nella stringa del token di firma di accesso condiviso. La sequenza di caratteri risultante viene visualizzata come %%
. Assicurarsi di aggiungere un ^
aggiuntivo prima di ogni carattere &
per creare la sequenza di caratteri ^&
.
Eseguire script con Jenkins
Se si prevede di usare Jenkins per eseguire gli script, assicurarsi di inserire il comando seguente all'inizio dello script.
/usr/bin/keyctl new_session
Usar in Azure Storage Explorer
Storage Explorer usa AzCopy per eseguire tutte le operazioni di trasferimento dei dati. È possibile usare Storage Explorer se si vogliono applicare i vantaggi delle prestazioni di AzCopy, ma si preferisce usare un'interfaccia utente grafica anziché la riga di comando per interagire con i file.
Storage Explorer usa la chiave dell'account per eseguire operazioni, quindi dopo l'accesso a Storage Explorer non è necessario fornire credenziali di autorizzazione aggiuntive.
Configurare, ottimizzare e correggere
Vedere una delle risorse seguenti:
Usare una versione precedente (deprecata)
Se è necessario usare la versione precedente di AzCopy, vedere uno dei link seguenti:
Nota
Queste versioni di AzCopy sono deprecate. Microsoft consiglia di usare AzCopy v10.
Passaggi successivi
Eventuali domande, problemi o commenti di carattere generale devono essere inoltrati alla pagina GitHub.