Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
AzCopy v10 to narzędzie wiersza polecenia, które umożliwia kopiowanie obiektów typu blob, katalogów i kontenerów między kontami magazynowymi.
Przykłady innych typów zadań, takich jak wysyłanie plików, pobieranie blobów i synchronizowanie z Blob Storage, zobacz w sekcji Następne kroki tego artykułu.
AzCopy używa interfejsów serwer-serwerAPI, dlatego dane są kopiowane bezpośrednio między serwerami magazynowania.
Wprowadzenie
Zapoznaj się z artykułem Rozpoczęcie pracy z narzędziem AzCopy, aby pobrać narzędzie AzCopy i dowiedzieć się, jak można przekazywać poświadczenia autoryzacyjne usłudze magazynu.
Uwaga
W przykładach w tym artykule przyjęto założenie, że podasz poświadczenia autoryzacji przy użyciu Microsoft Entra ID i że identyfikacja Microsoft Entra ma odpowiednie przypisania ról dla zarówno źródłowych, jak i docelowych kont.
Alternatywnie możesz dołączyć token SAS do źródłowego lub docelowego adresu URL w każdym poleceniu narzędzia AzCopy. Na przykład: azcopy copy 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<blob-path><SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>/<blob-path><SAS-token>'.
Wytyczne
Zastosuj poniższe wytyczne podczas tworzenia poleceń programu AzCopy.
Jeśli używasz autoryzacji Microsoft Entra zarówno dla źródła, jak i miejsca docelowego, oba konta muszą należeć do tej samej dzierżawy firmy Microsoft Entra.
Klient musi mieć dostęp do sieci do kont przechowywania źródłowego i docelowego.
Aby dowiedzieć się, jak skonfigurować ustawienia sieci dla każdego konta usługi Storage, zobacz Konfigurowanie zapór i sieci wirtualnych usługi Azure Storage.
Aby uzyskać informacje na temat obsługiwanych topologii sieci podczas kopiowania między kontami, sprawdź Kopiowanie obiektów blob między kontami magazynowymi z ograniczeniem dostępu.
Jeśli kopiujesz do konta magazynu obiektów blob blokowych w warstwie Premium, pomiń warstwę dostępu obiektu blob podczas operacji kopiowania, ustawiając parametr
s2s-preserve-access-tiernafalse(na przykład:--s2s-preserve-access-tier=false). Konta usługi BlobStorage w warstwie Premium nie obsługują warstw dostępu.Przepływność operacji kopiowania można zwiększyć, ustawiając wartość zmiennej środowiskowej
AZCOPY_CONCURRENCY_VALUE. Aby dowiedzieć się więcej, zobacz Zwiększanie współbieżności.Jeśli źródłowe obiekty blob mają tagi indeksu i chcesz zachować te tagi, należy ponownie zastosować je do docelowych obiektów blob. Aby uzyskać informacje o tym, jak ustawić tagi indeksu, zapoznaj się z sekcją Kopiowanie obiektów blob do innego konta magazynu przy użyciu tagów indeksu w tym artykule.
Podczas kopiowania obiektów blob między kontami magazynu program AzCopy konwertuje wielkie litery w nazwach metadanych na małe litery. To zachowanie jest zgodne ze specyfikacjami protokołu HTTP.
Kopiowanie obiektu blob
Skopiuj obiekt blob do innego konta magazynu za pomocą polecenia azcopy copy.
Wskazówka
W tym przykładzie argumenty ścieżki ujęto w pojedyncze cudzysłowy (''). Używaj pojedynczych cudzysłowów we wszystkich powłokach poleceń z wyjątkiem powłoki poleceń systemu Windows (cmd.exe). Jeśli używasz powłoki poleceń systemu Windows (cmd.exe), ujęć argumenty ścieżki z podwójnymi cudzysłowami ("") zamiast pojedynczych cudzysłowów ('').
Składnia
azcopy copy 'https://<source-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-path>' 'https://<destination-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<blob-path>'
Przykład
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer/myTextFile.txt' 'https://mydestinationaccount.blob.core.windows.net/mycontainer/myTextFile.txt'
Przykład (punkty końcowe usługi Data Lake Storage)
azcopy copy 'https://mysourceaccount.dfs.core.windows.net/mycontainer/myTextFile.txt' 'https://mydestinationaccount.dfs.core.windows.net/mycontainer/myTextFile.txt'
Operacja kopiowania jest synchroniczna. Gdy polecenie zakończy działanie, oznacza to, że wszystkie pliki zostały skopiowane.
Kopiowanie katalogu
Skopiuj katalog do innego konta magazynowego za pomocą polecenia azcopy copy.
Wskazówka
W tym przykładzie argumenty ścieżki ujęto w pojedyncze cudzysłowy (''). Używaj pojedynczych cudzysłowów we wszystkich powłokach poleceń z wyjątkiem powłoki poleceń systemu Windows (cmd.exe). Jeśli używasz powłoki poleceń systemu Windows (cmd.exe), ujęć argumenty ścieżki z podwójnymi cudzysłowami ("") zamiast pojedynczych cudzysłowów ('').
Składnia
azcopy copy 'https://<source-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>/<directory-path>' 'https://<destination-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --recursive
Przykład
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer/myBlobDirectory' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive
Przykład (punkty końcowe usługi Data Lake Storage)
azcopy copy 'https://mysourceaccount.dfs.core.windows.net/mycontainer/myBlobDirectory' 'https://mydestinationaccount.dfs.core.windows.net/mycontainer' --recursive
Operacja kopiowania jest synchroniczna. Po zakończeniu wykonywania polecenia, wszystkie pliki są kopiowane.
Kopiowanie kontenera
Skopiuj kontener do innego konta magazynu danych za pomocą polecenia azcopy copy.
Wskazówka
W tym przykładzie argumenty ścieżki ujęto w pojedyncze cudzysłowy (''). Używaj pojedynczych cudzysłowów we wszystkich powłokach poleceń z wyjątkiem powłoki poleceń systemu Windows (cmd.exe). Jeśli używasz powłoki poleceń systemu Windows (cmd.exe), ujęć argumenty ścieżki z podwójnymi cudzysłowami ("") zamiast pojedynczych cudzysłowów ('').
Składnia
azcopy copy 'https://<source-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' 'https://<destination-storage-account-name>.<blob or dfs>.core.windows.net/<container-name>' --recursive
Przykład
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive
Przykład (punkty końcowe usługi Data Lake Storage)
azcopy copy 'https://mysourceaccount.dfs.core.windows.net/mycontainer' 'https://mydestinationaccount.dfs.core.windows.net/mycontainer' --recursive
Operacja kopiowania jest synchroniczna. Po zakończeniu wykonywania polecenia, wszystkie pliki są kopiowane.
Kopiuj kontenery, katalogi i bloby
Skopiuj wszystkie kontenery, katalogi i obiekty blob do innego konta magazynowego za pomocą polecenia azcopy copy.
Wskazówka
W tym przykładzie argumenty ścieżki ujęto w pojedyncze cudzysłowy (''). Używaj pojedynczych cudzysłowów we wszystkich powłokach poleceń z wyjątkiem powłoki poleceń systemu Windows (cmd.exe). Jeśli używasz powłoki poleceń systemu Windows (cmd.exe), ujęć argumenty ścieżki z podwójnymi cudzysłowami ("") zamiast pojedynczych cudzysłowów ('').
Składnia
azcopy copy 'https://<source-storage-account-name>.<blob or dfs>.core.windows.net/' 'https://<destination-storage-account-name>.<blob or dfs>.core.windows.net/' --recursive
Przykład
azcopy copy 'https://mysourceaccount.blob.core.windows.net/' 'https://mydestinationaccount.blob.core.windows.net' --recursive
Przykład (punkty końcowe usługi Data Lake Storage)
azcopy copy 'https://mysourceaccount.dfs.core.windows.net/' 'https://mydestinationaccount.dfs.core.windows.net' --recursive
Operacja kopiowania jest synchroniczna. Gdy polecenie zakończy działanie, oznacza to, że wszystkie pliki zostały skopiowane.
Kopiowanie obiektów blob i dodawanie tagów indeksowych
Skopiuj obiekty blob na inne konto magazynowania i dodaj tagi indeksu obiektu blob do docelowego obiektu blob.
Jeśli używasz autoryzacji Microsoft Entra, przypisz rolę Właściciela danych obiektu blob Storage do podmiotu zabezpieczeń lub przyznaj mu uprawnienia do Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/writeoperacji dostawcy zasobów Azure za pośrednictwem niestandardowej roli Azure. Jeśli używasz tokenu sygnatury dostępu współdzielonego (SAS), token musi zapewnić dostęp do tagów obiektu blob za pośrednictwem uprawnienia sygnatury dostępu współdzielonego t .
Aby dodać tagi, użyj opcji --blob-tags z zakodowaną w adresie URL parą klucz-wartość.
Aby na przykład dodać klucz my tag i wartość my tag value, dodaj --blob-tags='my%20tag=my%20tag%20value' do parametru docelowego.
Oddzielaj wiele tagów indeksu znakiem ampersand (&). Jeśli na przykład chcesz dodać klucz my second tag i wartość my second tag value, kompletny ciąg opcji to --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'.
W poniższych przykładach pokazano, jak używać --blob-tags opcji.
Wskazówka
Te przykłady otaczają argumenty ścieżki pojedynczymi cudzysłowymi (""). Używaj pojedynczych cudzysłowów we wszystkich powłokach poleceń z wyjątkiem powłoki poleceń systemu Windows (cmd.exe). Jeśli używasz powłoki poleceń systemu Windows (cmd.exe), ujęć argumenty ścieżki z podwójnymi cudzysłowami ("") zamiast pojedynczych cudzysłowów ('').
Przykład obiektu blob
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer/myTextFile.txt' 'https://mydestinationaccount.blob.core.windows.net/mycontainer/myTextFile.txt' --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
Przykład katalogu
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer/myBlobDirectory' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
Przykład kontenera
azcopy copy 'https://mysourceaccount.blob.core.windows.net/mycontainer' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
Przykład konta
azcopy copy 'https://mysourceaccount.blob.core.windows.net/' 'https://mydestinationaccount.blob.core.windows.net' --recursive --blob-tags='my%20tag=my%20tag%20value&my%20second%20tag=my%20second%20tag%20value'
Operacja kopiowania jest synchroniczna. Po zakończeniu wykonywania polecenia, wszystkie pliki są kopiowane.
Uwaga
Jeśli określisz katalog, kontener lub konto dla źródła, wszystkie obiekty blob skopiowane do miejsca docelowego mają te same tagi, które zostały określone w poleceniu .
Kopiowanie z opcjonalnymi flagami
Operację kopiowania można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów.
| Scenariusz | Flaga |
|---|---|
| Skopiuj obiekty blob jako blokowe, stronicowe lub uzupełnialne obiekty blob. | --blob-type=[BlockBlob|PageBlob|AppendBlob] |
| Skopiuj do określonej warstwy dostępu (np. warstwy archiwum). | --block-blob-tier=[None|Gorąca|Chłodna|Archiwum] |
| Automatycznie dekompresuj pliki. | --decompress=[gzip|deflate] |
Aby uzyskać pełną listę, zobacz opcje.
Określanie typów źródłowych i docelowych
Narzędzie AzCopy używa parametru --from-to do jawnego zdefiniowania typów zasobów źródłowych i docelowych, gdy automatyczne wykrywanie może zakończyć się niepowodzeniem, na przykład w scenariuszach potokowych lub emulatorach. Ten parametr pomaga narzędziu AzCopy zrozumieć kontekst transferu i odpowiednio zoptymalizować.
| Wartość FromTo | Description |
|---|---|
BlobBlob |
Kopiowanie między dwiema lokalizacjami usługi Azure Blob Storage |
BlobBlobFS |
Kopiowanie z usługi Azure Blob Storage do usługi Azure Data Lake Gen2 (BlobFS) |
BlobFSBlob |
Kopiowanie z usługi Azure Data Lake Gen2 (BlobFS) do usługi Azure Blob Storage |
BlobFSBlobFS |
Kopiowanie między dwiema lokalizacjami usługi Azure Data Lake Gen2 (BlobFS) |
BlobFSFile |
Kopiowanie z usługi Azure Data Lake Gen2 (BlobFS) do usługi Azure File Storage |
BlobFile |
Kopiowanie z usługi Azure Blob Storage do usługi Azure File Storage |
FileBlob |
Kopiowanie z usługi Azure File Storage do usługi Azure Blob Storage |
FileBlobFS |
Kopiowanie z usługi Azure File Storage do usługi Azure Data Lake Gen2 (BlobFS) |
Następne kroki
Więcej przykładów można znaleźć w następujących artykułach:
- Przykłady: przesyłanie
- Przykłady: pobieranie
- Przykłady: Synchronizacja
- Przykłady: zasobniki usługi Amazon S3
- Przykłady: Google Cloud Storage
- Przykłady: Azure Files
Zobacz następujące artykuły, aby skonfigurować ustawienia, zoptymalizować wydajność i rozwiązać problemy:
- Ustawienia konfiguracji narzędzia AzCopy
- Optymalizowanie wydajności narzędzia AzCopy
- Znajdowanie błędów i wznawianie zadań przy użyciu plików dziennika i planu w narzędziu AzCopy
- Rozwiązywanie problemów z narzędziem AzCopy w wersji 10
- Używanie narzędzia AzCopy do kopiowania obiektów blob między kontami usługi Azure Storage z ograniczeniami sieci