transferir servidor otro migrar informacion copiar como archivos file amazon-s3 amazon-web-services transfer

file - servidor - ¿Mover archivos directamente de una cuenta S3 a otra?



copiar archivos de un servidor a otro windows (8)

Una pregunta bastante básica pero no he podido encontrar una respuesta. Utilizando Transit puedo "mover" archivos de un depósito S3 en una cuenta AWS a otro depósito S3 en otra cuenta AWS, pero lo que realmente hace es descargar los archivos desde el primero y luego subirlos al segundo.

¿Hay alguna forma de mover archivos directamente desde una cuenta S3 a otra sin descargarlos en el medio?


En Mac OS XI usé la aplicación Transmitir de Panic. Abrí una ventana para cada cuenta S3 (usando las claves y los secretos de la API). Podría arrastrar desde un cubo en una ventana a otro cubo en la otra ventana. No es necesario descargar archivos localmente primero .

Andrew está en lo cierto, Transmit descarga los archivos localmente y luego carga los archivos.


Para archivos recién creados (NO objetos existentes), puede aprovechar la nueva funcionalidad de AWS. Es una replicación entre regiones (en "Versiones" para el depósito S3). Puede crear una política que le permita replicar objetos nuevos en un depósito en una cuenta diferente.

Para los objetos existentes, aún necesitará copiar sus objetos utilizando otro método, a menos que AWS presente una funcionalidad nativa para esto en el futuro.


Puedes usar Cyberduck (fuente abierta)


Sí, hay una manera. Y es bastante simple, aunque es difícil de encontrar. 8)

Por ejemplo, supongamos que su nombre de usuario de la primera cuenta es [email protected] y el segundo es [email protected].

Abra AWS Management Console como acc1. Acceda a las propiedades del depósito de Amazon S3 y, en la pestaña "Permisos", haga clic en "Agregar más permisos". A continuación, agregue los permisos de lista y vista para "usuarios autenticados".

A continuación, en AWS IAM (se puede acceder desde las pestañas de la consola) de acc2, cree un usuario con acceso completo al depósito S3 (para estar más seguro, puede configurar permisos exactos, pero prefiero crear un usuario temporal para la transferencia). y luego eliminarlo).

Luego puede usar s3cmd (usando las credenciales del usuario recién creado en acc2) para hacer algo como:

s3cmd cp s3://acc1_bucket/folder/ s3://acc2_bucket/folder --recursive

Toda la transferencia se hará por parte de Amazon.


Si solo está buscando una solución preparada hay algunas soluciones que pueden hacer esto. Bucket Explorer funciona en Mac y Windows y puede copiar entre cuentas como Cloudberry S3 Explorer y S3 Browser, pero solo son de Windows, por lo que puede que no funcionen para usted.

Sospecho que la consola de AWS también podría hacerlo con la configuración de permisos adecuada, pero no he probado esto.

También puede hacerlo utilizando la API de AWS , siempre que haya otorgado a la cuenta de AWS permisos de escritura en el depósito de destino.


Use el aws cli (utilicé ubuntu 14 ec2 instance) y simplemente ejecute el siguiente comando:

aws s3 sync s3://bucket1 s3://bucket2

Tendrá que especificar los detalles de la cuenta para uno, y tener acceso de escritura pública o acceso de lectura pública al otro.

Esto sincronizará los dos cubos. Puede usar el mismo comando más tarde para sincronizar rápidamente. La mejor parte es que no parece requerir ningún ancho de banda (por ejemplo, los archivos no pasan por la computadora local).


boto funciona bien Ver este hilo Al usar boto, copia los objetos directamente de un depósito a otro, en lugar de descargarlos a la máquina local y cargarlos en otro contenedor.


CrossFTP puede copiar archivos S3 directamente de un depósito a otro sin descargarlos. Es un cliente GUI S3 que funciona en Windows, Mac y Linux.