1. Introducción
A continuación explicamos cómo configurar un acceso a una carpeta Microsoft OneDrive, de manera que sea podamos montar la carpeta y funcionar con ella como una carpeta regular, todo ello usando RClone.
El artículo explica los pasos para configurar Microsoft OneDrive pero debería valer para configurar un acceso de GoogleDrive y otros proveedores similares.
El artículo se divide en dos partes: la primera se destina a configurar el acceso. La segunda parte se centra en cómo usar accesos configurados para montaje permanente y consulta.
2. Configuración de acceso para RClone
-
Descargamos desde:
-
En el momento de este procedimiento, la descarga fue:
>> wget https://downloads.rclone.org/v1.54.0/rclone-v1.54.0-linux-amd64.deb >> dpkg -i rclone-v1.54.0-linux-amd64.deb
-
Arrancamos la configuración rclone y pulsamos “new remote”:
>> rclone config n) New remote s) Set configuration password q) Quit config n/s/q> n
-
Metemos un nombre a la configuración (carpeta_remota, iqos, volumen, recurso1, en definitiva, una etiqueta corta):
name> iqos
-
A continuación seleccionamos el driver:
Storage> onedrive
-
A continuación pulsamos enter para meter un usuario vacío (lo dejamos en blanco, tal y como recomiendan):
client_id> <enter>
-
A continuación pulsamos enter para meter una contraseña vacía (lo dejamos en blanco, tal y como recomiendan):
client_secret> <enter>
-
A continuación, para cuentas onedrive, introducimos “global”:
region> global
-
A continuación llegará a un punto en el que hay que darle un token (tras decirle que no queremos configuración avanzada y que es una configuración con headless):
Edit advanced config? (y/n) y) Yes n) No (default) y/n> n Remote config Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes (default) n) No y/n> y If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=K_DwxxxxxxSw Log in and authorize rclone for access Waiting for code...
-
A continuación, mapeamos con ssh el mismo puerto que salga en el mensaje anterior (en este ejemplo 53682):
>> ssh -L 53682:localhost:53682 nombre-de-la-maquina-donde-los-estamos-configurando.com -l aspl -X -C
-
Una vez conectemos correctamente con ssh, abrir un navegador en el equipo cliente (escritorio) con la url que nos indicaban:
-
Al acceder nos llegará al a web de Onedrive de microsoft, ahí nos autenticaremos con el usuario y la contraseña del OneDrive en cuestión, y si todo va correcto, saldrá lo siguiente:
Success!
All done. Please go back to rclone. -
Tras esto, podemos cerrar ese navegador y volver al terminal del servidor. Ahí aparecerá que recibió el código y nos por el tipo de unidad “onedrive”, y nos pedirá seleccionar la unidad a conectar (normalmente 0) y si es correcto:
Got code Choose a number from below, or type in an existing value 1 / OneDrive Personal or Business \ "onedrive" 2 / Root Sharepoint site \ "sharepoint" 3 / Sharepoint site name or URL (e.g. mysite or https://contoso.sharepoint.com/sites/mysite) \ "url" 4 / Search for a Sharepoint site \ "search" 5 / Type in driveID (advanced) \ "driveid" 6 / Type in SiteID (advanced) \ "siteid" 7 / Sharepoint server-relative path (advanced, e.g. /teams/hr) \ "path" Your choice> onedrive Found 1 drives, please select the one you want to use: 0: (personal) id=12xxx0c Chose drive to use:> 0 Found drive 'root' of type 'personal', URL: https://onedrive.live.com/?cid=121xxxx0c Is that okay? y) Yes (default) n) No y/n> y
-
A continuación nos mostrará la configuración de token, y si estamos conformes. Decimos que sí y salimos:
[iqos] type = onedrive region = global token = {"access_token":"EwBgA8eubqaXKSxxxxxkt4$","expiry":"2021-02-17T13:15:05.867679694+01:00"} drive_id = 1212158039eca40c drive_type = personal -------------------- y) Yes this is OK (default) e) Edit this remote d) Delete this remote y/e/d> y Current remotes: Name Type ==== ==== iqos onedrive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q> q
-
Llegados a este punto ya estaría todo configurado. Ya podemos pasar a las siguientes secciones donde indicamos cómo consultar y configurar el montado.
3. Listar carpetas remotas para recursos configurados
Seleccionando una de las configuraciones, ejecutar lo siguiente:
>> rclone lsd iqos:/
-1 2020-09-09 13:41:06 0 Documentos
-1 2020-08-28 13:22:25 0 Imágenes
-1 2020-10-12 21:16:20 1 iqos
-1 2021-02-11 13:12:16 0 iqos_aspl
4. Montar carpeta remota de manera permanente
-
Ejecutar lo siguiente:
>> rclone mount --uid 1007 --gid 1009 --daemon --vfs-cache-mode full iqos:/iqos_aspl /var/webs/dominio.com/iqos_aspl/
DONDE:
–uid es el uid del usuario que tendrá acceso a la carpeta (usar ls -la -n para ver uids)
–gid es el gid del usuario que tendrá acceso a la carpeta -
Para que el montado sea permanente, meter este comando en el /etc/rc.local antes del “exit 0”
5. Desmontado de la carpeta y proceso rclone
Para desmontar una carpeta con rclone, simplemente desmontar usando umount como cualquier otra carpeta regular que haya sido montada. Esto desmontará el recurso y parará el servicio RClone asociado.