Migración masiva de datos a Shade mediante Rclone

Cómo migrar datos a Shade mediante Rclone

Manejo eficiente de migración y transferencias de datos

Esta es una guía para migrar grandes cantidades de datos hacia o desde tu unidad Shade usando rclone, una poderosa herramienta de código abierto que soporta muchas fuentes diferentes.

Descargando rclone

Por favor note: El backend de Shade aún no está disponible en la documentación oficial de rclone, ya que la solicitud de extracción está pendiente. Si deseas usar rclone con Shade, descarga el ejecutable específico para el sistema en el que estás ejecutando desde aquí:

https://app.shade.inc/publish/617fe363-8d01-4cd5-be1c-2ad094f4ffef

Una vez que el backend se fusione en la versión oficial de rclone, podrás descargar rclone desde la página oficial de descargas de rclone.

Acerca de rclone

rclone es un potente programa de línea de comandos para gestionar archivos en almacenamiento en la nube. A menudo se describe como "rsync para almacenamiento en la nube" y es compatible con más de 70 proveedores diferentes de almacenamiento en la nube.

Casos de uso comunes para rclone incluyen:

  • Sincronizar y hacer copias de seguridad de archivos entre tu sistema local y el almacenamiento en la nube

  • Migrar datos de un proveedor de nube a otro

  • Automatizar flujos de trabajo con sincronizaciones y copias de seguridad programadas

  • Gestionar transferencias de archivos grandes con capacidad de reanudar y control de ancho de banda

  • Operaciones por lotes para copiar, mover o eliminar archivos entre servicios en la nube

Con el backend de rclone de Shade, puedes aprovechar todas las potentes funciones de rclone para interactuar con tus unidades Shade directamente desde la línea de comandos.

Configuración

Aquí hay un ejemplo de cómo crear una configuración de Shade.

Primero, crea una cuenta gratuita y elige un plan.

Necesitarás iniciar sesión y obtener la Clave API y ID de la unidad para tu cuenta desde la sección de ajustes de tu cuenta y la unidad creada, respectivamente.

Ahora abre un símbolo del sistema o terminal y navega hasta donde descargaste ese archivo, y ejecuta

./rclone config (Si estás en un Mac necesitarás decirle a tu ordenador que este archivo puede ejecutarse, así que ejecuta

chmod +x rclone )

Luego sigue este proceso interactivo:

e) Editar remote existente
n) Nuevo remote
d) Eliminar remote
r) Renombrar remote
c) Copiar remote
s) Establecer contraseña de configuración
q) Salir de la configuración
e/n/d/r/c/s/q> n

Introduce el nombre para el nuevo remote.
name> Shade

Opción Storage.
Tipo de almacenamiento a configurar.
Elige un número de los siguientes, o escribe tu propio valor.
(Desplázate por la lista y encuentra la opción Shade, a fecha 11/5/25 es la 52)
[OTRAS OPCIONES]
xx / Shade FS
   \ (shade)
[OTRAS OPCIONES]
Storage> xx

Opción drive_id.
El ID de tu unidad, lo puedes ver en los ajustes de la unidad. Las configuraciones de rclone deben hacerse por unidad individual.
Introduce un valor.
drive_id> [TU_ID]

Opción api_key.
Una clave API para tu cuenta.
Introduce un valor.
api_key> [TU_CLAVE_API]

¿Editar configuración avanzada?
y) Sí
n) No (por defecto)
y/n> n

Configuración completada.
Opciones:
- type: shade
- drive_id: [TU_ID]
- api_key: [TU_CLAVE_API]
¿Mantener este remote "Shade"?
y) Sí, está bien (por defecto)
e) Editar este remote
d) Eliminar este remote
y/e/d> y

Flujo de trabajo de ejemplo: Copiar archivos a Shade

Una vez que hayas configurado tu remote Shade, puedes copiar fácilmente archivos desde tu sistema de archivos local a Shade. Aquí hay un flujo de trabajo común:

Copiar una carpeta local a Shade

Para copiar una carpeta desde tu sistema local a tu unidad Shade:

./rclone copy /ruta/a/carpeta/local Shade:/carpeta/destino

Por ejemplo, para copiar tu carpeta "Projects" a Shade:

./rclone copy ~/Projects Shade:/Projects

Este comando hará:

  • Copiar todos los archivos de tu carpeta Projects local a Shade

  • Conservar la estructura de carpetas

  • Omitir archivos que ya existen y no han cambiado

  • Mostrar el progreso durante la transferencia

Comandos adicionales útiles

Sincronizar una carpeta (hacer que el destino sea idéntico al origen, incluidas las eliminaciones):

./rclone sync ~/Projects Shade:/Projects

Comprobar lo que se copiaría sin copiar realmente:

./rclone copy ~/Projects Shade:/Projects --dry-run

Copiar con progreso y estadísticas:

./rclone copy ~/Projects Shade:/Projects --progress --stats 1s

Listar archivos en tu unidad Shade:

./rclone ls Shade:/

Opciones estándar

Aquí están las opciones estándar específicas para shade (Shade FS).

Nota: Para la mayoría de los usuarios, solo necesitas configurar el drive_id y api_key. Las opciones avanzadas a continuación son para casos de uso específicos y pueden dejarse con sus valores predeterminados.

--shade-drive-id

El ID de tu unidad, lo puedes ver en los ajustes de la unidad. Las configuraciones de rclone deben hacerse por unidad individual.

Propiedades:

  • Config: drive_id

  • Var de entorno: RCLONE_SHADE_DRIVE_ID

  • Tipo: cadena

  • Requerido: true

--shade-api-key

Una clave API para tu cuenta. Puedes encontrarla en Ajustes > Claves API

Propiedades:

  • Config: api_key

  • Var de entorno: RCLONE_SHADE_API_KEY

  • Tipo: cadena

  • Requerido: true

Opciones avanzadas

Aquí están las opciones avanzadas específicas para shade (Shade FS).

--shade-endpoint

Endpoint para el servicio.

Normalmente déjalo en blanco.

Propiedades:

  • Config: endpoint

  • Var de entorno: RCLONE_SHADE_ENDPOINT

  • Tipo: cadena

  • Requerido: false

--shade-chunk-size

Tamaño de fragmento a usar para la subida.

Cualquier archivo más grande que esto se subirá en fragmentos de este tamaño.

Ten en cuenta que esto se almacena en memoria por transferencia, por lo que aumentarlo incrementará el uso de memoria.

El mínimo es 5MB, el máximo es 5GB.

Propiedades:

  • Config: chunk_size

  • Var de entorno: RCLONE_SHADE_CHUNK_SIZE

  • Tipo: SizeSuffix

  • Predeterminado: 64Mi

--shade-encoding

La codificación para el backend.

Consulta la sección de codificación en la visión general para más información.

Propiedades:

  • Config: encoding

  • Var de entorno: RCLONE_SHADE_ENCODING

  • Tipo: Encoding

  • Predeterminado: Slash,BackSlash,Del,Ctl,InvalidUtf8,Dot

--shade-description

Descripción del remote.

Propiedades:

  • Config: description

  • Var de entorno: RCLONE_SHADE_DESCRIPTION

  • Tipo: cadena

  • Requerido: false

Rutas de la API utilizadas por la integración de Rclone

Las siguientes rutas son utilizadas por la integración de rclone para interactuar directamente con el sistema de archivos de Shade. Si quieres usar estas rutas directamente en tus propias aplicaciones, primero necesitarás obtener un token de usuario llamando a la ruta correspondiente de la sección 'Usuarios' en la sección 'Uso de la API' de nuestra documentación. Una vez que tengas el token de usuario, pásalo como token bearer en tus solicitudes en lugar de tu clave API.

Nota: El backend de rclone maneja la autenticación automáticamente usando tu clave API: solo necesitarás preocuparte por los tokens de usuario si estás construyendo integraciones personalizadas fuera de rclone.

List directory contents for a given drive path

get
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
pathstringRequerido
Parámetros de encabezado
authorizationstringRequerido
get
/{drive-id}/fs/listdir
GET /{drive-id}/fs/listdir?path=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Get file or directory attributes/metadata

get
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
pathstringRequerido
Parámetros de encabezado
authorizationstringRequerido
get
/{drive-id}/fs/attr
GET /{drive-id}/fs/attr?path=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Download a file with optional content disposition

get
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
pathstringRequerido
disposition_typestringRequeridoDefault: attachment
Parámetros de encabezado
authorizationstringRequerido
get
/{drive-id}/fs/download
GET /{drive-id}/fs/download?path=text&disposition_type=attachment HTTP/1.1
Host: 
authorization: text
Accept: */*

Create a directory at the specified path

post
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
pathstringRequerido
Parámetros de encabezado
authorizationstringRequerido
post
/{drive-id}/fs/mkdir
POST /{drive-id}/fs/mkdir?path=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Create multiple directories in a single request

post
Parámetros de ruta
drivestringRequerido
Parámetros de encabezado
authorizationstringRequerido
Cuerpo
post
/{drive-id}/fs/mkdir/batch
POST /{drive-id}/fs/mkdir/batch HTTP/1.1
Host: 
authorization: text
Accept: */*

Copy a file from one path to another

post
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
fromstringRequerido
tostringRequerido
Parámetros de encabezado
authorizationstringRequerido
post
/{drive-id}/fs/copy-file
POST /{drive-id}/fs/copy-file?from=text&to=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Move or rename a file or directory

post
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
fromstringRequerido
tostringRequerido
Parámetros de encabezado
authorizationstringRequerido
post
/{drive-id}/fs/move
POST /{drive-id}/fs/move?from=text&to=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Delete a file or directory at the specified path

post
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
pathstringRequerido
Parámetros de encabezado
authorizationstringRequerido
post
/{drive-id}/fs/delete
POST /{drive-id}/fs/delete?path=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Fetch overall storage usage and limits

get
Parámetros de ruta
drivestringRequerido
Parámetros de encabezado
authorizationstringRequerido
get
/{drive-id}/info/storage
GET /{drive-id}/info/storage HTTP/1.1
Host: 
authorization: text
Accept: */*

Fetch upload configuration and constraints

get
Parámetros de ruta
drivestringRequerido
Parámetros de encabezado
authorizationstringRequerido
get
/{drive-id}/info/upload
GET /{drive-id}/info/upload HTTP/1.1
Host: 
authorization: text
Accept: */*

Upload a specific part of a multipart upload

post
Parámetros de ruta
drivestringRequerido
partNumbernumberRequerido
Parámetros de consulta
tokenstringRequerido
signAllEndpointsstringOpcional
post
/{drive-id}/upload/multipart/part/{partNumber}
POST /{drive-id}/upload/multipart/part/{partNumber}?token=text HTTP/1.1
Host: 
Accept: */*

Initiate a multipart upload session

post
Parámetros de ruta
drivestringRequerido
Parámetros de encabezado
authorizationstringRequerido
Cuerpo
post
/{drive-id}/upload/multipart
POST /{drive-id}/upload/multipart HTTP/1.1
Host: 
authorization: text
Accept: */*

Complete a multipart upload by finalizing parts

post
Parámetros de ruta
drivestringRequerido
Parámetros de consulta
tokenstringRequerido
Parámetros de encabezado
authorizationstringRequerido
Cuerpo
post
/{drive-id}/upload/multipart/complete
POST /{drive-id}/upload/multipart/complete?token=text HTTP/1.1
Host: 
authorization: text
Accept: */*

Última actualización