Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Magazyn lokalny można zsynchronizować z usługą Azure Blob Storage przy użyciu narzędzia wiersza polecenia AzCopy w wersji 10.
Zawartość lokalnego systemu plików można zsynchronizować z kontenerem blob. Można również synchronizować kontenery i katalogi wirtualne ze sobą. Synchronizacja jest jednym ze sposobów. Innymi słowy, wybierasz, który z tych dwóch punktów końcowych jest źródłem i który z nich jest miejscem docelowym. Synchronizacja używa również interfejsów API w komunikacji między serwerami. Przykłady przedstawione w tej sekcji działają również z kontami, które mają hierarchiczną przestrzeń nazw.
Uwaga
Bieżąca wersja narzędzia AzCopy nie synchronizuje się między innymi źródłami i miejscami docelowymi (na przykład: magazyn plików lub zasobniki S3 usług Amazon Web Services (AWS).
Aby zapoznać się z przykładami innych typów zadań, takich jak przekazywanie plików, pobieranie obiektów blob lub kopiowanie obiektów blob między kontami, zobacz linki przedstawione w sekcji Następne kroki tego artykułu.
Wprowadzenie
Zapoznaj się z artykułem Wprowadzenie do AzCopy, aby pobrać AzCopy i dowiedzieć się, jak można dostarczać poświadczenia autoryzacyjne do usługi magazynowania.
Uwaga
W przykładach w tym artykule założono, że podasz poświadczenia autoryzacji przy użyciu identyfikatora Entra firmy Microsoft.
Jeśli wolisz użyć tokenu SAS do autoryzowania dostępu do danych obiektów blob, możesz dołączyć ten token do adresu URL zasobu w każdym poleceniu narzędzia AzCopy. Na przykład: 'https://<storage-account-name>.blob.core.windows.net/<container-name><SAS-token>'.
Wytyczne
Domyślnie polecenie synchronizacji porównuje nazwy plików i ostatnio zmodyfikowane znaczniki czasu. To domyślne zachowanie można zmienić, aby używać skrótów MD5 zamiast znaczników czasowych ostatniej modyfikacji, używając flagi --compare-hash.
--delete-destination Ustaw opcjonalną flagę na wartość true lub prompt usuń pliki w katalogu docelowym, jeśli te pliki nie istnieją już w katalogu źródłowym.
Jeśli flaga zostanie ustawiona na
--delete-destinationtrue, narzędzie AzCopy usuwa pliki bez wyświetlania monitu. Jeśli chcesz wyświetlić monit przed usunięciem pliku za pomocą narzędzia AzCopy, ustaw flagę--delete-destinationnaprompt.Jeśli planujesz ustawić flagę
--delete-destinationnapromptlubfalse, rozważ użycie polecenia copy zamiast polecenia synchronizacji i ustaw--overwriteparametr naifSourceNewer. Polecenie kopiowania zużywa mniej pamięci i wiąże się z mniejszymi kosztami rozliczeniowymi, ponieważ operacja kopiowania nie musi indeksować źródła ani miejsca docelowego przed przeniesieniem plików.Jeśli nie planujesz używać flagi
--compare-hash, maszyna, na której uruchomiono polecenie synchronizacji, powinna mieć dokładny zegar systemowy, ponieważ czasy ostatniej modyfikacji mają krytyczne znaczenie podczas określania, czy plik powinien zostać przeniesiony. Jeśli system ma znaczne niesymetryczność zegara, należy unikać modyfikowania plików w miejscu docelowym zbyt blisko czasu, w którym planujesz uruchomić polecenie synchronizacji.Narzędzie AzCopy używa interfejsów API serwer-serwer do synchronizowania danych między kontami magazynowymi. Oznacza to, że dane są kopiowane bezpośrednio między serwerami pamięci masowej. Jednak AzCopy konfiguruje i monitoruje każdy transfer, a dla większych kont (na przykład kont zawierających miliony obiektów blob), AzCopy może wymagać znacznych zasobów obliczeniowych do wykonania tych zadań. W związku z tym, jeśli używasz narzędzia AzCopy z maszyny wirtualnej, upewnij się, że maszyna wirtualna ma wystarczającą ilość rdzeni/pamięci do obsługi obciążenia.
- Aby zapobiec przypadkowemu usunięciu, przed użyciem flagi pamiętaj o włączeniu funkcji usuwania nietrwałego
--delete-destination=prompt|true.
Aktualizowanie kontenera przy użyciu zmian w lokalnym systemie plików
W tym przypadku kontener jest miejscem docelowym, a lokalny system plików jest źródłem.
Wskazówka
W tym przykładzie argumenty ścieżki są ujęte 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 Wiersza polecenia Windows (cmd.exe), ujmij argumenty ścieżki w podwójnych cudzysłowach ("") zamiast pojedynczych cudzysłowów ('').
składnia
azcopy sync '<local-directory-path>' 'https://<storage-account-name>.blob.core.windows.net/<container-name>' --recursive
Przykład
azcopy sync 'C:\myDirectory' 'https://mystorageaccount.blob.core.windows.net/mycontainer' --recursive
Aktualizowanie lokalnego systemu plików ze zmianami w kontenerze
W takim przypadku lokalny system plików jest miejscem docelowym, a kontener jest źródłem.
Wskazówka
W tym przykładzie argumenty ścieżki są ujęte 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 Wiersza polecenia Windows (cmd.exe), ujmij argumenty ścieżki w podwójnych cudzysłowach ("") zamiast pojedynczych cudzysłowów ('').
składnia
azcopy sync 'https://<storage-account-name>.blob.core.windows.net/<container-name>' 'C:\myDirectory' --recursive
Przykład
azcopy sync 'https://mystorageaccount.blob.core.windows.net/mycontainer' 'C:\myDirectory' --recursive
Aktualizowanie kontenera za pomocą zmian w innym kontenerze
Pierwszym kontenerem wyświetlanym w tym poleceniu jest źródło. Drugim kontenerem jest miejsce docelowe.
Jeśli podasz poświadczenia autoryzacji przy użyciu identyfikatora Entra firmy Microsoft, upewnij się, że skonfigurowaliśmy odpowiednie role na koncie źródłowym i docelowym. Zobacz opcję 1. Użyj identyfikatora Entra firmy Microsoft.
Wskazówka
W tym przykładzie argumenty ścieżki są ujęte 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 Wiersza polecenia Windows (cmd.exe), ujmij argumenty ścieżki w podwójnych cudzysłowach ("") zamiast pojedynczych cudzysłowów ('').
składnia
azcopy sync 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.blob.core.windows.net/mycontainer?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-07-04T05:30:08Z&st=2019-07-03T21:30:08Z&spr=https&sig=CAfhgnc9gdGktvB=ska7bAiqIddM845yiyFwdMH481QA8%3D' 'https://mydestinationaccount.blob.core.windows.net/mycontainer' --recursive
Aktualizowanie katalogu za pomocą zmian w katalogu w innym kontenerze
Pierwszym katalogem wyświetlanym w tym poleceniu jest źródło. Drugi katalog jest miejscem docelowym.
Jeśli podasz poświadczenia autoryzacji przy użyciu identyfikatora Entra firmy Microsoft, upewnij się, że skonfigurowaliśmy odpowiednie role na koncie źródłowym i docelowym. Zobacz opcję 1. Użyj identyfikatora Entra firmy Microsoft.
Wskazówka
W tym przykładzie argumenty ścieżki są ujęte 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 Wiersza polecenia Windows (cmd.exe), ujmij argumenty ścieżki w podwójnych cudzysłowach ("") zamiast pojedynczych cudzysłowów ('').
składnia
azcopy sync 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<directory-name>/<SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>/<directory-name>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.blob.core.windows.net/<container-name>/myDirectory?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-07-04T05:30:08Z&st=2019-07-03T21:30:08Z&spr=https&sig=CAfhgnc9gdGktvB=ska7bAiqIddM845yiyFwdMH481QA8%3D' 'https://mydestinationaccount.blob.core.windows.net/mycontainer/myDirectory' --recursive
Aktualizowanie kontenera za pomocą zmian w innym kontenerze przy użyciu tokenu SAS
Pierwszym kontenerem wyświetlanym w tym poleceniu jest źródło. Drugim kontenerem jest miejsce docelowe.
Jeśli podasz token SAS, upewnij się, że używasz tokenu SAS odpowiadającego źródłowym i docelowym kontom magazynowym podczas korzystania z azcopy sync.
składnia
azcopy sync 'https://<source-storage-account-name>.blob.core.windows.net/<container-name>/<SAS-token>' 'https://<destination-storage-account-name>.blob.core.windows.net/<container-name>/<destination-SAS-token>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.blob.core.windows.net/mycontainer?sv=2018-03-28&ss=bfqt&srt=sco&sp=rwdlacup&se=2019-07-04T05:30:08Z&st=2019-07-03T21:30:08Z&spr=https&sig=CAfhgnc9gdGktvB=ska7bAiqIddM845yiyFwdMH481QA8%3D' 'https://mydestinationaccount.blob.core.windows.net/mycontainer/?sv=2018-03-28&ss=qrdu&dst=mco&kp=rwdlapuc&se=2019-07-04T05:30:08Z&st=2019-07-03T21:31:10Z&spr=https&sig=CAfhgnc9gdGktvB=yzx9CAjMKeeN678yiyFwdNU092JC8%6D' --recursive
Wskazówka
Jeśli kopiujesz dużą ilość danych, możesz użyć Eksploratora usługi Azure Storage.
Aby sprawdzić rozmiar skopiowanych danych, w górnym menu paska wybierz pozycję Więcej ->Statystyki folderów, aby uzyskać szczegółowe informacje o katalogu, w tym rozmiar w bajtach.
Synchronizowanie z flagami opcjonalnymi
Operację synchronizacji można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów.
| Scenariusz | Flaga |
|---|---|
| Określ, jak dokładnie skróty MD5 powinny być weryfikowane podczas pobierania. | --check-md5=[NoCheck|LogOnly|FailIfDifferent|FailIfDifferentOrMissing] |
| Wyklucz pliki na podstawie wzorca. | --exclude-path |
| Określ, jak szczegółowe mają być wpisy dziennika związane z synchronizacją. | --log-level=[OSTRZEŻENIE|BŁĄD|INFORMACJA|BRAK] |
| Określ sposób kopiowania pliku vhd. | --blob-type=BlockBlob --include-pattern "*.vhd" lub --blob-type=BlockBlob |
Aby uzyskać pełną listę flag, zobacz opcje.
Uwaga
Flaga --recursive jest domyślnie ustawiona na true. Flagi --exclude-pattern i --include-pattern mają zastosowanie tylko do nazw plików, a nie do innych części ścieżki pliku.
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: kopiowanie między kontami
- 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: