Hola a todos!
Esta vez vamos a ver como tener instalado rclone en nuestro snology, y así tener una carpeta con toda la info que tenemos en la nube sin ocuparnos espacio a nosotros. Lo he probado en DSM6 y DSM7.
- Empezamos instalando «SynoCli Network Tolls» desde el repositorio de Synocomunnity.
*¿Como podemos instalar este repositorio?
Una vez dentro de «Centro de paquetes», en configuración, en la pestaña de orígenes de paquete, con la opción de «Agregar»:
Nombre: Synocomunnity
Ubicación: http://packages.synocommunity.com
Con el repositorio ya agregado instalamos «SynoCli Network Tolls»:
- Habilitar SSH desde Panel de control > Terminal y SNMP:
Ahora, para acceder por SSH usaremos Putty (si pulsas aquí te llevo a su web) o terminal, yo en mi caso uso terminal para acceder, y ponemos:
ssh -p [nº del puerto] [user]@[ip de Synology]
ejemplo: ssh -p 717 admin@192.168.1.11
-Si quieres acceder como root, una vez dentro, le diremos:
sudo -i y accederemos como root.
*Seguidamente nos pedirá la contraseña que tenemos para acceder.
- Instalar rclone:
Primero le decimos:
exec /bin/bash
Después:
curl https://rclone.org/install.sh | sudo bash
(con esto instala la version de rclone para nuestro sistema)
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 4436 100 4436 0 0 16995 0 --:--:-- --:--:-- --:--
:-- 17061Password: ******Nos vuelve a pedir la contraseña....******
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 15 100 15 0 0 57 0 --:--:-- --:--:-- --:--:-- 57
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 13.4M 100 13.4M 0 0 7985k 0 0:00:01 0:00:01 --:--:-- 7982k
Everything is Ok
Folders: 1
Files: 5
Size: 45014011
Compressed: 14059532
mandb not found. The rclone man docs will not be installed.
rclone v1.54.1 has successfully installed.
Now run "rclone config" for setup. Check https://rclone.org/docs/ for more details.
Para ver si lo hemos instalado bien le decimos:
/usr/bin/rclone -V
Y nos muestra lo instalado.
rclone v1.54.1
- os/arch: linux/amd64
- go version: go1.15.8
Ahora salimos de la conexión de SSH con «exit» y volvemos a entrar, donde le diremos:
rclone -V
Para saber que el sistema sabe donde está instalado rclone y nos devolverá el mismo mensaje. (sino nos toca repetirlo).
- API Google (Importante preparar esta parte):
Iremos a la web: https://console.developers.google.com/
Y accederemos con nuestros datos, evidentemente, tenemos que tener una cuenta de google.
-En panel de control selecciona un proyecto y «Nuevo proyecto
Seguidamente «Habilitar APIS y servicios
Pasamos a la pestaña de credenciales y creamos una con:
«credenciales con ID de cliente de OAuth»
Una vez creado los «Credenciales» seleccionamos el proyecto creado, y si le damos a editar, podremos ver el ID de cliente y Secreto de cliente.
- Configuración de rclone:
Para ello pondremos: rclone config y ahora os muestro toda la instalación donde cada uno tendrá que poner sus credenciales en su apartado:
*Añado los comentarios con ———comentarios——— o para marcar donde ponemos algo, sino por defecto.
2021/03/14 08:50:56 NOTICE: Config file "/var/services/homes/admin/.config/rclone/rclone.conf" not found - using defaults
No remotes found - make a new one
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n -----n PARA NUEVO-------
name> teamdrive ------nombre que queramos-------
Type of storage to configure.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / 1Fichier
\ "fichier"
2 / Alias for an existing remote
\ "alias"
3 / Amazon Drive
\ "amazon cloud drive"
4 / Amazon S3 Compliant Storage Providers including AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, and Tencent COS
\ "s3"
5 / Backblaze B2
\ "b2"
6 / Box
\ "box"
7 / Cache a remote
\ "cache"
8 / Citrix Sharefile
\ "sharefile"
9 / Compress a remote
\ "compress"
10 / Dropbox
\ "dropbox"
11 / Encrypt/Decrypt a remote
\ "crypt"
12 / Enterprise File Fabric
\ "filefabric"
13 / FTP Connection
\ "ftp"
14 / Google Cloud Storage (this is not Google Drive)
\ "google cloud storage"
15 / Google Drive
\ "drive"
16 / Google Photos
\ "google photos"
17 / Hadoop distributed file system
\ "hdfs"
18 / Hubic
\ "hubic"
19 / In memory object storage system.
\ "memory"
20 / Jottacloud
\ "jottacloud"
21 / Koofr
\ "koofr"
22 / Local Disk
\ "local"
23 / Mail.ru Cloud
\ "mailru"
24 / Mega
\ "mega"
25 / Microsoft Azure Blob Storage
\ "azureblob"
26 / Microsoft OneDrive
\ "onedrive"
27 / OpenDrive
\ "opendrive"
28 / OpenStack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
\ "swift"
29 / Pcloud
\ "pcloud"
30 / Put.io
\ "putio"
31 / QingCloud Object Storage
\ "qingstor"
32 / SSH/SFTP Connection
\ "sftp"
33 / Sugarsync
\ "sugarsync"
34 / Tardigrade Decentralized Cloud Storage
\ "tardigrade"
35 / Transparently chunk/split large files
\ "chunker"
36 / Union merges the contents of several upstream fs
\ "union"
37 / Webdav
\ "webdav"
38 / Yandex Disk
\ "yandex"
39 / Zoho
\ "zoho"
40 / http Connection
\ "http"
41 / premiumize.me
\ "premiumizeme"
42 / seafile
\ "seafile"
Storage> 15 ----15 para google drive-----
** See help for drive backend at: https://rclone.org/drive/ **
Google Application Client Id
Setting your own is recommended.
See https://rclone.org/drive/#making-your-own-client-id for how to create your own.
If you leave this blank, it will use an internal key which is low performance.
Enter a string value. Press Enter for the default ("").
client_id> -------NUESTRA ID-----------
OAuth Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret> -------NUESTRO SECRETO DE CLIENTE----------
Scope that rclone should use when requesting access from drive.
Enter a string value. Press Enter for the default ("").
Choose a number from below, or type in your own value
1 / Full access all files, excluding Application Data Folder.
\ "drive"
2 / Read-only access to file metadata and file contents.
\ "drive.readonly"
/ Access to files created by rclone only.
3 | These are visible in the drive website.
| File authorization is revoked when the user deauthorizes the app.
\ "drive.file"
/ Allows read and write access to the Application Data folder.
4 | This is not visible in the drive website.
\ "drive.appfolder"
/ Allows read-only access to file metadata but
5 | does not allow any access to read or download file content.
\ "drive.metadata.readonly"
scope> 1 -----PARA DARLE ACCESO TOTAL-------
ID of the root folder
Leave blank normally.
Fill in to access "Computers" folders (see docs), or for rclone to use
a non root folder as its starting point.
Enter a string value. Press Enter for the default ("").
root_folder_id>
Service Account Credentials JSON file path
Leave blank normally.
Needed only if you want use SA instead of interactive login.
Leading `~` will be expanded in the file name as will environment variables such as `${RCLONE_CONFIG_DIR}`.
Enter a string value. Press Enter for the default ("").
service_account_file>
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> n -----------
Please go to the following link: https://accounts.google.com/o/oauth2/auth?XXXXXXX
Log in and authorize rclone for access
Enter verification code> -----AQUÍ HAY QUE ACCEDER A ESA WEB Y PONER ESOS DATOS DE CONFIGURACIÓN ------
Configure this as a Shared Drive (Team Drive)?
y) Yes
n) No (default)
y/n> y ---------------
Fetching Shared Drive list...
Choose a number from below, or type in your own value
1 / NOMBRE CUETA
\ "DATOS CUENTA"
Enter a Shared Drive ID> 1 -----PUEDE QUE TENGAIS OTRAS CUENTAS----
--------------------
[teamdrive]
type = drive
client_id = XXXXXXX- XXXXXXXXX
client_secret = XXXXX
scope = drive
token = {"access_token":","token_type":"Bearer","refresh_token":"1//0","expiry":"2021-03-14T10:12:44.123+01:00"}
team_drive = 0XXXXh-XXXX
root_folder_id =
--------------------
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d>
Current remotes:
Name Type
==== ====
teamdrive drive
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
- Comprobamos instalación con:
rclone lsd teamdrive:
donde «teamdrive» lo cambiamos por el nombre que hemos puesto.
Y nos aparecerán nuestros datos de esa carpeta si todo ha ido bien.
- Creamos una carpeta en nuestro Synology donde queramos montar toda la información de «Google Drive».
- Montamos la ruta, para ello introducimos todo junto:
/usr/bin/rclone mount -v teamdrive[Nombre que hemos creado]: /volume1/rutadelacarpeta –allow-other –allow-non-empty –dir-cache-time 72h –vfs-cache-max-age 75h –vfs-read-chunk-size 64M –vfs-read-chunk-size-limit 1G –buffer-size 32M &
- Ahora, lo que nos gustaría es que si reincidamos nuestro Synology, se haga automáticamente el montaje y para ello lo pondremos en el programador del panel de control:
Rellenamos los datos
—Pestaña General:
– Tarea: El nombre que queramos, en mi caso he puesto «Activar rclone»
-Usuario y Evento por defecto: root y Arranque
– check: Habilitado (marcado)
—-Pestaña Configuración de tarea:
– Email: Si quereis notificaciones
– Ejecutar comando / Script: Copiar el código que hemos puesto en terminal.
2ª manera de ejecutar el montaje en el inicio del sistema:
¿Tenemos algún problema a la hora de montar el disco después de reiniciar?
Sigue leyendo esto último.
Si tenemos algún problema a la hora de ejecutar el script mediante el «Programador de tareas», podemos hacerlo creando un archivo sh, podemos seguir estos pasos:
-Creamos un archivo con por ejemplo el bloc de notas por ejemplo y dentro añadimos el montaje de rclone con lo siguiente:
/usr/bin/rclone mount -v teamdrive: /volume2/GDrive --config=/volume1/homes/admin/.config/rclone/rclone.conf --allow-other --allow-non-empty --dir-cache-time 72h --vfs-cache-max-age 75h --vfs-read-chunk-size 64M --vfs-read-chunk-size-limit 1G --buffer-size 32M &
Exit
*Tenemos que tener en cuenta, la dirección de las carpetas «/volume1/homes/admin/.config/rclone/rclone.conf
«, tenéis que cambiarlo por vuestra ubicación, igualmente, que donde pongo admin, alomejor vosotros lo habéis creado con un usuario, ya depende de cada uno.
Y para guardarlo como sh, lo único es que cuando lo guardemos, lo recobraremos a «nombre.sh» en vez de «nombre.txt» que es lo que tendría el bloc de notas creado.
Una vez guardado el archivo y renombrado, debemos guardarlo en una carpeta del Synology, recordar la ubicación que ahora lo tenemos que poner en programador, iremos al programador de tareas y:
Ahora cuando haces el reinicio se debe de montar automáticamente…
Errores varios y soluciones:
–Error:
Pérdida o desapación de la carpeta montada de rclone:
En una de las actualizaciones de Synology, tuve un problema, que la actualización se cargó la carpeta de rclone. ¿Y ahora?
-Pues primero lo que deberemos hacer es en el menú del programado de varias, tenemos la opción de «Configuración»:
En mi caso el error que me dió:
2021/04/08 11:24:21 ERROR : Couldn't find home directory or read HOME or XDG_CONFIG_HOME environment variables.
2021/04/08 11:24:21 ERROR : Defaulting to storing config in current directory.
2021/04/08 11:24:21 ERROR : Use --config flag to workaround.
2021/04/08 11:24:21 ERROR : Error was: exec: "getent": executable file not found in $PATH
2021/04/08 11:24:22 NOTICE: Config file "/.rclone.conf" not found - using defaults
2021/04/08 11:24:22 Failed to create file system for "teamdrive:": didn't find section in config file
-Entonces me tocó volver a configurarlo todo, instalé de nuevo rclone con los pasos anteriores y para ejecutar creando el script (de la 2ª manera) ; )
–Error:
failed to mount FUSE fs: fusermount: exec: «fusermount3»: executable file not found in $PATH
En la actualización a DSM7 me encontré con este error, lo pude solucionar con el comando:
sudo ln -s /bin/fusermount /bin/fusermount3
*Encontrado en https://forum.rclone.org/t/synology-update-to-dsm-7-fuse3-fatal-error/38411/5 y lo que hace es que cuando llamas a fusermount3 lo envía a fusermount.
–Error:
fusermount3: mountpoint is not empty
Este error indica que la carpeta a la cual quieres montar rclone, no está vacía. Monta rclone en otra ruta y se solventará.
Más opciones:
- ¿Y si queremos desmontar la carpeta de G drive?
Mediante SSH introducimos:
fusermount -uz /volume2/GDrive
*Recordar poner vuestra dirección de carpeta.
- ¿Y si queremos borrar rclone?
Mediante SSH introducimos:
sudo rm /usr/bin/rclone
Para los que usen Plex u otros programas, con lo que acabamos de hacer, podemos agregar una nueva biblioteca seleccionando dicha carpeta o bien sus subcarpetas, ahí ya cada uno elige su organización..
Y estos son los pasos que a mi me han funcionado, espero que os haya gustado este post.
Un saludo.
Última actualización: 27-05-2023
Gracias por el manual, pero tengo un problema.
Monto con rclone en una carpeta tal como indicas, y desde ssh hago un ls y veo el contenido pero desde el file station me dice que no tengo permisos, cuando es el mismo usuario el que lanza el rclone como el que accede.
He cerrado el GUI y he vuelto a abrirlo y ya me sale en file station pero no puedo copiar los ficheros con un sync o copy de rclone, me dice operation not permitted.
Interesante… Por mi parte de momento solo lo había usado de lectura, no escritura.
Habrá que buscar la manera de hacerlo.
Gracias por el comentario, si lo lograste puedes agregar un nuevo comentario.
Un saludo.
Hola!
Podría ser por falta de permisos. Has intentado hacerle un chmod 775 a esa carpeta?
Un saludo.
Hola, gracias por el tutorial, pero no consigo que abra el enlace en localhost para que me el token. alguna solución? gracias
Gracias por el tutorial.
Me encuentro en DSM 7.1.1 update 5
Pregunta; He montando rclone en mi synology y a su vez para acotar el fallo, también en una VM Xpenonology bajo Unraid, probando lo mismo.
En Unraid Vm con DSM 7.2 y en synology con la ultima estable. 7.1.1 upd5 . Al montar la carpeta, la monta, pero no aparece ningún archivo sincronizado y no te deja acceder a ella, es más desaparece de file station. La desmontas y vuelve a aparecer, pero sin contenido. Alguien que arroje luz
Gracias.
Hola!
Como te ha ido, has podido hacerlo?
Podría ser el comando a la hora de montar la carpeta, ¿has revisado bien a la hora de añadir las rutas y el nombre del drive que esté correcto?.
Un saludo.
Hola.
Me encuentro en una situacion similar a la del resto.
consigo configurarlo y montarlo, tanto con una carpeta del gdrive, como una misma carpeta encriptada dentro del gdrive ( gdrive:synology).
he creado
Gdrive/gdrive ( Donde monto el la carpeta del gdrive)
Gdrive/synology ( donde monto la carpeta encriptada dentro del gdrive )
En los dos montajes, puedo ver lo que hay en las carpetas, pero al intentar crear una carpeta, subir un archivo, modificar nombre de carpeta, me da error, me dice que la red esta ocupada o inestable.
tambien he observado que si hago un «ls -l» cuando tengo las carpetas montadas, me aparecen los permisos que LS no tiene permisos y me muestra las carpetas de la siguiente forma.
ls: cannot access ‘gdrive’: Permission denied
ls: cannot access ‘synology’: Permission denied
d?????????? ? ? ? ? ? synology
d?????????? ? ? ? ? ? gdrive
si desmonto la unicad o mato el proceso desde el putty del rclone del montaje, me aparece asi:
drwxrwxrwx+ 1 abeluko users 0 Jun 13 11:05 synology
y entonces ya me deja copiar, crear, modificar…
alguna idea?
Saludos
Hola!
Pudiste solucionarlo?
Yo probaría a configurar de nuevo y volver a establecer permisos. Luego a la hora de montarlo con el comando que se indica en el post, prueba a lanzarlo y ver si te deja.
Salu2!
Hola!
A mi me pasa esto: Error:
fusermount3: mountpoint is not empty
Este error indica que la carpeta a la cual quieres montar rclone, no está vacía. Monta rclone en otra ruta y se solventará.
Con lo cual no permite que se monte de nuevo, una vez reinicio el Nas, no hay forma de solucionar este problema, sin tener que utilizar otra carpeta o borrar y volver a crear la misma?
Gracias!!!
A mi me ha funcionado cambiando el nombre de la carpeta y si reinicio carga bien. Sinceramente me conformé cambiando el nombre 😉 y no probé a borrarla y volver a a configurarlo.A ti te funciona así?
Salu2!