GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo montar OneDrive en Linux usando Rclone (compatible con cuentas comerciales y personales)

Microsoft OneDrive no tiene una aplicación de cliente oficial para Linux, pero puede acceder a sus archivos de OneDrive desde un administrador de archivos en Linux gracias a una herramienta de terceros llamada Rclone. Este artículo explica cómo usar OneDrive en Linux. monte Rklon.


Microsoft OneDrive (anteriormente SkyDive) es un servicio de sincronización de archivos/almacenamiento en la nube que forma parte de la suite Office Online. Ofrece 5 GB de almacenamiento gratuito, con almacenamiento adicional disponible con una suscripción paga.

RClone es “rsync para almacenamiento en la nube “. No solo puede sincronizar archivos de su sistema de archivos a la nube (y viceversa), sino también de un servicio de almacenamiento en la nube a otro. La herramienta es compatible con una variedad de servicios de almacenamiento en la nube, desde Google Drive hasta Amazon Drive y S3, ownCloud, Yandex Disk y muchos otros.

Además de la sincronización de archivos bajo demanda, Rclone admite el montaje de todos los sistemas de almacenamiento en la nube admitidos como un sistema de archivos con FUSE. Aunque esta característica ha existido por un tiempo, todavía se considera experimental, así que utilícela con precaución.

Después de montar Microsoft OneDrive, puede acceder a él a través de su administrador de archivos, ya sea Nautilus (Archivos), Nemo, Caja, etc. El comportamiento es similar al de nuestro artículo sobre Google Drive:Montaje de Google Drive en Xfce o MATE Desktops (Ubuntu, Linux Mint). Como nota al margen, también puede usar Rclone para montar Google Drive en Linux.

Rclone es compatible con OneDrive para empresas/Office 365. Sin embargo, si la organización se encuentra en un estado no administrado (no verificado por el propietario del dominio), no podrá implementar OneDrive mediante Rclone con FUSE. Sin embargo, dichas cuentas se pueden utilizar con Sharepoint. Consulte esta página para obtener más información.

Si desea sincronizar sus archivos OneDrive con una carpeta local en Linux, puede usar OneDrive Free Client Fork, que guarda los archivos en el disco duro después de la sincronización y permite acceder a ellos incluso cuando la computadora está apagada. Montaje sin conexión de OneDrive en Linux.

Limitaciones al implementar OneDrive Rclone:

  • Todos los archivos eliminados con Rclone se moverán a la papelera de reciclaje ya que Microsoft no proporciona una API para eliminar archivos de forma permanente o vaciar la papelera de reciclaje
  • OneDrive no distingue entre mayúsculas y minúsculas, por lo que no puede tener dos archivos con el mismo nombre pero con mayúsculas y minúsculas diferentes en la misma carpeta (por ejemplo:MyFile.txt y myfile.txt no puede estar en la misma carpeta).
  • OneDrive no admite algunos caracteres que no están permitidos en los nombres de archivo en los sistemas operativos Windows. Rclone asigna estos caracteres a equivalentes Unicode de aspecto idéntico, como ? a


Además, cambiar el nombre de las carpetas no parece funcionar, al menos en mi sistema. No estoy seguro de si se trata de un problema de Rclone o de una limitación porque supuestamente Rclone ayuda a cambiar el nombre de las carpetas en general.

Estas instrucciones no solo deberían funcionar en cualquier distribución de Linux (desde Ubuntu, Linux Mint o Debian hasta Arch Linux, Fedora, openSUSE, etc.), sino también en FreeBSD y macOS. En realidad, funciona en Windows, pero necesita WinFsp.

Relacionado:Cryptomator protege sus datos de almacenamiento en la nube (herramienta de cifrado del lado del cliente multiplataforma de código abierto)

Monte OneDrive como un sistema de archivos en Linux usando Rclone

1. Instale Rclone.

Puede descargar los binarios de rclone desde aquí. Para Linux, puede encontrar binarios genéricos, así como binarios DEB y RPM.

No recomiendo instalar el paquete Rclone Snap (incluso si está usando Ubuntu) ya que no encontrará que fusermount ejecutable, incluso si está instalado --classic . Al usar el paquete Snap, recibirá un mensaje de error similar al siguiente cuando intente implementar un servicio de almacenamiento en la nube compatible con Rclone:

failed to mount FUSE fs: fusermount: exec: "fusermount": executable file not found in $PATH

Aparentemente, esto se solucionó hace un tiempo, pero parece que la salida vuelve a ocurrir.

2. Agregue un nuevo control remoto de OneDrive a Rclone. Las siguientes instrucciones pueden parecer largas, pero solo toma unos segundos configurarlas.

Para comenzar a agregar el control remoto de OneDrive a Rclone, use este comando para ingresar al modo de configuración de Rclone:

rclone config

Rclone mostrará una lista de opciones para que elijas New remote Opción por entrada n y presiona el Enter Clave:

$ rclone config
Current remotes:
Name                 Type
====                 ====
mega                 mega
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> n


A continuación, se le pedirá que ingrese un nombre para el nuevo control remoto. Ingrese el nombre que desea usar (estoy usando onedrive como el nombre en este manual):

name> onedrive

Después de presionar el Enter Presione para mostrar una lista de servicios de almacenamiento en la nube admitidos. Debe seleccionar la opción Microsoft OneDrive ingresando el número apropiado (19 ahora, pero puede cambiar en el futuro a medida que se agreguen más servicios de almacenamiento en la nube a Rclone):

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 / A stackable unification remote, which can appear to merge the contents of several remotes
    "union"
 2 / Alias for a existing remote
    "alias"
 3 / Amazon Drive
    "amazon cloud drive"
 4 / Amazon S3 Compliant Storage Provider (AWS, Alibaba, Ceph, Digital Ocean, Dreamhost, IBM COS, Minio, etc)
    "s3"
 5 / Backblaze B2
    "b2"
 6 / Box
    "box"
 7 / Cache a remote
    "cache"
 8 / Dropbox
    "dropbox"
 9 / Encrypt/Decrypt a remote
    "crypt"
10 / FTP Connection
    "ftp"
11 / Google Cloud Storage (this is not Google Drive)
    "google cloud storage"
12 / Google Drive
    "drive"
13 / Hubic
    "hubic"
14 / JottaCloud
    "jottacloud"
15 / Koofr
    "koofr"
16 / Local Disk
    "local"
17 / Mega
    "mega"
18 / Microsoft Azure Blob Storage
    "azureblob"
19 / Microsoft OneDrive
    "onedrive"
20 / OpenDrive
    "opendrive"
21 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH)
    "swift"
22 / Pcloud
    "pcloud"
23 / QingCloud Object Storage
    "qingstor"
24 / SSH/SFTP Connection
    "sftp"
25 / Webdav
    "webdav"
26 / Yandex Disk
    "yandex"
27 / http Connection
    "http"
Storage> 19

Para los siguientes dos pasos, presione Enter sin ingresar ninguna información, ya que no se requiere ingresar la ID o el secreto del cliente de la aplicación de Microsoft:

Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id>
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret> 

A continuación, se le preguntará si desea editar la configuración avanzada. Ingrese "n" a menos que tenga alguna configuración avanzada en mente:

Edit advanced config? (y/n)
y) Yes
n) No
y/n> n

Dependiendo de su configuración, debe ingresar a la configuración automática o la configuración manual para el siguiente paso. Renunciar para la mayoría de los usuarios y para usar la configuración automática:

Use auto config?
 * Say Y if not sure
 * Say N if you are working on a remote or headless machine
y) Yes
n) No
y/n> y

Debería abrirse una nueva pestaña en su navegador web predeterminado que le pide que le dé acceso a Rclone a su cuenta de OneDrive. Permítelo y podrás cerrar la pestaña.

Rclone ejecuta un servidor web en su computadora local (en el puerto 53682) para obtener el token de autenticación. Es posible que deba desbloquear temporalmente el bloqueo si está utilizando un firewall.

Ahora debe ingresar su tipo de cuenta. Para la mayoría de los usuarios, ingrese 1 que corresponde a una cuenta OneDrive Personal o Business:

Choose a number from below, or type in an existing value
 1 / OneDrive Personal or Business
    "onedrive"
 2 / Root Sharepoint site
    "sharepoint"
 3 / Type in driveID
    "driveid"
 4 / Type in SiteID
    "siteid"
 5 / Search a Sharepoint site
    "search"
Your choice> 1

Una cuenta (varias en algunos casos especiales) se enumera de la siguiente manera:

Found 1 drives, please select the one you want to use:
0:  (personal) id=f119f51f0a00000
Chose drive to use:> 0

Introduce 0 y presione Entrar.

Ahora debería llegar a esta pantalla:ingrese y sigue adelante.

Found drive 'root' of type 'personal', URL: https://onedrive.live.com/?cid=0f119f51f000000
Is that okay?
y) Yes
n) No
y/n> y

Ahora tienes que comprobar que todo está correcto y guardar la configuración escribiendo y :


[onedrive]
type = onedrive
token = {"access_token":"GoKSt5YMioiuCWX1KOuo8QT0Fwy+Y6ZeX7M","token_type":"bearer","refresh_token":"7OMvoEAO3l*8BbhS2AMxpTbJW0Y6np9cdql!bwEdYAhJ6XBG0tnR0UK","expiry":"2018-07-26T15:15:13.696368366+03:00"}
drive_id = f119f51f0a00000
drive_type = personal
--------------------
y) Yes this is OK
e) Edit this remote
d) Delete this remote
y/e/d> y

Finalmente, salga de la configuración de rclone escribiendo q :

Current remotes:
Name                 Type
====                 ====
onedrive             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

3. Cree una nueva carpeta en su sistema que se usará para montar Microsoft OneDrive.

Sugiero una carpeta llamada. para crear OneDrive en su directorio de inicio. En las instrucciones siguientes, se utiliza como punto de montaje (~/OneDrive ).

4. Monte OneDrive (con Rclone con FUSE) como sistema de archivos.

Para montar Microsoft OneDrive con Rclone, use este comando:

rclone --vfs-cache-mode writes mount onedrive: ~/OneDrive

Donde onedrive es el nombre del control remoto Rclone seguido de : (usamos exactamente onedrive en las instrucciones anteriores para que pueda usar solo eso para el comando) y ~/OneDrive es la carpeta donde desea implementar OneDrive en su sistema.

Se usa el comando de montaje --vfs-cache-mode writes porque según la documentación de Rclone “muchas aplicaciones no funcionarán con sus archivos en un montaje Rclone “sin eso o --vfs-cache-mode full . La sección de almacenamiento en caché de archivos rklon explica esto en detalle.

Puedes detenerlo y desengancharlo presionando Ctrl + C para cerrar Rclone.

5. (Opcional) Monte OneDrive al iniciar el sistema

Para que OneDrive esté disponible al inicio, abra Aplicaciones de inicio. Esto depende del entorno de escritorio que esté utilizando, por lo que enumeraré algunos de ellos a continuación y cómo acceder a las aplicaciones de inicio para agregar una nueva entrada:

  • Gnomo/Unity:busca Startup Applications en la cosa Dash / Aplicaciones, y en Aplicaciones de inicio, haga clic en Add
  • Xfce:inicia Session and Startup Desde el menú ve a Application Autostart Tabula y haz clic en Add
  • COMPAÑERO:inicio Startup Applications en el menú y haz clic en Add

Después de hacer clic en Add , utilice lo siguiente:

  • Nombre:Montaje Rclone OneDrive
  • Comando:sh -c "rclone --vfs-cache-mode writes mount onedrive: ~/OneDrive"

Hay otras formas de montar OneDrive automáticamente, como:B. agregar una línea en su /etc/fstab Archivo, usando systemd, etc. Como punto de partida, puede usar los ejemplos de google-drive-ocamlfuse, ya que también deberían funcionar para Rclone.


Debian
  1. Cómo instalar y configurar ZFS en Linux usando Debian Jessie 8.1

  2. Cómo montar y desmontar sistemas de archivos/particiones en Linux (ejemplos de comandos de montaje/desmontaje)

  3. Cómo crear y montar sistemas de archivos en Linux

  4. Cómo montar y desmontar un sistema de archivos en Linux

  5. Cómo verificar el sistema operativo y la versión usando un comando de Linux

Cómo configurar la red en Linux usando Netplan y NMTUI

Cómo ejecutar aplicaciones de Linux en Windows 10 y 11 usando WSL

Cómo instalar Webmin en CentOS 8 y Rocky Linux 8

Cómo clonar y restaurar una partición de Linux usando el comando dd

Cómo eliminar archivos y directorios usando la línea de comandos de Linux

Cómo montar y usar una unidad exFAT en un sistema Linux