Saltar al contenido principal

Sincronización AWS S3: La Guía Completa de la Sincronización de Archivos

Aprende a sincronizar archivos locales con Amazon S3 utilizando la CLI de AWS. Este tutorial práctico te guía a través de la instalación, las operaciones básicas, las opciones avanzadas y las estrategias de copia de seguridad para dominar la sincronización de archivos entre tu entorno local y la nube de AWS.
Actualizado 17 mar 2025  · 15 min de lectura

Gestionar la sincronización de archivos entre los sistemas locales y el almacenamiento en la nube no debería darte quebraderos de cabeza.

AWS S3 ofrece una cómoda herramienta de línea de comandos que simplifica el proceso de mantener tus archivos sincronizados entre tu entorno local y el cubo del Servicio de Almacenamiento Simple (S3) de Amazon. Esta herramienta es especialmente valiosa para desarrolladores, administradores de sistemas y cualquiera que necesite mantener versiones coherentes de archivos en varias ubicaciones. Con sólo un par de comandos, puedes transferir archivos de forma eficaz, crear copias de seguridad e implantar soluciones de recuperación ante desastres.

La interfaz de línea de comandos (CLI) de AWS hace que estas operaciones sean accesibles a una amplia gama de usuarios. Claro que no es tan cómodo como Google Drive o OneDrive, pero tiene un par de trucos bajo la manga.

En este tutorial, cubriré todo lo que necesitas saber sobre la sincronización de AWS S3, desde la configuración básica hasta los patrones de uso avanzados.

>¿Qué es exactamente S3? Aprende los fundamentos con nuestra guía sobre S3.

¿Qué es AWS S3 Sync?

AWS S3 sync es una potente herramienta de línea de comandos que viene incluida en el conjunto de herramientas AWS CLI. Está diseñado para sincronizar archivos entre tu sistema de archivos local y un bucket S3 en un abrir y cerrar de ojos.

Piensa en S3 sync como rsync para la nube. El comando analiza las ubicaciones de origen y destino, identifica las diferencias y transfiere sólo lo necesario para que coincidan. Este enfoque ahorra ancho de banda, tiempo y costes potenciales en comparación con los métodos ingenuos de transferencia de archivos.

Bajo el capó, la sincronización de S3 hace llamadas a la API para comparar metadatos de objetos como el tamaño del archivo y las marcas de tiempo de modificación. Cuando detecta diferencias, se encarga del trabajo pesado de subir o bajar archivos en consecuencia.

La belleza de la sincronización S3 reside en su sencillez. Un comando básico es algo parecido a esto

aws s3 sync /local/directory s3://my-bucket/path

Claro que tendrás que configurar la CLI para utilizar los comandos de aws, pero ya entiendes lo esencial: es muy fácil de usar.

Resumiendo, la sincronización de S3 enmascara las complejas operaciones que tienen lugar entre bastidores y te ofrece una forma sencilla de mantener estados de archivo coherentes en todos los entornos. No importa si estás haciendo copias de seguridad de datos críticos, desplegando activos web o gestionando grandes conjuntos de datos: la sincronización S3 hace todo el trabajo pesado por ti.

Configurar la CLI de AWS y AWS S3

Antes de que puedas empezar a sincronizar archivos con S3,tendrás que instalar y configurar correctamente la CLI de AWS. Esto puede parecer intimidante si eres nuevo en AWS, pero sólo te llevará un par de minutos.

Configurar la CLI implica dos pasos principales: instalar la herramienta y configurarla. A continuación repasaré ambos pasos.

Instalar la CLI de AWS

La instalación de la CLI de AWS varía ligeramente en función de tu sistema operativo.

Para sistemas Windows:

Para sistemas Linux:

Ejecuta los tres comandos siguientes a través del Terminal:

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

Para sistemas macOS:

Suponiendo que tengas Homebrew instalado, ejecuta esta única línea desde el Terminal:

brew install awscli

Si no tienes Homebrew, utiliza estos dos comandos:

curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /

Puedes ejecutar el comando aws --version en todos los sistemas operativos para verificar que se ha instalado la CLI de AWS. Esto es lo que debes ver:

Versión de la CLI de AWS

Imagen 1 - Versión CLI de AWS

Configurar la CLI de AWS

Ahora que tienes la CLI instalada, tienes que configurarla con tus credenciales de AWS.

Suponiendo que ya tengas una cuenta de AWS, inicia sesión y ve al servicio IAM. Una vez allí, crea un nuevo usuario con acceso programático. Debes asignar al usuario el permiso adecuado, que como mínimo es acceso S3:

Usuario IAM de AWS

Imagen 2 - Usuario IAM de AWS

Una vez hecho esto, ve a "Credenciales de seguridad" para crear una nueva clave de acceso. Después de crearla, tendrás tanto elID de la clave de acceso como la clave de acceso secreta. Anótalos en algún lugar seguro, porque no podrás acceder a ellos en el futuro:

Credenciales de usuario IAM de AWS

Imagen 3 - Credenciales de usuario de AWS IAM

De nuevo en el Terminal, ejecuta el comando aws configure. Te pedirá que introduzcas tu ID de clave de acceso, la clave de acceso secreta, la región (eu-central-1 en mi caso) y el formato de salida preferido (json):

Configuración de la CLI de AWS

Imagen 4 - Configuración de la CLI de AWS

Para verificar que te has conectado correctamente a tu cuenta de AWS desde la CLI, ejecuta el siguiente comando:

aws sts get-caller-identity

Este es el resultado que deberías ver:

Comando de conexión de prueba de la CLI de AWS

Imagen 5 - Comando de conexión de prueba de la CLI de AWS

Y eso es todo: ¡sólo un paso más antes de que puedas empezar a utilizar el comando de sincronización S3!

Configurar un bucket AWS S3

El último paso es crear un bucket S3 que almacenará tus archivos sincronizados. Puedes hacerlo desde la CLI o desde la consola de administración de AWS. Optaré por lo segundo, sólo para mezclar las cosas.

Para empezar, ve a la página del servicio S3 en la Consola de Administración y haz clic en el botón "Crear cubo". Una vez allí, elige un nombre de cubo único (único globalmente en todo AWS) y luego desplázate hasta la parte inferior y pulsa el botón "Crear":

Creación de cubos AWS

Imagen 6 - Creación del cubo de AWS

El cubo ya está creado, y lo verás inmediatamente en la consola de gestión. También puedes verificar que se creó a través de la CLI:

aws s3 ls

Todos los buckets S3 disponibles

Imagen 7 - Todos los buckets S3 disponibles

Ten en cuenta que los buckets de S3 son privados por defecto. Si piensas utilizar el cubo para alojar archivos públicos (como activos de sitios web), tendrás que ajustar las políticas y permisos del cubo en consecuencia.

¡Ahora ya está todo configurado y listo para comenzar a sincronizar archivos entre tu máquina local y AWS S3!

Comando básico de sincronización de AWS S3

Ahora que tienes la CLI de AWS instalada, configurada y un bucket de S3 listo, ¡es hora de empezar a sincronizar! La sintaxis básica del comando de sincronización de AWS S3 es bastante sencilla. Te mostraré cómo funciona.

El comando de sincronización S3 sigue este sencillo patrón:

aws s3 sync <source> <destination> [options]

Tanto el origen como el destino pueden ser una ruta de directorio local o una URI de S3 (que empieza por s3://). Dependiendo de cómo quieras sincronizar, los organizarás de forma diferente.

Sincronizar archivos desde local a un bucket S3

Hace poco estuve jugando con la investigación profunda de Ollama. Digamos que esa es la carpeta que quiero sincronizar con S3. El directorio principal se encuentra en la carpeta Documents. Esto es lo que parece:

Contenido de la carpeta local

Contenido de la carpeta local

Este es el comando que necesito ejecutar para sincronizar la carpeta local code-files con la carpeta backup del bucket S3:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup

La carpeta backup del bucket S3 se creará automáticamente si no existe.

Esto es lo que verás impreso en la consola:

Proceso de sincronización S3

Imagen 9 - Proceso de sincronización S3

Tras un par de segundos, el contenido de la carpeta local code-files estará disponible en el bucket S3:

Contenido del cubo S3

Imagen 10 - Contenido del cubo S3

Lo bueno de la sincronización con S3 es que sólo sube archivos que no existen en el destino o que han sido modificados localmente. Si vuelves a ejecutar el mismo comando sin cambiar nada, verás... ¡nada! Eso se debe a que la CLI de AWS detectó que todos los archivos ya están sincronizados y actualizados.

Ahora haré dos pequeños cambios: crearé un nuevo archivo (new_file.txt) y actualizaré uno existente (requirements.txt). Cuando vuelvas a ejecutar el comando de sincronización, sólo se subirán los archivos nuevos o modificados:

Proceso de sincronización S3 (2)

Imagen 11 - Proceso de sincronización S3 (2)

Y eso es todo lo que necesitas saber para sincronizar carpetas locales con S3. Pero, ¿y si quieres ir al revés?

Sincronizar archivos desde el bucket de S3 a un directorio local

Si quieres descargar archivos de tu cubo de S3 a tu máquina local, sólo tienes que cambiar el origen y el destino:

aws s3 sync s3://testbucket-dradecic/backup /Users/dradecic/Documents/code-files-from-s3 

Este comando descargará todos los archivos de la carpeta backup de tu bucket S3 a una carpeta local llamada code-files-from-s3 . De nuevo, si la carpeta local no existe, la CLI la creará por ti:

Sincronización de S3 a local

Imagen 12 - Sincronización de S3 a local

Vale la pena señalar que la sincronización en S3 no es bidireccional. Siempre va del origen al destino, haciendo que el destino coincida con el origen. Si eliminas un archivo localmente y luego lo sincronizas con S3, seguirá existiendo en S3. Del mismo modo, si eliminas un archivo en S3 y sincronizas de S3 a local, el archivo local permanecerá intacto.

Si quieres que el destino coincida exactamente con el origen (incluidas las eliminaciones), tendrás que utilizar la bandera --delete, de la que hablaré en la sección de opciones avanzadas.

Opciones avanzadas de sincronización con AWS S3

El comando básico de sincronización de S3 explorado anteriormente es potente por sí mismo, pero AWS lo ha dotado de opciones adicionales que te dan más control sobre el proceso de sincronización. 

En esta sección, te mostraré algunas de las banderas más útiles que puedes añadir al comando básico.

Sincronizar sólo archivos nuevos o modificados

Por defecto, la sincronización S3 utiliza un mecanismo básico de comparación que comprueba el tamaño del archivo y la hora de modificación para determinar si es necesario sincronizar un archivo. Sin embargo, es posible que este enfoque no siempre capte todos los cambios, sobre todo cuando se trata de archivos que se han modificado pero siguen teniendo el mismo tamaño.

Para una sincronización más precisa, puedes utilizar la bandera --exact-timestamps:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exact-timestamps

Esto obliga a la sincronización S3 a comparar las marcas de tiempo con una precisión de hasta milisegundos. Ten en cuenta que utilizar esta bandera puede ralentizar ligeramente el proceso de sincronización, ya que requiere comparaciones más detalladas.

Excluir o incluir archivos específicos

A veces, no quieres sincronizar todos los archivos de un directorio. Quizá quieras excluir archivos temporales, registros o determinados tipos de archivos (como .DS_Store en mi caso). Ahí es donde resultan útiles las banderas --exclude y --include.

Pero para ilustrar un punto, digamos que quiero sincronizar mi directorio de código pero excluyendo todos los archivos Python:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exclude "*.py"

Ahora, se sincronizan muchos menos archivos con S3:

Sincronización S3 con archivos Python excluidos

Imagen 13 - Sincronización S3 con archivos Python excluidos

También puedes combinar --exclude y --include para crear patrones más complejos. Por ejemplo, excluye todo excepto los archivos Python:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --exclude "*" --include "*.py"

Los patrones se evalúan en el orden especificado, ¡así que el orden importa! Esto es lo que verás cuando utilices estas banderas:

Banderas de exclusión e inclusión

Imagen 14 - Banderas de exclusión e inclusión

Ahora sólo se sincronizan los archivos Python, y faltan archivos de configuración importantes.

Borrar archivos del destino

Por defecto, la sincronización S3 sólo añade o actualiza archivos en el destino: nunca los borra. Esto significa que si eliminas un archivo del origen, seguirá estando en el destino después de la sincronización.

Para que el destino refleje exactamente el origen, incluidas las eliminaciones, utiliza la bandera --delete:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --delete

Si ejecutas esto la primera vez, todos los archivos locales se sincronizarán con S3:

Borrar bandera

Imagen 15 - Borrar bandera

Esto es especialmente útil para mantener réplicas exactas de directorios. Pero ten cuidado: esta bandera puede provocar la pérdida de datos si se utiliza incorrectamente.

Supongamos que borro config.py de mi carpeta local y ejecuto el comando de sincronización con la bandera --delete:

Borrar bandera

Imagen 16 - Borrar bandera (2)

Como puedes ver, el comando no sólo sincroniza los archivos nuevos y modificados, sino que también elimina del cubo de S3 los archivos que ya no existen en el directorio local.

Configurar el simulacro para una sincronización segura

Las operaciones de sincronización de S3 más peligrosas son las que implican la bandera --delete. Para evitar borrar accidentalmente archivos importantes, puedes utilizar la bandera --dryrun para simular la operación sin realizar realmente ningún cambio:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --delete --dryrun

Para demostrarlo, he borrado los archivos requirements.txt y settings.toml de una carpeta local y luego he ejecutado el comando:

Funcionamiento en seco

Imagen 17 - Funcionamiento en seco

Esto te mostrará exactamente lo que ocurriría si ejecutaras el comando de verdad, incluyendo qué archivos se cargarían, descargarían o borrarían.

Siempre recomiendo utilizar --dryrun antes de ejecutar cualquier comando de sincronización de S3 con la bandera --delete, especialmente cuando se trabaja con datos importantes.

Hay muchas otras opciones disponibles para el comando de sincronización de S3, como --acl para establecer permisos, --storage-class para elegir el nivel de almacenamiento de S3 y --recursive para recorrer subdirectorios. Consulta la documentación oficial de la CLI de AWS para obtener una lista completa de opciones.

Ahora que ya conoces las opciones básicas y avanzadas de sincronización con S3, veamos cómo utilizar estos comandos en situaciones prácticas, como copias de seguridad y restauraciones.

Uso de AWS S3 Sync para backup y restauración

Uno de los casos de uso más populares para la sincronización en AWS S3 es hacer copias de seguridad de archivos importantes y restaurarlos cuando sea necesario. Exploremos cómo puedes aplicar una estrategia sencilla de copia de seguridad y restauración utilizando el comando sincronizar.

Crear copias de seguridad en S3

Crear copias de seguridad con S3 sync es muy sencillo: sólo tienes que ejecutar el comando sync desde tu directorio local a un bucket de S3. Sin embargo, hay algunas prácticas recomendadas que debes seguir para realizar copias de seguridad eficaces.

En primer lugar, es una buena idea organizar tus copias de seguridad por fecha o versión. Aquí tienes un enfoque sencillo utilizando una marca de tiempo en la ruta S3:

# Create a timestamp variable
TIMESTAMP=$(date +%Y-%m-%d-%H-%M-%S)

# Run the backup
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backups/$TIMESTAMP

Esto crea una nueva carpeta para cada copia de seguridad con una marca de tiempo como 2025-03-10-18-56-42. Esto es lo que verás en S3:

Copias de seguridad con marca de tiempo

Imagen 18 - Copias de seguridad con marca de tiempo

Para los datos críticos, puede que quieras mantener varias versiones de copia de seguridad. Esto es fácil de hacer simplemente ejecutando regularmente la copia de seguridad basada en marcas de tiempo.

También puedes utilizar la opción --storage-class para especificar una clase de almacenamiento más económica clase de almacenamiento más rentable para tus copias de seguridad:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backups/$TIMESTAMP --storage-class STANDARD_IA

Copia de seguridad del contenido con una clase de almacenamiento personalizada

Imagen 19 - Copia de seguridad del contenido con una clase de almacenamiento personalizada

Esto utiliza la clase de almacenamiento S3 Acceso Poco Frecuente, que cuesta menos pero tiene una ligera tasa de recuperación. Para archivar a largo plazo, podrías incluso utilizar la clase de almacenamiento Glacier:

aws s3 sync /Users/dradecic/Documents/important-data s3://testbucket-dradecic/backups/$TIMESTAMP --storage-class GLACIER

Ten en cuenta que los archivos almacenados en Glacier tardan horas en recuperarse, por lo que no son adecuados para datos que puedas necesitar rápidamente.

Restaurar archivos desde S3

Restaurar a partir de una copia de seguridad es igual de fácil: basta con invierte el origen y el destino en tu comando de sincronización:

# Restore from the most recent backup (assuming you know the timestamp)
aws s3 sync s3://testbucket-dradecic/backups/2025-03-10-18-56-42 /Users/dradecic/Documents/restored-data

Esto descargará todos los archivos de esa copia de seguridad específica a tu directorio local restored-data:

Restaurar archivos desde S3

Imagen 20 - Restaurar archivos desde S3

Si no recuerdas la fecha exacta, puedes listar primero todas tus copias de seguridad:

aws s3 ls s3://testbucket-dradecic/backups/

Lo que te mostrará algo como

Lista de copias de seguridad

Imagen 21 - Lista de copias de seguridad

También puedes restaurar archivos o directorios concretos a partir de una copia de seguridad utilizando los indicadores de excluir/incluir de los que hemos hablado antes:

# Restore only the config files
aws s3 sync s3://testbucket-dradecic/backups/2025-03-10-18-56-42 /Users/dradecic/Documents/restored-configs --exclude "*" --include "*.config" --include "*.toml" --include "*.yaml"

Para sistemas de misión crítica, recomiendo automatizar tus copias de seguridad con tareas programadas (como cron jobs en Linux/macOS o Programador de Tareas en Windows). Así te aseguras de que haces copias de seguridad de tus datos constantemente, sin tener que acordarte de hacerlo manualmente.

Solución de problemas de AWS S3 Sync

La sincronización con AWS S3 es una herramienta fiable, pero ocasionalmente puedes encontrar problemas. Aun así, la mayoría de los errores que verás son de origen humano.

Errores comunes de sincronización

Veamos algunos problemas comunes y sus soluciones.

  • Error de acceso denegado suele significar que tu usuario de IAM no tiene los permisos necesarios para acceder al bucket de S3 o realizar operaciones específicas. Para solucionarlo, prueba una de las siguientes opciones:
    • Comprueba que tu usuario IAM tiene los permisos S3 adecuados (s3:ListBucket, s3:GetObject, s3:PutObject).
    • Comprueba que la política de cubos no deniega explícitamente el acceso a tu usuario.
    • Asegúrate de que el propio cubo no bloquea el acceso público si necesitas operaciones públicas.
  • No such file or directory error suele aparecer cuando la ruta de origen que especificaste en el comando sync no existe. La solución es sencilla: comprueba dos veces tus rutas y asegúrate de que existen. Presta especial atención a las erratas en los nombres de los cubos o directorios locales.
  • Límite de tamaño de archivo Pueden producirse errores cuando quieres sincronizar archivos grandes. Por defecto, la sincronización S3 puede manejar archivos de hasta 5 GB de tamaño. Para archivos más grandes, verás tiempos de espera o transferencias incompletas.
    • Para archivos de más de 5 GB, debes utilizar la bandera --only-show-errors combinada con la bandera --size-only. Esta combinación ayuda en las transferencias de archivos grandes minimizando la salida y comparando sólo el tamaño de los archivos:
aws s3 sync /Users/dradecic/large-files s3://testbucket-dradecic/large-files --only-show-errors --size-only

Optimización del rendimiento de la sincronización

Si tu sincronización con S3 es más lenta de lo esperado, hay algunos ajustes que puedes hacer para acelerar las cosas.

  • Utiliza transferencias paralelas. Por defecto, la sincronización S3 utiliza un número limitado de operaciones paralelas. Puedes aumentarlo con el parámetro --max-concurrent-requests:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --max-concurrent-requests 20
  • Ajusta el tamaño de los trozos. Para archivos grandes, puedes optimizar la velocidad de transferencia ajustando el tamaño de los trozos. Esto descompone los archivos grandes en trozos de 16 MB en lugar de los 8 MB por defecto, lo que puede ser más rápido para las buenas conexiones de red:
aws s3 sync /Users/dradecic/large-files s3://testbucket-dradecic/backup --cli-read-timeout 120 --multipart-threshold 64MB --multipart-chunksize 16MB
  • Utiliza --no-progress para los guiones. Si estás ejecutando la sincronización de S3 en un script automatizado, utiliza la bandera --no-progress para reducir la salida y mejorar el rendimiento:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --no-progress
  • Utilizar puntos finales locales. Si tus recursos de AWS están en la misma región, especificar el punto final regional puede reducir la latencia:
aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --endpoint-url https://s3.eu-central-1.amazonaws.com

Estas optimizaciones pueden mejorar significativamente el rendimiento de la sincronización, especialmente para grandes transferencias de datos o cuando se ejecuta en máquinas menos potentes.

Si sigues teniendo problemas después de probar estas soluciones, la CLI de AWS tiene una opción de depuración integrada. Sólo tienes que añadir --debug a tu comando para ver información detallada sobre lo que ocurre durante el proceso de sincronización:

aws s3 sync /Users/dradecic/Documents/code-files s3://testbucket-dradecic/backup --debug

Espera ver muchos mensajes de registro detallados, similares a éstos:

Ejecutar la sincronización en modo depuración

Imagen 22 - Ejecutar la sincronización en modo depuración

Y eso es prácticamente todo cuando se trata de solucionar problemas de sincronización de AWS S3. Claro que hay otros errores que pueden ocurrir, pero el 99% de las veces, encontrarás la solución en esta sección.

Resumiendo AWS S3 Sync

En resumen, AWS S3 sync es una de esas raras herramientas que son a la vez sencillas de usar e increíblemente potentes. Has aprendido de todo, desde comandos básicos hasta opciones avanzadas, estrategias de copia de seguridad y consejos para solucionar problemas.

Para desarrolladores, administradores de sistemas o cualquiera que trabaje con AWS, el comando de sincronización de S3 es una herramienta esencial: ahorra tiempo, reduce el uso de ancho de banda y garantiza que tus archivos estén donde los necesites, cuando los necesites.

Tanto si estás realizando copias de seguridad de datos críticos, desplegando activos web o simplemente manteniendo sincronizados diferentes entornos, la sincronización de AWS S3 hace que el proceso sea sencillo y fiable.

La mejor manera de sentirse cómodo con la sincronización S3 es empezar a utilizarla. Prueba a configurar una operación de sincronización sencilla con tus propios archivos, y luego explora gradualmente las opciones avanzadas para adaptarlas a tus necesidades específicas.

Recuerda utilizar siempre --dryrun en primer lugar cuando trabajes con datos importantes, especialmente cuando utilices la bandera --delete. Es mejor tomarse un minuto más para verificar lo que va a ocurrir que borrar accidentalmente archivos importantes.

Para saber más sobreAWS, consulta estos cursos de DataCamp:

Incluso puedes utilizar DataCamp para preparar los exámenes de certificación de AWS: AWS Cloud Practitioner (CLF-C02).

Preguntas frecuentes

¿Qué es la sincronización de AWS S3 y cómo funciona?

AWS S3 sync es una herramienta de línea de comandos que viene con la CLI de AWS, diseñada para sincronizar archivos entre sistemas locales y buckets de Amazon S3. Funciona comparando los archivos en las ubicaciones de origen y destino, identificando las diferencias y transfiriendo sólo lo necesario para que coincidan, ahorrando ancho de banda y tiempo en comparación con las cargas o descargas completas.

¿Puedo sincronizar archivos tanto hacia como desde un bucket S3?

Sí, la sincronización de AWS S3 funciona bidireccionalmente. Puedes sincronizar archivos locales con un bucket de S3 utilizando aws s3 sync /local/directory s3://my-bucket/path o sincronizar archivos desde un bucket de S3 a tu sistema local utilizando aws s3 sync s3://my-bucket/path /local/directory. El comando siempre hace que el destino coincida con el origen.

¿La sincronización de AWS S3 elimina automáticamente los archivos?

Por defecto, la sincronización S3 no elimina archivos en el destino que no existan en el origen. Sin embargo, puedes añadir la bandera --delete a tu comando de sincronización para que el destino refleje exactamente el origen, incluidas las eliminaciones. Utiliza esta función con precaución y considera probar primero con la bandera --dryrun.

¿Cómo puedo optimizar la sincronización de AWS S3 para archivos grandes?

Para archivos grandes, puedes optimizar el rendimiento de la sincronización en S3 utilizando varios parámetros, como --max-concurrent-requests para aumentar las transferencias paralelas, --multipart-chunksize para ajustar el tamaño de los trozos y --cli-read-timeout para evitar los tiempos de espera. Para archivos de más de 5 GB, combina las banderas --only-show-errors y --size-only para mejorar el rendimiento.

¿Puedo automatizar las copias de seguridad utilizando AWS S3 sync?

Sí, la sincronización de AWS S3 es perfecta para crear copias de seguridad automatizadas. Puedes configurar tareas programadas (cron jobs en Linux/macOS o Programador de tareas en Windows) para ejecutar comandos de sincronización regularmente con marcas de tiempo en tu ruta de destino. Para un almacenamiento rentable a largo plazo, utiliza el parámetro --storage-class para especificar clases de almacenamiento como STANDARD_IA o GLACIER.


Dario Radečić's photo
Author
Dario Radečić
LinkedIn
Científico de Datos Senior con base en Croacia. Top Tech Writer con más de 700 artículos publicados, generando más de 10M de visitas. Autor del libro Automatización del aprendizaje automático con TPOT.
Temas

Aprende más sobre AWS con estos cursos

Curso

AWS Concepts

2 hr
22.8K
Discover the world of Amazon Web Services (AWS) and understand why it's at the forefront of cloud computing.
Ver detallesRight Arrow
Comienza el curso
Ver másRight Arrow
Relacionado

blog

AWS Certified Cloud Practitioner: guía completa

Comprende la certificación y el examen AWS Certified Cloud Practitioner con nuestra guía completa. Descubre consejos, recursos y estrategias para garantizar tu éxito.
Srujana Maddula's photo

Srujana Maddula

13 min

blog

Los 13 mejores proyectos de AWS: De principiante a profesional

Explora 13 proyectos prácticos de AWS para todos los niveles. Mejora tus conocimientos sobre la nube con aplicaciones prácticas del mundo real y la orientación de expertos.
Joleen Bothma's photo

Joleen Bothma

12 min

Tutorial

Primeros pasos con AWS Athena: Guía práctica para principiantes

Esta guía práctica te ayudará a empezar a utilizar AWS Athena. Explora su arquitectura y características y aprende a consultar datos en Amazon S3 utilizando SQL.
Tim Lu's photo

Tim Lu

15 min

Tutorial

Cuentas de almacenamiento Azure: Tutorial paso a paso para principiantes

Esta guía te enseña a configurar y gestionar las Cuentas de Almacenamiento de Azure, paso a paso. También explora opciones avanzadas de configuración para un rendimiento óptimo y una optimización de costes.
Anneleen Rummens's photo

Anneleen Rummens

11 min

Tutorial

Sinapsis Azure: Guía paso a paso para principiantes

Una guía fácil de seguir para que los principiantes aprendan Azure Synapse, que abarca desde la configuración de tu espacio de trabajo hasta la integración de datos y la ejecución de análisis.
Moez Ali's photo

Moez Ali

13 min

Tutorial

Tutorial de GIT Push y Pull

Aprende a realizar solicitudes de Git PUSH y PULL con GitHub Desktop y la línea de comandos.

Olivia Smith

13 min

Ver másVer más