Transférer des données avec AzCopy et le stockage de fichiers
AzCopy est un utilitaire de ligne de commande que vous pouvez utiliser pour copier des fichiers vers ou depuis un compte de stockage. Cet article contient des exemples de commandes qui fonctionnent avec Azure Files.
Bien démarrer
Consultez l’article Prise en main d’AzCopy pour télécharger AzCopy, et découvrez comment vous pouvez fournir des informations d’identification au service de stockage.
Remarque
Les exemples de cet article montrent l’utilisation d’un jeton SAP pour autoriser l’accès. Toutefois, pour les commandes qui ciblent des fichiers et des répertoires, vous pouvez désormais fournir des informations d’identification d’autorisation à l’aide de Microsoft Entra ID et omettre le jeton SAP de ces commandes. Vous devrez toujours utiliser un jeton SAP dans n’importe quelle commande qui cible uniquement le partage de fichiers ou le compte (par exemple : 'azcopy make https://mystorageaccount.file.core.windows.net/myfileshare'
ou 'azcopy copy 'https://mystorageaccount.file.core.windows.net'
).
Pour en savoir plus, consultez Autoriser AzCopy.
Créer des partages de fichiers
Vous pouvez utiliser la commande azcopy make pour créer un partage de fichiers. L’exemple dans cette section crée un partage de fichiers nommé myfileshare
.
Conseil
Cet exemple englobe les arguments de chemin d’accès avec des guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Syntaxe
azcopy make 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>'
Exemple
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'
Pour obtenir des informations de référence détaillées, consultez azcopy make.
Charger des fichiers
Vous pouvez utiliser la commande azcopy copy pour charger des fichiers et répertoires à partir de votre machine locale.
Conseil
Dans les exemples de cette section, les arguments de chemin d’accès sont entre guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Cette section contient les exemples suivants :
- Charger un fichier
- Charger un annuaire
- Charger le contenu d’un annuaire
- Charger un fichier spécifique
Conseil
Vous pouvez ajuster votre opération de chargement à l’aide d’indicateurs facultatifs. Voici quelques exemples.
Scénario | Indicateur |
---|---|
Copier des listes de contrôle d’accès (ACL) avec les fichiers | --preserve-smb-permissions=[true|false] |
Copier des informations de propriété SMB avec les fichiers | --preserve-smb-info=[true|false] |
Pour obtenir la liste complète, consultez Options.
Notes
AzCopy ne calcule pas et ne stocke pas automatiquement le code de hachage md5 du fichier pour un fichier supérieur à 256 Mo. Si vous souhaitez qu’AzCopy le fasse, ajoutez l’indicateur --put-md5
à chaque commande de copie. De cette façon, lorsque le fichier est téléchargé, AzCopy calcule un code de hachage MD5 pour les données téléchargées et vérifie que le code de hachage MD5 stocké dans la propriété Content-md5
du fichier correspond au code de hachage calculé.
Charger un fichier
Syntaxe
azcopy copy '<local-file-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-name>'
Exemple
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
Vous pouvez également charger un fichier en plaçant un caractère générique (*) n’importe où dans le chemin ou le nom de fichier. Par exemple : 'C:\myDirectory\*.txt'
ou C:\my*\*.txt
.
Charger un annuaire
Cet exemple copie un répertoire (et tous les fichiers qu’il contient) dans un partage de fichiers. Le partage de fichiers contient alors un répertoire du même nom.
Syntaxe
azcopy copy '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Exemple
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
Pour copier des éléments dans un répertoire du partage de fichiers, spécifiez simplement le nom de ce répertoire dans votre chaîne de commande.
Exemple
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
Si vous spécifiez le nom d’un répertoire qui n’existe pas dans le partage de fichiers, AzCopy crée un répertoire portant ce nom.
Charger le contenu d’un annuaire
Vous pouvez charger le contenu d’un répertoire sans copier le répertoire proprement dit en utilisant le caractère générique (*).
Syntaxe
azcopy copy '<local-directory-path>/*' 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>'
Exemple
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
Notes
Ajoutez l’indicateur --recursive
pour charger des fichiers dans tous les sous-répertoires.
Charger des fichiers spécifiques
Vous pouvez charger des fichiers spécifiques en utilisant des noms de fichiers complets, des noms partiels avec des caractères génériques (*), ou des dates et des heures.
Spécifier plusieurs noms de fichiers complets
Utilisez la commande azcopy copy avec l’option --include-path
. Séparez les noms de fichiers à l’aide d’un point-virgule (;
).
Syntaxe
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>
Exemple
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
Dans cet exemple, AzCopy transfère le répertoire C:\myDirectory\photos
et le fichier C:\myDirectory\documents\myFile.txt
. Vous devez inclure l’option --recursive
pour transférer tous les fichiers dans le répertoire C:\myDirectory\photos
.
Vous pouvez également exclure des fichiers à l’aide de l’option --exclude-path
. Pour plus d’informations, consultez la documentation de référence sur azcopy copy.
Utiliser des caractères génériques
Utilisez la commande azcopy copy avec l’option --include-pattern
. Spécifiez des noms partiels qui incluent les caractères génériques. Séparez les noms à l’aide d’un point-virgule (;
).
Syntaxe
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>
Exemple
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
Vous pouvez également exclure des fichiers à l’aide de l’option --exclude-pattern
. Pour plus d’informations, consultez la documentation de référence sur azcopy copy.
Les options --include-pattern
et --exclude-pattern
s’appliquent uniquement aux noms de fichiers, et non au chemin. Si vous souhaitez copier tous les fichiers texte qui existent dans une arborescence de répertoires, utilisez l’option --recursive
pour obtenir la totalité de l’arborescence de répertoires, puis utilisez --include-pattern
et spécifiez *.txt
pour obtenir tous les fichiers texte.
Charger les fichiers qui ont été modifiés après une date et une heure
Utilisez la commande azcopy copy avec l’option --include-after
. Spécifiez une date et une heure au format ISO 8601 (par exemple : 2020-08-19T15:04:00Z
).
Syntaxe
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>
Exemple
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
Pour obtenir des informations de référence détaillées, consultez les documents de référence azcopy copy.
Télécharger les fichiers
Vous pouvez utiliser la commande azcopy copy pour télécharger des fichiers, des répertoires et des partages de fichiers sur votre machine locale.
Conseil
Dans les exemples de cette section, les arguments de chemin d’accès sont entre guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Cette section contient les exemples suivants :
- Téléchargement d’un fichier
- Télécharger un annuaire
- Télécharger le contenu d’un annuaire
- Télécharger des fichiers spécifiques
Conseil
Vous pouvez ajuster votre opération de téléchargement à l’aide d’indicateurs facultatifs. Voici quelques exemples :
Scénario | Indicateur |
---|---|
Copier des listes de contrôle d’accès (ACL) avec les fichiers | --preserve-smb-permissions=[true|false] |
Copier des informations de propriété SMB avec les fichiers | --preserve-smb-info=[true|false] |
Décompresser automatiquement les fichiers | DECOMPRESS |
Pour obtenir la liste complète, consultez Options.
Notes
Si la valeur de propriété Content-md5
d’un fichier contient un code de hachage, AzCopy calcule un code de hachage MD5 pour les données téléchargées et vérifie que le code de hachage MD5 stocké dans la propriété Content-md5
du fichier correspond au code de hachage calculé. Si ces valeurs ne correspondent pas, le téléchargement échoue, sauf si vous remplacez ce comportement en ajoutant --check-md5=NoCheck
ou --check-md5=LogOnly
à la commande de copie.
Téléchargement d’un fichier
Syntaxe
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<file-path><SAS-token>' '<local-file-path>'
Exemple
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
Télécharger un annuaire
Syntaxe
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/<directory-path><SAS-token>' '<local-directory-path>' --recursive
Exemple
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
Cet exemple illustre la création d’un répertoire nommé C:\myDirectory\myFileShareDirectory
qui contient tous les fichiers téléchargés.
Télécharger le contenu d’un annuaire
Vous pouvez télécharger le contenu d’un répertoire sans copier le répertoire proprement dit en utilisant le caractère générique (*).
Syntaxe
azcopy copy 'https://<storage-account-name>.file.core.windows.net/<file-share-name>/*<SAS-token>' '<local-directory-path>/'
Exemple
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
Notes
Ajoutez l’indicateur --recursive
pour télécharger des fichiers dans tous les sous-répertoires.
Télécharger des fichiers spécifiques
Vous pouvez télécharger des fichiers spécifiques en utilisant des noms de fichiers complets, des noms partiels avec des caractères génériques (*), ou des dates et des heures.
Spécifier plusieurs noms de fichiers complets
Utilisez la commande azcopy copy avec l’option --include-path
. Séparez les noms de fichiers à l’aide d’un point-virgule (;
).
Syntaxe
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>
Exemple
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
Dans cet exemple, AzCopy transfère le répertoire https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos
et le fichier https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/documents/myFile.txt
. Incluez l’option --recursive
pour transférer tous les fichiers dans le répertoire https://mystorageaccount.file.core.windows.net/myFileShare/myDirectory/photos
.
Vous pouvez également exclure des fichiers à l’aide de l’option --exclude-path
. Pour plus d’informations, consultez la documentation de référence sur azcopy copy.
Utiliser des caractères génériques
Utilisez la commande azcopy copy avec l’option --include-pattern
. Spécifiez des noms partiels qui incluent les caractères génériques. Séparez les noms à l’aide d’un point-virgule (;
).
Syntaxe
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>
Exemple
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
Vous pouvez également exclure des fichiers à l’aide de l’option --exclude-pattern
. Pour plus d’informations, consultez la documentation de référence sur azcopy copy.
Les options --include-pattern
et --exclude-pattern
s’appliquent uniquement aux noms de fichiers, et non au chemin. Si vous souhaitez copier tous les fichiers texte qui existent dans une arborescence de répertoires, utilisez l’option --recursive
pour obtenir la totalité de l’arborescence de répertoires, puis utilisez --include-pattern
et spécifiez *.txt
pour obtenir tous les fichiers texte.
Télécharger les fichiers qui ont été modifiés après une date et une heure
Utilisez la commande azcopy copy avec l’option --include-after
. Spécifiez une date et une heure au format ISO 8601 (par exemple : 2020-08-19T15:04:00Z
).
Syntaxe
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>
Exemple
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
Pour obtenir des informations de référence détaillées, consultez les documents de référence azcopy copy.
Télécharger à partir d’un instantané de partage
Vous pouvez télécharger une version spécifique d’un fichier ou d’un répertoire en référençant la valeur DateHeure d’un instantané de partage. Pour en savoir plus sur les instantanés de partage, consultez Vue d’ensemble des instantanés de partage pour Azure Files.
Syntaxe
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>'
Exemple (Télécharger un fichier)
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
Exemple (Télécharger un répertoire)
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
Copier des fichiers entre des comptes de stockage
Vous pouvez utiliser AzCopy pour copier des fichiers vers d’autres comptes de stockage. L’opération de copie est synchrone de sorte que tous les fichiers soient copiés lorsque la commande retourne.
AzCopy utilise des API serveur à serveur, de sorte que les données sont copiées directement entre les serveurs de stockage. Vous pouvez augmenter le débit de ces opérations en définissant la valeur de la variable d’environnement AZCOPY_CONCURRENCY_VALUE
. Pour plus d’informations, consultez Augmenter la concurrence.
Vous pouvez également copier des versions spécifiques d’un fichier en référençant la valeur DateHeure d’un instantané de partage. Pour en savoir plus sur les instantanés de partage, consultez Vue d’ensemble des instantanés de partage pour Azure Files.
Conseil
Dans les exemples de cette section, les arguments de chemin d’accès sont entre guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Cette section contient les exemples suivants :
- Copier un fichier vers un autre compte de stockage
- Copier un répertoire vers un autre compte de stockage
- Copier un partage de fichiers vers un autre compte de stockage
- Copier tous les partages de fichiers, répertoires et fichiers vers un autre compte de stockage
Conseil
Vous pouvez ajuster votre opération de copie à l’aide d’indicateurs facultatifs. Voici quelques exemples.
Scénario | Indicateur |
---|---|
Copier des listes de contrôle d’accès (ACL) avec les fichiers | --preserve-smb-permissions=[true|false] |
Copier des informations de propriété SMB avec les fichiers | --preserve-smb-info=[true|false] |
Pour obtenir la liste complète, consultez Options.
Copier un fichier vers un autre compte de stockage
Syntaxe
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>'
Exemple
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
Exemple (instantané de partage)
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
Copier un répertoire vers un autre compte de stockage
Syntaxe
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
Exemple
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
Exemple (instantané de partage)
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
Copier un partage de fichiers vers un autre compte de stockage
Syntaxe
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
Exemple
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
Exemple (instantané de partage)
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
Copier tous les partages de fichiers, répertoires et fichiers vers un autre compte de stockage
Syntaxe
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'
Exemple
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
Exemple (instantané de partage)
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
Synchroniser des fichiers
Vous pouvez synchroniser le contenu d’un système de fichiers local avec un partage de fichiers ou synchroniser le contenu d’un partage de fichiers avec un autre partage de fichiers. Vous pouvez également synchroniser le contenu d’un répertoire dans un partage de fichiers avec celui d’un répertoire situé dans un autre partage de fichiers. La synchronisation est unidirectionnelle. En d’autres termes, vous choisissez lequel de ces deux points de terminaison est la source et lequel est la destination. La synchronisation utilise également un serveur pour les API de serveur.
Notes
Actuellement, ce scénario est pris en charge pour les comptes qui ont activé l’espace de noms hiérarchique via le point de terminaison d’objet BLOB.
Avertissement
La synchronisation AzCopy est prise en charge, mais pas entièrement recommandée pour Azure Files. La synchronisation AzCopy ne prend pas en charge les copies différentielles à grande échelle. La fidélité des fichiers peut être réduite. Pour plus d’informations Migrer vers des partages de fichiers Azure.
Consignes
Par défaut, la commande sync compare les noms de fichiers et les horodatages de la dernière modification. Vous pouvez remplacer ce comportement pour utiliser des hachages MD5 au lieu des derniers horodatages modifiés à l’aide de l’indicateur --compare-hash
. Définissez l’indicateur facultatif --delete-destination
sur la valeur true
ou prompt
pour supprimer des fichiers dans le répertoire de destination si ces fichiers n’existent plus dans le répertoire source.
Si vous affectez la valeur
true
à l’indicateur--delete-destination
, AzCopy supprime les fichiers sans invite. Si vous souhaitez qu’une invite s’affiche avant que l’utilitaire AzCopy ne supprime un fichier, définissez l’indicateur--delete-destination
surprompt
.Si vous envisagez de définir l'indicateur
--delete-destination
surprompt
oufalse
, pensez à utiliser la commande copy au lieu de la commande sync et à définir le paramètre--overwrite
surifSourceNewer
. La commande copy consomme moins de mémoire et génère des coûts de facturation inférieurs, car une opération de copie ne doit pas indexer la source ou la destination avant de déplacer des fichiers.Si vous n’envisagez pas d’utiliser l’indicateur
--compare-hash
, l’ordinateur sur lequel vous exécutez la commande de synchronisation doit avoir une horloge système précise, car les heures de la dernière modification sont essentielles pour déterminer si un fichier doit être transféré. Si votre système connaît des décalages d’horloge significatifs, évitez de modifier les fichiers de la destination à un moment trop proche de celui où vous envisagez d’exécuter une commande de synchronisation.AzCopy utilise des API serveur à serveur pour synchroniser les données entre les comptes de stockage. Cela signifie que les données sont copiées directement entre les serveurs de stockage. Toutefois, AzCopy configure et surveille chaque transfert. De plus, pour les comptes de stockage plus volumineux (par exemple, les comptes qui contiennent des millions d’objets blob), AzCopy peut nécessiter une quantité importante de ressources de calcul pour accomplir ces tâches. Par conséquent, si vous exécutez AzCopy à partir d’une machine virtuelle, assurez-vous que la machine virtuelle dispose de suffisamment de cœurs/mémoire pour gérer la charge.
Conseil
Vous pouvez ajuster votre opération de synchronisation à l’aide d’indicateurs facultatifs. Voici quelques exemples.
Scénario | Indicateur |
---|---|
Copier des listes de contrôle d’accès (ACL) avec les fichiers | --preserve-smb-permissions=[true|false] |
Copier des informations de propriété SMB avec les fichiers | --preserve-smb-info=[true|false] |
Exclure des fichiers en fonction d’un modèle | --exclude-path |
Spécifier le niveau de détail des entrées de journal liées à la synchronisation | --log-level=[WARNING|ERROR|INFO|NONE] |
Pour obtenir la liste complète, consultez Options.
Dans les exemples de cette section, les arguments de chemin d’accès sont entre guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Mettre à jour un partage de fichiers avec les modifications apportées à un système de fichiers local
Dans ce cas, le partage de fichiers est la destination et le système de fichiers local est la source.
Conseil
Cet exemple englobe les arguments de chemin d’accès avec des guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Syntaxe
azcopy sync '<local-directory-path>' 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' --recursive
Exemple
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
Mettre à jour un système de fichiers local avec les modifications apportées à un partage de fichiers
Dans ce cas, le système de fichiers local est la destination et le partage de fichiers est la source.
Conseil
Cet exemple englobe les arguments de chemin d’accès avec des guillemets simples (' '). Utilisez des guillemets simples dans tous les interpréteurs de commandes, à l’exception de l’interface de commande Windows (cmd. exe). Si vous utilisez une interface de commande Windows (cmd. exe), placez les arguments de chemin d’accès entre guillemets doubles (" ") au lieu de guillemets simples (' ').
Syntaxe
azcopy sync 'https://<storage-account-name>.file.core.windows.net/<file-share-name><SAS-token>' 'C:\myDirectory' --recursive
Exemple
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
Mettre à jour un partage de fichiers avec les modifications apportées à un autre partage de fichiers
Le premier partage de fichiers qui s’affiche dans cette commande est la source. Le deuxième est la destination.
Syntaxe
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
Exemple
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
Mettre à jour un répertoire avec les modifications apportées à un répertoire dans un autre partage de fichiers
Le premier répertoire qui s’affiche dans cette commande est la source. Le deuxième est la destination.
Syntaxe
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
Exemple
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
Mettre à jour un partage de fichiers pour qu’il corresponde au contenu d’un instantané de partage
Le premier partage de fichiers qui s’affiche dans cette commande est la source. À la fin de l’URI, ajoutez la chaîne &sharesnapshot=
suivie de la valeur DateTime de l’instantané.
Syntaxe
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
Exemple
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
Pour en savoir plus sur les instantanés de partage, consultez Vue d’ensemble des instantanés de partage pour Azure Files.
Étapes suivantes
Plus d’exemples dans ces articles :
Consultez les articles suivants pour configurer les paramètres, optimiser les performances et résoudre les problèmes :