Wprowadzenie do narzędzia AzCopy
AzCopy to narzędzie wiersza polecenia, przy użyciu którego można kopiować obiekty blob lub pliki do lub z konta magazynu. Ten artykuł ułatwia pobranie narzędzia AzCopy, nawiązanie połączenia z kontem magazynu, a następnie przeniesienie danych.
Uwaga
Narzędzie AzCopy V10 jest obecnie obsługiwaną wersją narzędzia AzCopy. Narzędzie nie jest obsługiwane w wersjach systemu Windows, Linux lub macOS, które nie są już oficjalnie obsługiwane.
Jeśli musisz użyć poprzedniej wersji narzędzia AzCopy, zobacz sekcję Używanie poprzedniej wersji narzędzia AzCopy w tym artykule.
W tym filmie wideo pokazano, jak pobrać i uruchomić narzędzie AzCopy.
Kroki opisane w filmie wideo zostały również opisane w poniższych sekcjach.
Przypadki użycia narzędzia AzCopy
Narzędzie AzCopy może służyć do kopiowania danych do kont usługi Azure Storage lub między nimi. Typowe przypadki użycia to:
- Kopiowanie danych ze źródła lokalnego na konto usługi Azure Storage
- Kopiowanie danych z konta usługi Azure Storage do źródła lokalnego
- Kopiowanie danych z jednego konta magazynu na inne konto magazynu
Każdy z tych przypadków użycia ma unikatowe opcje. Na przykład narzędzie AzCopy ma natywne polecenia do kopiowania i/lub synchronizowania danych. Dzięki temu narzędzie AzCopy jest elastycznym narzędziem, które może służyć do jednorazowych działań kopiowania i bieżących scenariuszy synchronizacji. Narzędzie AzCopy umożliwia również kierowanie określonych usług magazynu, takich jak Azure Blob Storage lub Azure Files. Dzięki temu można kopiować dane z obiektu blob do pliku, plików do obiektów blob, plików do plików itp.
Aby dowiedzieć się więcej o tych scenariuszach, zobacz:
- Przekazywanie plików do usługi Azure Blob Storage przy użyciu narzędzia AzCopy
- Pobieranie obiektów blob z usługi Azure Blob Storage przy użyciu narzędzia AzCopy
- Kopiowanie obiektów blob między kontami usługi Azure Storage przy użyciu narzędzia AzCopy
- Synchronizowanie z usługą Azure Blob Storage przy użyciu narzędzia AzCopy
Uwaga
Narzędzie AzCopy nie obsługuje scenariuszy, w których źródło lub miejsce docelowe jest aktywnie zmieniane podczas transferu.
Instalowanie narzędzia AzCopy w systemie Linux przy użyciu menedżera pakietów
Narzędzie AzCopy można zainstalować przy użyciu pakietu systemu Linux hostowanego w repozytorium oprogramowania systemu Linux dla produktów firmy Microsoft.
Pobierz pakiet konfiguracji repozytorium.
Ważne
Pamiętaj, aby zastąpić dystrybucję i wersję odpowiednimi ciągami.
curl -sSL -O https://packages.microsoft.com/config/<distribution>/<version>/packages-microsoft-prod.rpm
Zainstaluj pakiet konfiguracji repozytorium.
sudo rpm -i packages-microsoft-prod.rpm
Po zainstalowaniu pakietu konfiguracji repozytorium usuń go.
rm packages-microsoft-prod.rpm
Zaktualizuj pliki indeksu pakietu.
sudo dnf update
Zainstaluj narzędzie AzCopy.
sudo dnf install azcopy
Pobieranie przenośnego pliku binarnego narzędzia AzCopy
Alternatywą dla instalowania pakietu jest pobranie pliku wykonywalnego narzędzia AzCopy V10 do dowolnego katalogu na komputerze.
- Windows 64-bitowy (zip)
- Windows 32-bitowy (zip)
- Linux x86-64 (tar)
- Linux ARM64 (tar)
- macOS (zip)
- macOS ARM64 Preview (zip)
Te pliki są kompresowane jako plik zip (Windows i Mac) lub plik tar (Linux). Aby pobrać i zdekompresować plik tar w systemie Linux, zapoznaj się z dokumentacją dystrybucji systemu Linux.
Aby uzyskać szczegółowe informacje na temat wydań narzędzia AzCopy, zobacz stronę wydania narzędzia AzCopy.
Uwaga
Jeśli chcesz skopiować dane do i z usługi Azure Table Storage , zainstaluj narzędzie AzCopy w wersji 7.3.
Uruchamianie narzędzia AzCopy
Dla wygody rozważ dodanie lokalizacji katalogu pliku wykonywalnego narzędzia AzCopy do ścieżki systemowej w celu ułatwienia użytkowania. W ten sposób można wpisać azcopy
dowolny katalog w systemie.
Jeśli nie chcesz dodawać katalogu AzCopy do ścieżki, musisz zmienić katalogi na lokalizację pliku wykonywalnego narzędzia AzCopy i wpisać azcopy
lub .\azcopy
w wierszach polecenia programu Windows PowerShell.
Jako właściciel konta usługi Azure Storage nie masz automatycznie przypisanych uprawnień dostępu do danych. Zanim będzie można wykonać dowolne istotne czynności za pomocą narzędzia AzCopy, musisz zdecydować, w jaki sposób podasz poświadczenia autoryzacji do usługi magazynu.
Autoryzowanie narzędzia AzCopy
Poświadczenia autoryzacji można podać przy użyciu identyfikatora Entra firmy Microsoft lub tokenu sygnatury dostępu współdzielonego (SAS).
Opcja 1. Używanie identyfikatora Entra firmy Microsoft
Za pomocą identyfikatora Entra firmy Microsoft można podać poświadczenia raz zamiast dołączać token SAS do każdego polecenia.
Opcja 2. Używanie tokenu SAS
Token SAS można dołączyć do każdego źródłowego lub docelowego adresu URL, który jest używany w poleceniach narzędzia AzCopy.
To przykładowe polecenie rekursywnie kopiuje dane z katalogu lokalnego do kontenera obiektów blob. Fikcyjny token SAS jest dołączany na końcu adresu URL kontenera.
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
Aby dowiedzieć się więcej na temat tokenów SAS i sposobu ich uzyskania, zobacz Korzystanie z sygnatur dostępu współdzielonego (SAS).
Uwaga
Ustawienie Wymagany bezpieczny transfer konta magazynu określa, czy połączenie z kontem magazynu jest zabezpieczone przy użyciu protokołu Transport Layer Security (TLS). To ustawienie jest domyślnie włączone.
Transfer danych
Po autoryzowaniu tożsamości lub uzyskaniu tokenu SAS możesz rozpocząć przesyłanie danych.
Aby znaleźć przykładowe polecenia, zobacz dowolny z tych artykułów.
Usługa | Artykuł |
---|---|
Azure Blob Storage | Przekazywanie plików do magazynu Azure Blob Storage |
Azure Blob Storage | Pobieranie obiektów blob z usługi Azure Blob Storage |
Azure Blob Storage | Kopiowanie obiektów blob między kontami magazynu platformy Azure |
Azure Blob Storage | Synchronizowanie z usługą Azure Blob Storage |
Azure Files | Transferowanie danych za pomocą narzędzia AzCopy i magazynu plików |
Amazon S3 | Kopiowanie danych z usługi Amazon S3 do usługi Azure Storage |
Google Cloud Storage | Kopiowanie danych z usługi Google Cloud Storage do usługi Azure Storage (wersja zapoznawcza) |
Magazyn usługi Azure Stack | Transferowanie danych za pomocą narzędzia AzCopy i magazynu usługi Azure Stack |
Uzyskiwanie pomocy dotyczącej poleceń
Aby wyświetlić listę poleceń, wpisz azcopy -h
, a następnie naciśnij ENTER.
Aby dowiedzieć się więcej o konkretnym poleceniu, po prostu uwzględnij nazwę polecenia (na przykład: azcopy list -h
).
Lista poleceń
W poniższej tabeli wymieniono wszystkie polecenia narzędzia AzCopy w wersji 10. Każde polecenie łączy się z artykułem referencyjnym.
Polecenie | opis |
---|---|
azcopy bench | Uruchamia test porównawczy wydajności, przekazując lub pobierając dane testowe do lub z określonej lokalizacji. |
azcopy copy | Kopiuje dane źródłowe do lokalizacji docelowej |
azcopy doc | Generuje dokumentację narzędzia w formacie Markdown. |
azcopy env | Przedstawia zmienne środowiskowe, które mogą skonfigurować zachowanie narzędzia AzCopy. |
azcopy jobs | Podpolecenia związane z zarządzaniem zadaniami. |
azcopy jobs clean | Usuń wszystkie pliki dziennika i planu dla wszystkich zadań. |
azcopy jobs list | Wyświetla informacje o wszystkich zadaniach. |
azcopy jobs remove | Usuń wszystkie pliki skojarzone z danym identyfikatorem zadania. |
azcopy jobs resume | Wznawia istniejące zadanie z danym identyfikatorem zadania. |
azcopy jobs show | Przedstawia szczegółowe informacje dotyczące danego identyfikatora zadania. |
azcopy list | Wyświetla listę jednostek w danym zasobie. |
azcopy login | Zaloguj się do identyfikatora entra firmy Microsoft, aby uzyskać dostęp do zasobów usługi Azure Storage. |
azcopy login status | Wyświetla listę jednostek w danym zasobie. |
azcopy logout | Rejestruje użytkownika i kończy dostęp do zasobów usługi Azure Storage. |
azcopy make | Tworzy kontener lub udział plików. |
azcopy remove | Usuwanie obiektów blob lub plików z konta usługi Azure Storage. |
azcopy sync | Replikuje lokalizację źródłową do lokalizacji docelowej. |
azcopy set-properties | Zmień warstwę dostępu co najmniej jednego obiektu blob i zastąp (zastępowanie) metadanych oraz tagami indeksu co najmniej jednego obiektu blob. |
Uwaga
Narzędzie AzCopy nie ma polecenia do zmiany nazwy plików.
Używanie w skryscie
Uzyskiwanie statycznego linku pobierania
Z czasem link pobierania narzędzia AzCopy wskaże nowe wersje narzędzia AzCopy. Jeśli skrypt pobiera narzędzie AzCopy, skrypt może przestać działać, jeśli nowsza wersja narzędzia AzCopy modyfikuje funkcje, od których zależy skrypt.
Aby uniknąć tych problemów, uzyskaj statyczny (niezmienny) link do bieżącej wersji narzędzia AzCopy. Dzięki temu skrypt będzie pobierać tę samą dokładną wersję narzędzia AzCopy za każdym razem, gdy zostanie uruchomiony.
Aby uzyskać link, uruchom następujące polecenie:
System operacyjny | Polecenie |
---|---|
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 |
Uwaga
W przypadku systemu Linux --strip-components=1
polecenie tar
usuwa folder najwyższego poziomu zawierający nazwę wersji, a zamiast tego wyodrębnia plik binarny bezpośrednio do bieżącego folderu. Dzięki temu skrypt może zostać zaktualizowany przy użyciu nowej wersji azcopy
, aktualizując wget
tylko adres URL.
Adres URL jest wyświetlany w danych wyjściowych tego polecenia. Następnie skrypt może pobrać narzędzie AzCopy przy użyciu tego adresu 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
Znaki specjalne ucieczki w tokenach SAS
W plikach wsadowych, które mają .cmd
rozszerzenie, należy uciec od %
znaków wyświetlanych w tokenach SAS. Możesz to zrobić, dodając dodatkowy %
znak obok istniejących %
znaków w ciągu tokenu SAS. Wynikowa sekwencja znaków jest wyświetlana jako %%
. Pamiętaj, aby dodać dodatkowy znak ^
przed każdym &
znakiem, aby utworzyć sekwencję ^&
znaków .
Uruchamianie skryptów przy użyciu narzędzia Jenkins
Jeśli planujesz używać narzędzia Jenkins do uruchamiania skryptów, pamiętaj, aby umieścić następujące polecenie na początku skryptu.
/usr/bin/keyctl new_session
Używanie w Eksplorator usługi Azure Storage
Eksplorator usługi Storage używa narzędzia AzCopy do wykonywania wszystkich operacji transferu danych. Możesz użyć Eksplorator usługi Storage, jeśli chcesz zastosować zalety wydajności narzędzia AzCopy, ale wolisz używać graficznego interfejsu użytkownika, a nie wiersza polecenia do interakcji z plikami.
Eksplorator usługi Storage używa klucza konta do wykonywania operacji, więc po zalogowaniu się do Eksplorator usługi Storage nie trzeba podawać dodatkowych poświadczeń autoryzacji.
Konfigurowanie, optymalizowanie i naprawianie
Zobacz dowolne z następujących zasobów:
Użyj poprzedniej wersji (przestarzałe)
Jeśli musisz użyć poprzedniej wersji narzędzia AzCopy, zobacz jeden z następujących linków:
Uwaga
Te wersje narzędzia AzCopy są przestarzałe. Firma Microsoft zaleca korzystanie z narzędzia AzCopy w wersji 10.
Następne kroki
Jeśli masz pytania, problemy lub ogólne opinie, prześlij je na stronie usługi GitHub .