Aan de slag met AzCopy
AzCopy is een opdrachtregelprogramma dat u kunt gebruiken om blobs of bestanden te kopiëren vanuit of naar een opslagaccount. In dit artikel leest u hoe u AzCopy downloadt, verbinding maakt met uw opslagaccount en vervolgens gegevens overdraagt.
Notitie
AzCopy V10 is de momenteel ondersteunde versie van AzCopy.
Als u een eerdere versie van AzCopy wilt gebruiken, raadpleegt u de sectie De vorige versie van AzCopy van dit artikel gebruiken.
In deze video ziet u hoe u het AzCopy-hulpprogramma downloadt en uitvoert.
De stappen in de video worden ook beschreven in de volgende secties.
Gebruiksvoorbeelden voor AzCopy
AzCopy kan worden gebruikt om uw gegevens te kopiëren naar, van of tussen Azure-opslagaccounts. Veelvoorkomende gebruiksvoorbeelden zijn:
- Gegevens kopiëren van een on-premises bron naar een Azure-opslagaccount
- Gegevens kopiëren van een Azure-opslagaccount naar een on-premises bron
- Gegevens kopiëren van het ene opslagaccount naar een ander opslagaccount
Elk van deze use cases heeft unieke opties. AzCopy heeft bijvoorbeeld systeemeigen opdrachten voor het kopiëren en/of synchroniseren van gegevens. Hierdoor is AzCopy een flexibel hulpprogramma dat kan worden gebruikt voor eenmalige kopieeractiviteiten en doorlopende synchronisatiescenario's. Met AzCopy kunt u ook specifieke opslagservices, zoals Azure Blob Storage of Azure Files, richten. Hiermee kunt u gegevens kopiëren van blob naar bestand, bestand naar blob, bestand naar bestand, bestand naar bestand, enzovoort.
Zie voor meer informatie over deze scenario's:
- Bestanden uploaden naar Azure Blob Storage met behulp van AzCopy
- Blobs downloaden uit Azure Blob Storage met behulp van AzCopy
- Blobs kopiëren tussen Azure-opslagaccounts met behulp van AzCopy
- Synchroniseren met Azure Blob Storage met behulp van AzCopy
Notitie
AzCopy biedt geen ondersteuning voor scenario's waarbij de bron of bestemming actief wordt gewijzigd tijdens de overdracht.
AzCopy installeren in Linux met behulp van pakketbeheer
U kunt AzCopy installeren met behulp van een Linux-pakket dat wordt gehost in de Linux-softwareopslagplaats voor Microsoft-producten.
Download het configuratiepakket voor de opslagplaats.
Belangrijk
Zorg ervoor dat u de distributie en versie vervangt door de juiste tekenreeksen.
curl -sSL -O https://packages.microsoft.com/config/<distribution>/<version>/packages-microsoft-prod.rpm
Installeer het configuratiepakket voor de opslagplaats.
sudo rpm -i packages-microsoft-prod.rpm
Verwijder het configuratiepakket voor de opslagplaats nadat u het hebt geïnstalleerd.
rm packages-microsoft-prod.rpm
Werk de pakketindexbestanden bij.
sudo dnf update
Installeer AzCopy.
sudo dnf install azcopy
Download het binaire binaire bestand AzCopy
Als alternatief voor het installeren van een pakket kunt u het uitvoerbare bestand AzCopy V10 downloaden naar elke map op uw computer.
- Windows 64-bits (zip)
- Windows 32-bits (zip)
- Linux x86-64 (tar)
- Linux ARM64 (tar)
- macOS (zip)
- macOS ARM64 Preview (zip)
Deze bestanden worden gecomprimeerd als een zip-bestand (Windows en Mac) of een tar-bestand (Linux). Als u het tar-bestand op Linux wilt downloaden en decomprimeren, raadpleegt u de documentatie voor uw Linux-distributie.
Zie de releasepagina van AzCopy voor gedetailleerde informatie over AzCopy-releases.
Notitie
Als u gegevens wilt kopiëren naar en van uw Azure Table Storage-service , installeert u AzCopy versie 7.3.
AzCopy uitvoeren
Voor het gemak kunt u de maplocatie van het uitvoerbare AzCopy-bestand toevoegen aan het systeempad. Op die manier kunt azcopy
u typen vanuit elke map op uw systeem.
Als u ervoor kiest om de AzCopy-map niet toe te voegen aan uw pad, moet u mappen wijzigen in de locatie van het uitvoerbare AzCopy-bestand en typen azcopy
of .\azcopy
in Windows PowerShell-opdrachtprompts.
Als eigenaar van uw Azure Storage-account worden niet automatisch machtigingen toegewezen voor toegang tot gegevens. Voordat u iets zinvols met AzCopy kunt doen, moet u beslissen hoe u autorisatiereferenties voor de opslagservice opgeeft.
AzCopy autoriseren
U kunt autorisatiereferenties opgeven met behulp van Microsoft Entra ID of met behulp van een SAS-token (Shared Access Signature).
Optie 1: Microsoft Entra-id gebruiken
Met behulp van Microsoft Entra ID kunt u referenties één keer opgeven in plaats van een SAS-token toe te voegen aan elke opdracht.
Optie 2: Een SAS-token gebruiken
U kunt een SAS-token toevoegen aan elke bron- of doel-URL die wordt gebruikt in uw AzCopy-opdrachten.
Met deze voorbeeldopdracht worden recursief gegevens gekopieerd uit een lokale map naar een blobcontainer. Aan het einde van de container-URL wordt een fictief SAS-token toegevoegd.
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
Zie Shared Access Signatures (SAS) gebruiken voor meer informatie over SAS-tokens en hoe u er een kunt verkrijgen.
Notitie
De instelling Veilige overdracht die vereist is voor een opslagaccount bepaalt of de verbinding met een opslagaccount is beveiligd met TLS (Transport Layer Security). Deze instelling is standaard ingeschakeld.
Gegevens overdragen
Nadat u uw identiteit hebt geautoriseerd of een SAS-token hebt verkregen, kunt u beginnen met het overdragen van gegevens.
Zie een van deze artikelen om voorbeeldopdrachten te vinden.
Service | Artikel |
---|---|
Azure Blob-opslag | Bestanden uploaden naar Azure Blob Storage |
Azure Blob-opslag | Blobs downloaden van Azure Blob Storage |
Azure Blob-opslag | Blobs kopiëren tussen Azure-opslagaccounts |
Azure Blob-opslag | Synchroniseren met Azure Blob Storage |
Azure Files | Gegevens overdragen met AzCopy en bestandsopslag |
Amazon S3 | Gegevens kopiëren van Amazon S3 naar Azure Storage |
Google Cloud Storage | Gegevens kopiëren van Google Cloud Storage naar Azure Storage (preview) |
Azure Stack-opslag | Gegevens overdragen met AzCopy en Azure Stack-opslag |
Help voor opdrachten ophalen
Als u een lijst met opdrachten wilt zien, typt azcopy -h
u en drukt u op Enter.
Als u meer wilt weten over een specifieke opdracht, neemt u alleen de naam van de opdracht op (bijvoorbeeld: azcopy list -h
).
Lijst met opdrachten
De volgende tabel bevat alle AzCopy v10-opdrachten. Elke opdracht wordt gekoppeld aan een naslagartikel.
Opdracht | Beschrijving |
---|---|
azcopy bench | Voert een prestatiebenchmark uit door testgegevens naar of vanaf een opgegeven locatie te uploaden of te downloaden. |
azcopy copy | Brongegevens naar een doellocatie kopiëren |
azcopy doc | Hiermee genereert u documentatie voor het hulpprogramma in Markdown-indeling. |
azcopy env | Toont de omgevingsvariabelen waarmee het gedrag van AzCopy kan worden geconfigureerd. |
azcopy-taken | Subopdrachten met betrekking tot het beheren van taken. |
azcopy jobs clean | Verwijder alle logboek- en planbestanden voor alle taken. |
azcopy jobs list | Geeft informatie weer over alle taken. |
azcopy jobs remove | Verwijder alle bestanden die zijn gekoppeld aan de opgegeven taak-id. |
azcopy jobs resume | Hervat de bestaande taak met de opgegeven taak-id. |
azcopy jobs show | Geeft gedetailleerde informatie weer voor de opgegeven taak-id. |
azcopy list | Geeft een lijst weer van de entiteiten in een bepaalde resource. |
azcopy login | Meldt u aan bij Microsoft Entra ID voor toegang tot Azure Storage-resources. |
azcopy login status | Geeft een lijst weer van de entiteiten in een bepaalde resource. |
azcopy logout | Hiermee wordt de gebruiker uitgelogd en wordt de toegang tot Azure Storage-resources beëindigd. |
azcopy make | Hiermee maakt u een container of bestandsshare. |
azcopy remove | Verwijder blobs of bestanden uit een Azure-opslagaccount. |
azcopy sync | Hiermee wordt de bronlocatie gerepliceerd naar de doellocatie. |
azcopy set-properties | Wijzig de toegangslaag van een of meer blobs en vervang (overschrijf) de metagegevens en indextags van een of meer blobs. |
Notitie
AzCopy heeft geen opdracht om de naam van bestanden te wijzigen.
Gebruiken in een script
Een statische downloadkoppeling verkrijgen
Na verloop van tijd verwijst de Downloadkoppeling AzCopy naar nieuwe versies van AzCopy. Als uw script AzCopy downloadt, werkt het script mogelijk niet meer als een nieuwere versie van AzCopy functies wijzigt waarvan uw script afhankelijk is.
Als u deze problemen wilt voorkomen, dient u een statische (onveranderlijke) koppeling naar de huidige versie van AzCopy te verkrijgen. Op die manier downloadt uw script exact dezelfde versie van AzCopy telkens wanneer het wordt uitgevoerd.
Voer deze opdracht uit om de koppeling te verkrijgen:
Besturingssysteem | Opdracht |
---|---|
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 |
Notitie
Voor Linux --strip-components=1
verwijdert u op de tar
opdracht de map op het hoogste niveau die de versienaam bevat en wordt het binaire bestand in plaats daarvan rechtstreeks in de huidige map geëxtraheerd. Hierdoor kan het script worden bijgewerkt met een nieuwe versie van azcopy
door alleen de wget
URL bij te werken.
De URL wordt weergegeven in de uitvoer van deze opdracht. Uw script kan vervolgens AzCopy downloaden met behulp van die 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
Speciale tekens in SAS-tokens escapen
In batchbestanden met de .cmd
extensie moet u ontsnappen aan de %
tekens die worden weergegeven in SAS-tokens. U kunt dit doen door een extra %
teken toe te voegen naast bestaande %
tekens in de SAS-tokentekenreeks. De resulterende tekenreeks wordt weergegeven als %%
. Zorg ervoor dat u voor elk &
teken een extra ^
teken toevoegt om de tekenreeks ^&
te maken.
Scripts uitvoeren met Jenkins
Als u van plan bent om Jenkins te gebruiken om scripts uit te voeren, moet u de volgende opdracht aan het begin van het script plaatsen.
/usr/bin/keyctl new_session
Gebruiken in Azure Storage Explorer
Storage Explorer gebruikt AzCopy om alle gegevensoverdrachtbewerkingen uit te voeren. U kunt Storage Explorer gebruiken als u de prestatievoordelen van AzCopy wilt toepassen, maar u liever een grafische gebruikersinterface gebruikt in plaats van de opdrachtregel om met uw bestanden te communiceren.
Storage Explorer gebruikt uw accountsleutel om bewerkingen uit te voeren, dus nadat u zich bij Storage Explorer hebt aangemeld, hoeft u geen aanvullende autorisatiereferenties op te geven.
Configureren, optimaliseren en oplossen
Bekijk een van de volgende bronnen:
Een vorige versie gebruiken (afgeschaft)
Als u de vorige versie van AzCopy wilt gebruiken, raadpleegt u een van de volgende koppelingen:
Notitie
Deze versies van AzCopy zijn afgeschaft. Microsoft raadt het gebruik van AzCopy v10 aan.
Volgende stappen
Als u vragen, problemen of algemene feedback hebt, dient u deze in op de GitHub-pagina .