Bash + rclone · OneDrive ↔ Google Drive · Guía operativa de código abierto
Transferencia en la nube de solo copia con Bash y rclone
rclone ya gestiona la paginación en la nube, los reintentos, las transferencias reanudables y los hashes de los proveedores. La tarea de ingeniería consiste en integrar esas primitivas en un procedimiento operativo que se detenga de forma segura ante fallos y tenga en cuenta la capacidad.
Actualizado ; 20 min de lectura.
Respuesta breve
FileArk es la opción gestionada más sencilla para migraciones grandes o desatendidas: ejecuta la transferencia en línea, se ha probado con cargas de trabajo de varios terabytes y comprueba cada resultado antes de finalizar. Para los operadores que quieran controlar la ruta de los datos desde el shell, este script contenedor en Bash con licencia MIT copia lotes limitados mediante almacenamiento provisional local, verifica ambas etapas byte a byte y nunca elimina los archivos de origen.
Por qué utilizar un script contenedor para rclone en lugar de reconstruir el cliente de cada proveedor
rclone proporciona a un flujo de trabajo de shell una abstracción madura de los proveedores, configuración de OAuth, paginación, gestión de reintentos, transferencias reanudables, controles de concurrencia y comandos de inventario y verificación. De este modo, el script contenedor puede centrarse en los invariantes de la migración: comandos que solo copian, almacenamiento provisional limitado, reservas de capacidad, listas deterministas de archivos y progreso persistente.
Eso no automatiza el trabajo. El operador sigue siendo responsable de la configuración de los remotos, la seguridad de los tokens, la disponibilidad de la red, la supervisión del proceso, el disco local, los registros, los límites de los proveedores, la revisión de los objetos fallidos y la aceptación del destino. FileArk está pensado para quienes prefieren que este procedimiento se ejecute como un flujo de trabajo gestionado en línea, en lugar de hacerlo en su propio equipo o servidor.
El script no invoca en ningún caso rclone move, sync, delete, purge ni rmdirs. Utiliza lsf y about para la detección, copy en cada etapa y check --download para la verificación completa de los bytes. Lo único que elimina es un archivo verificado del directorio de almacenamiento provisional local.
Descarga la edición en Bash y la licencia MIT
Descarga el programa de transferencia con Bash y rclone
Un script contenedor que solo copia, con límites de lote, reservas locales y en el destino, verificación completa de los bytes, puntos de control, controles de reintentos y una demostración sin conexión a la red.fileark-cloud-transfer.sh · Bash 4+ · rclone · jq · Licencia MIT
Descargar la licencia MIT
Aviso de licencia aplicable a los dos scripts de transferencia manual de FileArk.LICENSE-fileark-cloud-transfer.txt · MIT · texto sin formato
Ejecutar la demostración para operadores sin conexión a la red

Es seguro ejecutar la demostración antes de instalar rclone o jq porque el análisis de argumentos finaliza antes de comprobar las dependencias. La salida enumera las operaciones destructivas prohibidas, muestra ambas reservas de capacidad y termina con el número de eliminaciones en el origen.
chmod +x fileark-cloud-transfer.sh
bash -n fileark-cloud-transfer.sh
./fileark-cloud-transfer.sh --demo
./fileark-cloud-transfer.sh --helpInstalar y configurar las dependencias para el operador
Instale una versión actual de rclone siguiendo sus instrucciones oficiales e instale jq mediante el gestor de paquetes de su sistema operativo. Se requiere Bash 4 o posterior porque el script contenedor usa un control de errores estricto y expresiones condicionales modernas.
Ejecuta rclone config y crea dos remotos con nombres independientes, por ejemplo, onedrive: y gdrive:. Introduce tu propio ID y secreto de cliente del proveedor cuando las políticas o los límites de frecuencia requieran aplicaciones OAuth específicas. rclone guarda los tokens de OAuth en su archivo de configuración; protege ese archivo con permisos restrictivos y nunca lo distribuyas junto con el script.
Confirma cada remoto con un comando de consulta de cuota y un listado de solo lectura antes de ejecutar el script contenedor. Utiliza rutas como onedrive:Department/Archive cuando solo se vaya a incluir un subárbol.
rclone version
rclone config
rclone lsd onedrive:
rclone lsd gdrive:
rclone about onedrive: --json | jq
rclone about gdrive: --json | jqInmoviliza un inventario determinista antes de transferir los bytes
El script contenedor utiliza rclone lsf de forma recursiva con un separador de tabulación explícito y el formato sp, lo que genera el tamaño seguido de la ruta. Valida que cada tamaño sea numérico y cada ruta sea relativa; después, excluye las rutas que ya figuran en el punto de control verificado.
La edición en Bash rechaza los nombres de archivo que contienen tabulaciones, retornos de carro o saltos de línea porque las listas --files-from-raw delimitadas por saltos de línea no pueden representarlos sin ambigüedad. Utiliza la edición en Python o un formato de inventario específico si existen nombres de ese tipo.
Un punto de control basado en rutas es sencillo y fácil de inspeccionar de forma intencionada. Presupone que las rutas de origen permanecen estables durante la ejecución. Impide las escrituras en el origen si es posible; si se esperan cambios simultáneos, vuelve a generar y concilia el inventario.
rclone lsf "$SOURCE" \
--recursive \
--files-only \
--format "sp" \
--separator