Introducción a AzCopy

AzCopy es una utilidad de línea de comandos que puede usar para copiar blobs o archivos a una cuenta de almacenamiento o desde una cuenta de almacenamiento. En este artículo sirve de ayuda para descargar AzCopy, conectarse a la cuenta de almacenamiento y, a continuación, transferir archivos.

Nota

AzCopy V10 es la versión admitida actualmente de AzCopy.

Si necesita usar una versión anterior de AzCopy, consulte la sección Uso de la versión anterior de AzCopy de este artículo.

Descargar AzCopy

En primer lugar, descargue el archivo ejecutable de AzCopy V10 en cualquier directorio en el equipo. AzCopy V10 es solo un archivo ejecutable, de modo que no hay que instalar nada.

Estos archivos se comprimen como un archivo ZIP (Windows y Mac) o un archivo TAR (Linux). Para descargar y descomprimir el archivo tar en Linux, consulte la documentación de su distribución de Linux.

Nota

Si desea copiar datos desde y hacia su servicio de almacenamiento de Azure Table, instale AzCopy versión 7.3.

Ejecución de AzCopy

Para mayor comodidad, considere la posibilidad de agregar la ubicación del directorio del ejecutable de AzCopy a la ruta de acceso del sistema para facilitar su uso. De este modo, puede escribir azcopy desde cualquier directorio del sistema.

Si decide no agregar el directorio de AzCopy a la ruta de acceso, tendrá que cambiar los directorios a la ubicación de su archivo ejecutable de AzCopy y escribir azcopy o .\azcopy en los símbolos del sistema de Windows PowerShell.

Como propietario de la cuenta de Azure Storage, no se le asignan automáticamente permisos para tener acceso a datos. Antes de hacer nada significativo con AzCopy, debe decidir cómo proporcionará las credenciales de autorización al servicio de almacenamiento.

Autorización de AzCopy

Puede proporcionar las credenciales de autorización mediante Azure Active Directory (AD) o mediante un token de firma de acceso compartido (SAS).

Use esta tabla como guía:

Tipo de almacenamiento Método de autorización admitido actualmente
Blob Storage Azure AD y SAS
Blob Storage (espacio de nombres jerárquico) Azure AD y SAS
Almacenamiento de archivos SAS solo

Opción 1: Uso de Azure Active Directory

Esta opción solo está disponible para Blob storage. Con Azure Active Directory, puede proporcionar credenciales una vez en lugar de anexar un token de SAS a cada comando.

Nota

En la versión actual, si tiene previsto copiar blobs entre distintas cuentas de almacenamiento, deberá anexar un token de SAS a cada URL de origen. Puede omitir el token de SAS solo de la dirección URL de destino. Si necesita ejemplos, vea Copia de blobs entre cuentas de almacenamiento.

Para autorizar el acceso mediante Azure AD, consulte Autorización del acceso a blobs con AzCopy y Azure Active Directory (Azure AD).

Opción 2: Uso de un token de SAS

Puede anexar un token de SAS a cada dirección URL de origen o destino que use en los comandos de AzCopy.

El comando de este ejemplo copia recursivamente los datos desde un directorio local a un contenedor de blobs. Un token de SAS ficticio se anexa al final de la dirección URL del contenedor.

azcopy copy "C:\local\path" "https://account.blob.core.windows.net/mycontainer1/?sv=2018-03-28&ss=bjqt&srt=sco&sp=rwddgcup&se=2019-05-01T05:01:17Z&st=2019-04-30T21:01:17Z&spr=https&sig=MGCXiyEzbtttkr3ewJIh2AR8KrghSy1DGM9ovN734bQF4%3D" --recursive=true

Para más información sobre los tokens de SAS y de cómo obtener uno, consulte Uso de firmas de acceso compartido (SAS).

Nota

El parámetro Se requiere transferencia segura de una cuenta de almacenamiento determina si la conexión a una cuenta de almacenamiento está protegida con Seguridad de la capa de transporte (TLS). Esta opción está habilitada de forma predeterminada.

Transferencia de datos

Después de autorizar la identidad o de obtener un token de SAS, puede comenzar la transferencia de datos.

Para obtener ejemplos de comandos, consulte cualquiera de estos artículos.

Servicio Artículo
Azure Blob Storage Carga de archivos en Azure Blob Storage
Azure Blob Storage Descarga de blobs desde Azure Blob Storage
Azure Blob Storage Copia de blobs entre cuentas de Azure Storage
Azure Blob Storage Sincronización con Azure Blob Storage
Azure Files Transferencia de datos con AzCopy y File Storage
Amazon S3 Copia de datos de Amazon S3 a Azure Storage
Google Cloud Storage Copia de datos de Google Cloud Storage a Azure Storage (versión preliminar)
Almacenamiento de Azure Stack Transferencia de datos con AzCopy y Azure Stack Storage

Obtención de ayuda sobre los comandos

Para ver una lista de los comandos, escriba azcopy -h y, a continuación, presione la tecla ENTRAR.

Para obtener información acerca de un comando específico, basta con que incluya el nombre del comando (por ejemplo: azcopy list -h).

Ayuda en línea

Lista de comandos

En la tabla siguiente se enumeran todos los comandos de AzCopy v10. Cada comando está vinculado a un artículo de referencia.

Get-Help Descripción
azcopy bench Ejecuta una prueba comparativa de rendimiento al cargar o descargar datos de prueba hacia o desde un destino especificado.
azcopy copy Copia los datos de origen en una ubicación de destino.
azcopy doc Genera documentación para la herramienta en formato de Markdown.
azcopy env Muestra las variables de entorno que pueden configurar el comportamiento de AzCopy.
azcopy jobs Subcomandos relacionados con la administración de trabajos.
azcopy jobs clean Elimina todos los archivos de registro y de plan de todos los trabajos.
azcopy jobs list Muestra información sobre todos los trabajos.
azcopy jobs remove Quita todos los archivos asociados al identificador de trabajo especificado.
azcopy jobs resume Reanuda el trabajo existente con el identificador de trabajo especificado.
azcopy jobs show Muestra información detallada del identificador de trabajo especificado.
azcopy load Subcomandos relacionados con la transferencia de datos en formatos específicos.
azcopy load clfs Transfiere datos locales a un contenedor y los almacena en el formato Avere Cloud FileSystem (CLFS) de Microsoft.
azcopy list Enumera las entidades de un recurso determinado.
azcopy login Inicia sesión en Azure Active Directory para acceder a recursos de Azure Storage.
azcopy logout Cierra la sesión del usuario y finaliza el acceso a los recursos de Azure Storage.
azcopy make Crea un contenedor o un recurso compartido de archivos.
azcopy remove Elimine blobs o archivos de una cuenta de almacenamiento de Azure.
azcopy sync Replica la ubicación de origen en la ubicación de destino.

Nota

AzCopy no tiene un comando para cambiar el nombre de los archivos.

Uso en un script

Con el tiempo, el vínculo de descarga de AzCopy apuntará a nuevas versiones de AzCopy. Si el script descarga AzCopy, puede que deje de funcionar si una versión más reciente de AzCopy modifica las características de las que depende.

Para evitar estos problemas, obtenga un vínculo estático (sin cambios) a la versión actual de AzCopy. De este modo, el script descarga exactamente la misma versión de AzCopy cada vez que se ejecuta.

Para obtener el vínculo, ejecute este comando:

Sistema operativo Get-Help
Linux curl -s -D- https://aka.ms/downloadazcopy-v10-linux | grep ^Location
Windows (curl https://aka.ms/downloadazcopy-v10-windows -MaximumRedirection 0 -ErrorAction silentlycontinue).headers.location

Nota

Para Linux, --strip-components=1 en el comando tar elimina la carpeta de nivel superior que contiene el nombre de la versión y, en su lugar, extrae el archivo binario directamente en la carpeta actual. Esto permite que el script se actualice con una nueva versión de azcopy al actualizar únicamente la dirección URL de wget.

La dirección URL aparece en la salida de este comando. A continuación, el script puede descargar AzCopy mediante esa dirección URL.

Sistema operativo Get-Help
Linux wget -O azcopy_v10.tar.gz https://aka.ms/downloadazcopy-v10-linux && tar -xf azcopy_v10.tar.gz --strip-components=1
Windows Invoke-WebRequest https://azcopyvnext.azureedge.net/release20190517/azcopy_windows_amd64_10.1.2.zip -OutFile azcopyv10.zip <<Unzip here>>

Escape de caracteres especiales en tokens de SAS

En los archivos por lotes con la extensión .cmd, tendrá que usar una secuencia de escape en los caracteres % que aparezcan en los tokens de SAS. Para ello, agregue un carácter % adicional junto a los caracteres % existentes en la cadena de token de SAS.

Ejecutar scripts mediante Jenkins

Si tiene previsto usar Jenkins para ejecutar scripts, asegúrese de colocar el siguiente comando al principio del script.

/usr/bin/keyctl new_session

Uso en el Explorador de Azure Storage

El Explorador de Storage usa AzCopy para realizar todas sus operaciones de transferencia de datos. Puede usar el Explorador de Storage si desea aprovechar las ventajas de rendimiento de AzCopy, pero prefiere usar una interfaz gráfica de usuario, en lugar de la línea de comandos, para interactuar con los archivos.

El Explorador de Azure Storage utiliza la clave de la cuenta para realizar operaciones, por lo que después de iniciar sesión en el Explorador de Azure Storage, no tendrá que proporcionar credenciales de autorización adicionales.

Configuración, optimización y corrección

Consulte los siguientes recursos:

Uso de una versión anterior

Si necesita usar la versión anterior de AzCopy, consulte alguno de los vínculos siguientes:

Pasos siguientes

Si tiene alguna pregunta, problemas o comentarios generales, envíelos en la página GitHub.