Transferowanie danych za pomocą narzędzia AzCopy i magazynu plików
AzCopy to narzędzie wiersza polecenia, którego można użyć do kopiowania plików na konto magazynu lub z niego. Ten artykuł zawiera przykładowe polecenia, które działają z usługą Azure Files.
Rozpocznij
Zapoznaj się z artykułem Wprowadzenie do narzędzia AzCopy, aby pobrać narzędzie AzCopy i dowiedzieć się więcej o sposobach udostępniania poświadczeń autoryzacji do usługi magazynu.
Uwaga
W przykładach w tym artykule pokazano użycie tokenu SAS do autoryzowania dostępu. Jednak w przypadku poleceń docelowych plików i katalogów można teraz podać poświadczenia autoryzacji przy użyciu identyfikatora Entra firmy Microsoft i pominąć token SAS z tych poleceń. Nadal musisz użyć tokenu SAS w dowolnym poleceniu, które jest przeznaczone tylko dla udziału plików lub konta (na przykład: 'azcopy make https://mystorageaccount.file.core.windows.net/myfileshare'
lub 'azcopy copy 'https://mystorageaccount.file.core.windows.net'
.
Aby dowiedzieć się więcej, zobacz Autoryzowanie narzędzia AzCopy.
Tworzenie udziałów plików
Aby utworzyć udział plików, możesz użyć polecenia azcopy make . W przykładzie w tej sekcji tworzony jest udział plików o nazwie myfileshare
.
Napiwek
W tym przykładzie argumenty ścieżki są ujęte w apostrofy (''). 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 make 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>'
Przykład
azcopy make 'https://mystorageaccount.file.core.windows.net/myfileshare?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D'
Aby uzyskać szczegółowe dokumenty referencyjne, zobacz azcopy make.
Przekaż pliki
Za pomocą polecenia azcopy copy możesz przekazać pliki i katalogi z komputera lokalnego.
Napiwek
Przykłady w tej sekcji ująć argumenty ścieżki za pomocą cudzysłowów pojedynczych (""). 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 ('').
Ta sekcja zawiera następujące przykłady:
- Przekazywanie pliku
- Przekazywanie katalogu
- Przekazywanie zawartości katalogu
- Przekazywanie określonego pliku
Napiwek
Operację przekazywania można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów.
Scenariusz | Flaga |
---|---|
Skopiuj listy kontroli dostępu (ACL) wraz z plikami. | --preserve-smb-permissions=[true|false] |
Skopiuj informacje o właściwości protokołu SMB wraz z plikami. | --preserve-smb-info=[true|false] |
Aby uzyskać pełną listę, zobacz opcje.
Uwaga
Narzędzie AzCopy nie oblicza automatycznie i nie przechowuje kodu skrótu md5 pliku dla pliku większego niż 256 MB. Jeśli chcesz, aby narzędzie AzCopy to zrobiło, dołącz flagę --put-md5
do każdego polecenia kopiowania. Dzięki temu po pobraniu pliku narzędzie AzCopy oblicza skrót MD5 dla pobranych danych i sprawdza, czy skrót MD5 przechowywany we właściwości pliku Content-md5
jest zgodny z obliczonym skrótem.
Przekazywanie pliku
Składnia
azcopy copy '<local-file-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-name>'
Przykład
azcopy copy 'C:\myDirectory\myTextFile.txt' 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' --preserve-smb-permissions=true --preserve-smb-info=true
Plik można również przekazać przy użyciu symbolu wieloznacznego (*) w dowolnym miejscu w ścieżce pliku lub nazwie pliku. Na przykład: 'C:\myDirectory\*.txt'
, lub C:\my*\*.txt
.
Przekazywanie katalogu
W tym przykładzie skopiowano katalog (oraz wszystkie pliki w tym katalogu) do udziału plików. Rezultatem jest katalog w udziale plików o tej samej nazwie.
Składnia
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Aby skopiować do katalogu w udziale plików, wystarczy określić nazwę tego katalogu w ciągu polecenia.
Przykład
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Jeśli określisz nazwę katalogu, który nie istnieje w udziale plików, narzędzie AzCopy utworzy nowy katalog o tej nazwie.
Przekazywanie zawartości katalogu
Zawartość katalogu można przekazać bez kopiowania samego katalogu, używając symbolu wieloznacznego (*).
Składnia
azcopy copy '<local-directory-path>/*' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>'
Przykład
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' --preserve-smb-permissions=true --preserve-smb-info=true
Uwaga
Dołącz flagę --recursive
, aby przekazać pliki we wszystkich podkata katalogach.
Przekazywanie określonych plików
Określone pliki można przekazać przy użyciu pełnych nazw plików, częściowych nazw z symbolami wieloznacznymi (*), lub przy użyciu dat i godzin.
Określanie wielu pełnych nazw plików
Użyj polecenia azcopy copy z opcją --include-path
. Oddzielaj poszczególne nazwy plików przy użyciu średnika (;
).
Składnia
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-path <semicolon-separated-file-list>
Przykład
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?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' --include-path 'photos;documents\myFile.txt' --preserve-smb-permissions=true --preserve-smb-info=true
W tym przykładzie narzędzie AzCopy przesyła C:\myDirectory\photos
katalog i C:\myDirectory\documents\myFile.txt
plik. Należy dołączyć --recursive
opcję transferu wszystkich plików w C:\myDirectory\photos
katalogu.
Możesz również wykluczyć pliki przy użyciu --exclude-path
opcji . Aby dowiedzieć się więcej, zobacz azcopy copy reference docs (Dokumentacja dotycząca narzędzia azcopy copy ).
Używanie symboli wieloznacznych
Użyj polecenia azcopy copy z opcją --include-pattern
. Określ nazwy częściowe, które zawierają symbole wieloznaczne. Oddzielaj nazwy średnikami (;
).
Składnia
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
Przykład
azcopy copy 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileshare?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' --include-pattern 'myFile*.txt;*.pdf*' --preserve-smb-permissions=true --preserve-smb-info=true
Możesz również wykluczyć pliki przy użyciu --exclude-pattern
opcji . Aby dowiedzieć się więcej, zobacz azcopy copy reference docs (Dokumentacja dotycząca narzędzia azcopy copy ).
Opcje --include-pattern
i --exclude-pattern
dotyczą tylko nazw plików, a nie do ścieżki. Jeśli chcesz skopiować wszystkie pliki tekstowe, które istnieją w drzewie katalogów, użyj --recursive
opcji , aby pobrać całe drzewo katalogów, a następnie użyj --include-pattern
elementu i określ *.txt
, aby pobrać wszystkie pliki tekstowe.
Przekazywanie plików zmodyfikowanych po dacie i godzinie
Użyj polecenia azcopy copy z opcją --include-after
. Określ datę i godzinę w formacie ISO 8601 (na przykład: 2020-08-19T15:04:00Z
).
Składnia
azcopy copy '<local-directory-path>\*' 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' --include-after <Date-Time-in-ISO-8601-format>
Przykład
azcopy copy 'C:\myDirectory\*' 'https://mystorageaccount.file.core.windows.net/myfileshare?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' --include-after '2020-08-19T15:04:00Z' --preserve-smb-permissions=true --preserve-smb-info=true
Aby uzyskać szczegółowe informacje, zobacz dokumentację dotyczącą narzędzia azcopy copy .
Pobieranie plików
Za pomocą polecenia azcopy copy można pobrać pliki, katalogi i udziały plików na komputerze lokalnym.
Napiwek
Przykłady w tej sekcji ująć argumenty ścieżki za pomocą cudzysłowów pojedynczych (""). 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 ('').
Ta sekcja zawiera następujące przykłady:
- Pobieranie pliku
- Pobieranie katalogu
- Pobieranie zawartości katalogu
- Pobieranie określonych plików
Napiwek
Operację pobierania można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów:
Scenariusz | Flaga |
---|---|
Skopiuj listy kontroli dostępu (ACL) wraz z plikami. | --preserve-smb-permissions=[true|false] |
Skopiuj informacje o właściwości protokołu SMB wraz z plikami. | --preserve-smb-info=[true|false] |
Automatycznie dekompresuj pliki. | --Dekompresji |
Aby uzyskać pełną listę, zobacz opcje.
Uwaga
Content-md5
Jeśli wartość właściwości pliku zawiera skrót, narzędzie AzCopy oblicza skrót MD5 dla pobranych danych i sprawdza, czy skrót MD5 przechowywany we właściwości pliku Content-md5
jest zgodny z wartością skrótu obliczeniowego. Jeśli te wartości nie są zgodne, pobieranie zakończy się niepowodzeniem, chyba że to zachowanie zostanie zastąpione przez dołączenie --check-md5=NoCheck
lub --check-md5=LogOnly
polecenie kopiowania.
Pobieranie pliku
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>' '<local-file-path>'
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' 'C:\myDirectory\myTextFile.txt' --preserve-smb-permissions=true --preserve-smb-info=true
Pobieranie katalogu
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>' '<local-directory-path>' --recursive
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' 'C:\myDirectory' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
W tym przykładzie zostanie wyświetlony katalog o nazwie C:\myDirectory\myFileShareDirectory
zawierający wszystkie pobrane pliki.
Pobieranie zawartości katalogu
Możesz pobrać zawartość katalogu bez kopiowania samego katalogu, korzystając z symbolu wieloznacznego (*).
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/*<SAS-token>' '<local-directory-path>/'
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory/*?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D' 'C:\myDirectory' --preserve-smb-permissions=true --preserve-smb-info=true
Uwaga
Dołącz flagę --recursive
, aby pobrać pliki we wszystkich katalogach podrzędnych.
Pobieranie określonych plików
Określone pliki można pobrać przy użyciu pełnych nazw plików, częściowych nazw z symbolami wieloznacznymi (*), lub przy użyciu dat i godzin.
Określanie wielu pełnych nazw plików
Użyj polecenia azcopy copy z opcją --include-path
. Oddzielaj poszczególne nazwy plików przy użyciu średnika (;
).
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' '<local-directory-path>' --include-path <semicolon-separated-file-list>
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myFileShare/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' 'C:\myDirectory' --include-path 'photos;documents\myFile.txt' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
W tym przykładzie narzędzie AzCopy przesyła https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos
katalog i https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/documents/myFile.txt
plik. Uwzględnij --recursive
opcję transferu wszystkich plików w https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos
katalogu.
Możesz również wykluczyć pliki przy użyciu --exclude-path
opcji . Aby dowiedzieć się więcej, zobacz azcopy copy reference docs (Dokumentacja dotycząca narzędzia azcopy copy ).
Używanie symboli wieloznacznych
Użyj polecenia azcopy copy z opcją --include-pattern
. Określ nazwy częściowe, które zawierają symbole wieloznaczne. Oddzielaj nazwy średnikami (;
).
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name><SAS-token>' '<local-directory-path>' --include-pattern <semicolon-separated-file-list-with-wildcard-characters>
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/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' 'C:\myDirectory' --include-pattern 'myFile*.txt;*.pdf*' --preserve-smb-permissions=true --preserve-smb-info=true
Możesz również wykluczyć pliki przy użyciu --exclude-pattern
opcji . Aby dowiedzieć się więcej, zobacz azcopy copy reference docs (Dokumentacja dotycząca narzędzia azcopy copy ).
Opcje --include-pattern
i --exclude-pattern
dotyczą tylko nazw plików, a nie do ścieżki. Jeśli chcesz skopiować wszystkie pliki tekstowe, które istnieją w drzewie katalogów, użyj --recursive
opcji , aby pobrać całe drzewo katalogów, a następnie użyj --include-pattern
elementu i określ *.txt
, aby pobrać wszystkie pliki tekstowe.
Pobieranie plików zmodyfikowanych po dacie i godzinie
Użyj polecenia azcopy copy z opcją --include-after
. Określ datę i godzinę w formacie ISO-8601 (na przykład: 2020-08-19T15:04:00Z
).
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-or-directory-name>/*<SAS-token>' '<local-directory-path>' --include-after <Date-Time-in-ISO-8601-format>
Przykład
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/*?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' 'C:\myDirectory' --include-after '2020-08-19T15:04:00Z' --preserve-smb-permissions=true --preserve-smb-info=true
Aby uzyskać szczegółowe informacje, zobacz dokumentację dotyczącą narzędzia azcopy copy .
Pobieranie z migawki udziału
Określoną wersję pliku lub katalogu można pobrać, odwołując się do wartości DateTime migawki udziału. Aby dowiedzieć się więcej na temat migawek udziałów, zobacz Omówienie migawek udziałów dla usługi Azure Files.
Składnia
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-path-or-directory-name><SAS-token>&sharesnapshot=<DateTime-of-snapshot>' '<local-file-or-directory-path>'
Przykład (pobieranie pliku)
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myTextFile.txt?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory\myTextFile.txt' --preserve-smb-permissions=true --preserve-smb-info=true
Przykład (pobieranie katalogu)
azcopy copy 'https://mystorageaccount.file.core.windows.net/myfileshare/myFileShareDirectory?sv=2018-03-28&ss=bjqt&srs=sco&sp=rjklhjup&se=2019-05-10T04:37:48Z&st=2019-05-09T20:37:48Z&spr=https&sig=/SOVEFfsKDqRry4bk3qz1vAQFwY5DDzp2%2B/3Eykf/JLs%3D&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'C:\myDirectory' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
kopiować pliki między kontami magazynu;
Narzędzie AzCopy umożliwia kopiowanie plików na inne konta magazynu. Operacja kopiowania jest synchroniczna, więc wszystkie pliki są kopiowane po powrocie polecenia.
Narzędzie AzCopy używa interfejsów API serwer-serwer, dlatego dane są kopiowane bezpośrednio między serwerami magazynu. Przepływność tych operacji można zwiększyć, ustawiając wartość zmiennej środowiskowej AZCOPY_CONCURRENCY_VALUE
. Aby dowiedzieć się więcej, zobacz Zwiększanie współbieżności.
Można również skopiować określone wersje pliku, odwołując się do wartości DateTime migawki udziału. Aby dowiedzieć się więcej na temat migawek udziałów, zobacz Omówienie migawek udziałów dla usługi Azure Files.
Napiwek
Przykłady w tej sekcji ująć argumenty ścieżki za pomocą cudzysłowów pojedynczych (""). 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 ('').
Ta sekcja zawiera następujące przykłady:
- Kopiowanie pliku na inne konto magazynu
- Kopiowanie katalogu na inne konto magazynu
- Kopiowanie udziału plików na inne konto magazynu
- Kopiowanie wszystkich udziałów plików, katalogów i plików na inne konto usługi Storage
Napiwek
Operację kopiowania można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów.
Scenariusz | Flaga |
---|---|
Skopiuj listy kontroli dostępu (ACL) wraz z plikami. | --preserve-smb-permissions=[true|false] |
Skopiuj informacje o właściwości protokołu SMB wraz z plikami. | --preserve-smb-info=[true|false] |
Aby uzyskać pełną listę, zobacz opcje.
Kopiowanie pliku na inne konto magazynu
Składnia
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>'
Przykład
azcopy copy 'https://mysourceaccount.file.core.windows.net/mycontainer/myTextFile.txt?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.file.core.windows.net/mycontainer/myTextFile.txt?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' --preserve-smb-permissions=true --preserve-smb-info=true
Przykład (migawka udziału)
azcopy copy 'https://mysourceaccount.file.core.windows.net/mycontainer/myTextFile.txt?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&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.core.windows.net/mycontainer/myTextFile.txt?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' --preserve-smb-permissions=true --preserve-smb-info=true
Kopiowanie katalogu na inne konto magazynu
Składnia
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy copy 'https://mysourceaccount.file.core.windows.net/myFileShare/myFileDirectory?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.file.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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Przykład (migawka udziału)
azcopy copy 'https://mysourceaccount.file.core.windows.net/myFileShare/myFileDirectory?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&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Kopiowanie udziału plików na inne konto magazynu
Składnia
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy copy 'https://mysourceaccount.file.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.file.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 --preserve-smb-permissions=true --preserve-smb-info=true
Przykład (migawka udziału)
azcopy copy 'https://mysourceaccount.file.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&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Kopiowanie wszystkich udziałów plików, katalogów i plików na inne konto usługi Storage
Składnia
azcopy copy 'https://<source-storage-account-name>.file.core.windows.net/<SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<SAS-token>' --recursive'
Przykład
azcopy copy 'https://mysourceaccount.file.core.windows.net?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.file.core.windows.net?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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Przykład (migawka udziału)
azcopy copy 'https://mysourceaccount.file.core.windows.net?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&sharesnapshot=2020-09-23T08:21:07.0000000Z' 'https://mydestinationaccount.file.core.windows.net?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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Synchronizowanie plików
Zawartość lokalnego systemu plików można zsynchronizować z udziałem plików lub zsynchronizować zawartość udziału plików z innym udziałem plików. Można również zsynchronizować zawartość katalogu w udziale plików z zawartością katalogu znajdującego się w innym udziale plików. 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ż serwera do interfejsów API serwera.
Uwaga
Obecnie ten scenariusz jest obsługiwany w przypadku kont z włączoną hierarchiczną przestrzenią nazw za pośrednictwem punktu końcowego obiektu blob.
Ostrzeżenie
Synchronizacja narzędzia AzCopy jest obsługiwana, ale nie jest w pełni zalecana w przypadku usługi Azure Files. Synchronizacja narzędzia AzCopy nie obsługuje kopii różnicowych na dużą skalę, a część wierności plików może zostać utracona. Aby dowiedzieć się więcej, zobacz Migrowanie do udziałów plików platformy Azure.
Wytyczne
Domyślnie polecenie synchronizacji porównuje nazwy plików i ostatnio zmodyfikowane znaczniki czasu. To zachowanie można zastąpić, aby użyć skrótów MD5 zamiast ostatniej modyfikacji sygnatur czasowych przy użyciu 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-destination
true
, 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-destination
naprompt
.Jeśli planujesz ustawić flagę
--delete-destination
naprompt
lubfalse
, rozważ użycie polecenia copy zamiast polecenia synchronizacji i ustaw--overwrite
parametr 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 magazynu. Oznacza to, że dane są kopiowane bezpośrednio między serwerami magazynu. Jednak narzędzie AzCopy konfiguruje i monitoruje każdy transfer oraz w przypadku większych kont magazynu (na przykład kont zawierających miliony obiektów blob), narzędzie AzCopy może wymagać znacznej ilości 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.
Napiwek
Operację synchronizacji można dostosować przy użyciu opcjonalnych flag. Oto kilka przykładów.
Scenariusz | Flaga |
---|---|
Skopiuj listy kontroli dostępu (ACL) wraz z plikami. | --preserve-smb-permissions=[true|false] |
Skopiuj informacje o właściwości protokołu SMB wraz z plikami. | --preserve-smb-info=[true|false] |
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|INFO|BRAK] |
Aby uzyskać pełną listę, zobacz opcje.
Przykłady w tej sekcji ująć argumenty ścieżki za pomocą cudzysłowów pojedynczych (""). 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 ('').
Aktualizowanie udziału plików przy użyciu zmian w lokalnym systemie plików
W takim przypadku udział plików jest miejscem docelowym, a lokalny system plików jest źródłem.
Napiwek
W tym przykładzie argumenty ścieżki są ujęte w apostrofy (''). 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 sync '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy sync 'C:\myDirectory' 'https://mystorageaccount.file.core.windows.net/myfileShare?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' --recursive
Aktualizowanie lokalnego systemu plików przy użyciu zmian w udziale plików
W takim przypadku lokalny system plików jest miejscem docelowym, a udział plików jest źródłem.
Napiwek
W tym przykładzie argumenty ścieżki są ujęte w apostrofy (''). 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 sync 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'C:\myDirectory' --recursive
Przykład
azcopy sync 'https://mystorageaccount.file.core.windows.net/myfileShare?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' 'C:\myDirectory' --recursive
Aktualizowanie udziału plików za pomocą zmian w innym udziale plików
Pierwszym udziałem plików wyświetlanym w tym poleceniu jest źródło. Drugi to miejsce docelowe.
Składnia
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.file.core.windows.net/myfileShare?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.file.core.windows.net/myfileshare?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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Aktualizowanie katalogu za pomocą zmian w katalogu w innym udziale plików
Pierwszym katalogem wyświetlanym w tym poleceniu jest źródło. Drugi to miejsce docelowe.
Składnia
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-name><SAS-token>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name>/<directory-name><SAS-token>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.file.core.windows.net/myFileShare/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.file.core.windows.net/myFileShare/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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Aktualizowanie udziału plików w celu dopasowania zawartości migawki udziału
Pierwszym udziałem plików wyświetlanym w tym poleceniu jest źródło. Na końcu identyfikatora URI dołącz ciąg &sharesnapshot=
, po którym następuje wartość DateTime migawki.
Składnia
azcopy sync 'https://<source-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>&sharesnapsot<snapshot-ID>' 'https://<destination-storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Przykład
azcopy sync 'https://mysourceaccount.file.core.windows.net/myfileShare?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&sharesnapshot=2020-03-03T20%3A24%3A13.0000000Z' 'https://mydestinationaccount.file.core.windows.net/myfileshare?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' --recursive --preserve-smb-permissions=true --preserve-smb-info=true
Aby dowiedzieć się więcej na temat migawek udziałów, zobacz Omówienie migawek udziałów dla usługi Azure Files.
Następne kroki
Więcej przykładów można znaleźć w następujących artykułach:
Zobacz następujące artykuły, aby skonfigurować ustawienia, zoptymalizować wydajność i rozwiązać problemy: