Die Automatisierung ist heutzutage überall in der IT vorhanden. Von der Bereitstellung virtueller Maschinen bis hin zur Bereitstellung von Websites ist die Automatisierung besonders wichtig, insbesondere wenn Sie mit mehreren Elementen umgehen müssen. Selbst das Dateimanagement zwischen Azure-Speicher und Ihrem lokalen Rechner kann mithilfe eines Dienstprogramms namens AzCopy automatisiert werden.
AzCopy ist ein eigenständiges Dienstprogramm, das die Verwaltung von Azure-Speicher ermöglicht. Mit AzCopy können mehrere Operationen durchgeführt werden. In diesem Artikel werden wir uns auf folgende Punkte konzentrieren:
- Erstellen von Speichercontainern
- Kopieren lokaler Dateien in Container
- Kopieren von Dateien zwischen Containern
Lassen Sie uns beginnen!
Wenn Sie besser durch Videos lernen, können Sie auch ein TechSnips-Video ansehen, das eng mit dem übereinstimmt, was Sie in diesem Artikel lernen werden.
Voraussetzungen
In diesem Artikel wird eine Schritt-für-Schritt-Anleitung gezeigt, die verschiedene Aufgaben demonstriert. Wenn Sie dem folgen möchten, stellen Sie sicher, dass Sie die unten aufgeführten Anforderungen erfüllt haben, bevor Sie beginnen.
- Ein Azure-Abonnement. Wenn Sie dies noch nicht haben, können Sie eine Testabonnement anfordern.
- Ein Azure-Speicherkonto. Bitte lesen Sie Erstellen eines Speicherkontos, um mehr zu erfahren.
- AzCopy wurde heruntergeladen und authentifiziert (überprüfen Sie den Artikel So laden Sie das AZCopy-Tool herunter und installieren es, um zu erfahren, wie Sie dies einrichten)
Neue Speichercontainer erstellen
Zunächst verwenden wir AzCopy, um neue Speichercontainer in einem vorhandenen Speicherkonto zu erstellen. In dem Beispiel, das Sie verwenden werden, erstellen Sie zwei neue Container mit den Namen container1 und container2.
Hinweis: Bevor Sie einen neuen Container erstellen, müssen Sie die Endpunkt-URL des Containers kennen. Die Endpunkt-URL folgt dem Format: https://[storageaccountname].blob.core.windows.net/[container_name].
Zuerst definieren Sie die Endpunkt-URL. In diesem Beispiel werden die Container in einem Speicherkonto mit dem Namen storageaccount1207 erstellt, wobei zwei Endpunkt-URLs erstellt werden:
- https://storageaccount1207.blob.core.windows.net/container1
- https://storageaccount1207.blob.core.windows.net/container2
Jetzt, da Sie die Endpunkt-URLs kennen, verwenden Sie den Befehl azcopy make
und übergeben Sie jede Endpunkt-URL als Parameter, wie unten gezeigt.

Dateien zu/von Azure-Containern kopieren
Wenn Sie einen Speichercontainer erstellt haben, fragen Sie sich wahrscheinlich: „Wie lade ich auf Azure Blob Storage hoch?“. Mit AzCopy können Sie dies mit dem Befehl azcopy copy
durchführen. Sie können AzCopy verwenden, um PSTs, VHDs und mehr zu kopieren.
Verwendung der OAuth-Authentifizierung
Beim Verwenden von AzCopy zum Kopieren von Dateien in Blobs haben Sie einige Optionen für die Authentifizierung. Da davon ausgegangen wird, dass Sie sich bereits bei Azure Storage angemeldet haben (da dies in den Voraussetzungen enthalten war), können Sie einfach azcopy copy
ausführen und einen lokalen Dateipfad gefolgt von einer Container-Endpunkt-URL wie unten gezeigt angeben.
Indem Sie keinen anderen Parameter angeben, verwenden Sie die OAuth-Authentifizierung.

Wie wissen Sie, ob die Datei in den Azure Blob-Container kopiert wurde? Sie können den Befehl azcopy list [Container-URL]
verwenden. Im untenstehenden Beispiel sehen Sie, dass die Datei file1.txt
existiert.

Um eine Datei aus dem Azure Blob in das lokale Verzeichnis herunterzuladen, müssen Sie nur die Positionen der Quell- und Zielargumente vertauschen. Sehen Sie sich das Beispiel unten an.

Verwendung eines Shared Access Signature (SAS)-Tokens
Um ein SAS-Token zu verwenden, müssen Sie zuerst eins generieren. Wenn Sie nicht wissen, wie Sie ein SAS-Token generieren können, lesen Sie den Artikel Wie man ein Azure SAS-Token generiert, um auf Speicherkonten zuzugreifen.
Sobald Sie ein SAS-Token zur Verfügung haben, können Sie das Token an die URL des Zielcontainers als HTTP-Parameter anhängen, wie unten gezeigt.
Wenn Sie PowerShell verwenden und das Token in einer Variablen gespeichert haben (z. B. $token
), können Sie diese Variable anstelle des vollständigen Token-Strings wie im folgenden Befehl übergeben.

Unter Verwendung desselben Tokens (unter der Annahme, dass es sich immer noch innerhalb seines Gültigkeitszeitraums befindet), können Sie auch Dateien aus dem Azure-Speicher auf dem lokalen Speicherplatz herunterladen. Das folgende Beispiel kopiert die Datei file1.txt
aus dem Azure-Speicher mit einem SAS-Token.
Im folgenden Code sehen Sie, dass dieses Mal anstelle des Anhängens des Tokens nach dem Behälternamen zuerst der Name der Datei hinzugefügt wird. Dies weist AzCopy an, eine bestimmte Datei mit der SAS-Authentifizierung zu kopieren.

Kopieren eines Verzeichnisses von/zu Azure-Speicher
Wenn Sie viele Dateien zum Übertragen oder Herunterladen von Azure haben, können Sie auch ganze Verzeichnisse auf einmal kopieren mit azcopy copy
. Der Befehl dafür unterscheidet sich nicht so sehr von dem, den Sie zum Kopieren einzelner Dateien verwenden.
Unten sehen Sie einen Befehl, der das Verzeichnis C:\\MyDir
rekursiv in den Blob-Behälter container1 kopiert. Der Parameter --recursive
ist hier der Schlüssel. Die Flagge --recursive
am Ende des Befehls gibt an, dass alle Inhalte aus dem übergeordneten Verzeichnis und den möglicherweise vorhandenen Unterverzeichnissen kopiert werden.
Sie können unten sehen, dass zehn Dateien im Ordner C:\MyDir erfolgreich basierend auf der Zusammenfassung des Jobs kopiert wurden.

Kopieren von Dateien zwischen Azure-Speicherbehältern
Im Verlauf dieses Artikels haben Sie den Befehl azcopy copy
recht häufig verwendet. Es besteht kein Grund, jetzt aufzuhören! Sie können nicht nur Verzeichnisse und Dateien von/von On-Prem kopieren, sondern auch Blobs zwischen Speichercontainern kopieren.
Anstatt einen lokalen Dateipfad zu verwenden, ändern Sie die Parameter, um eine Blob-Container-URL als Quelle und eine andere Blob-Container-URL als Ziel zu verwenden.
Sie haben bereits zwei Speichercontainer namens container1 und container2 erstellt. In diesem Abschnitt kopieren wir Dateien, Verzeichnisse und sogar den gesamten Blob-Container von container1 nach container2.
Um Dateien von einem Container in einen anderen zu kopieren, generieren Sie zunächst ein neues SAS-Token. Da die beiden Container demselben Speicherkonto gehören, kann dasselbe Token sowohl für die Quelle als auch für das Ziel verwendet werden.
Vorausgesetzt, Sie haben den Token-String in einer Variable namens $token
gespeichert (wenn Sie azcopy mit PowerShell ausführen), können Sie ganz einfach alle Daten von einem Speichercontainer in den anderen kopieren, wie unten gezeigt.
Erinnerung: Schauen Sie sich den Artikel „So generieren Sie ein Azure SAS-Token zum Zugriff auf Speicherkonten“ an, wenn Sie nicht wissen, wie Sie ein SAS-Token generieren.

Weitere nützliche AzCopy-Operationen
Abgesehen vom Kopieren von Dateien und Ordnern können Sie mit AzCopy auch andere Kopieroperationen durchführen. Einige davon sind:
- Kopieren bestimmter Dateien (gefiltert).
- Kopieren eines Verzeichnisses in ein anderes Verzeichnis im Blob-Container.
- Kopieren von Amazon AWS zu Azure Storage.
Wenn Sie alles über das tun möchten, was AzCopy kann, schauen Sie sich den Hilfsinhalt an, indem Sie azcopy -h
ausführen. Neben dem copy
-Befehl, auf den Sie sich in diesem Artikel ausschließlich konzentriert haben, finden Sie viele andere nützliche Befehle. Eine Übersicht über diese Befehle finden Sie unten.

Um mehr zu erfahren, besuchen Sie die AzCopy-Kopieren-Seite. Dann können Sie diese selbst ausprobieren, indem Sie die Techniken anwenden, die Sie in diesem Artikel gelernt haben.
Zusammenfassung
In diesem Artikel haben Sie gelernt, wie Sie AzCopy verwenden, um Dateien zwischen dem lokalen Speicher und dem Azure-Speicher zu übertragen. Sie haben auch gelernt, wie Sie diese Aufgaben unter Verwendung von OAuth und Shared Access Signature Token für die Authentifizierung durchführen können. Sie haben gesehen, welche anderen AzCopy-Befehle verfügbar sind und wie Sie sie finden können.
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!