Sincronizando o Onedrive com o RClone
Sincronizando o Onedrive com o RClone
Eu uso o Onedrive como meu serviço de nuvem há mais de uma década
Eu uso o Onedrive como meu serviço de nuvem há mais de uma década, mas ele não tem um cliente oficial para Linux. Há alternativas: Onedrive for Linux/OnedriveGUI e o Onedriver.
O OneDriver era irritantemente lento, pois monta o Onedrive como uma unidade remota, e o Onedrive for Linux se tornou uma opção que funciona bem.
Até migrar para o Void Linux, onde a configuração do Onedrive estava bem chata e eu estava quase enlouquecendo tentando configurá-lo. Tentei pelo OnedriveGUI, mas a versão do Onedrive do Void era muito antiga.
Tentei pelo próprio Onedrive no Void, mas não consegui; sempre dava erro de autenticação e, no Github, todas as issues eram basicamente "O problema é com a Microsoft, não com o meu programa".
Estava quase desistindo, até ouvir falar que o RClone poderia fazer o mesmo. Assim, eu tentei novamente. Primeiramente, instalei o RClone. E aqui é como consegui configurar o Onedrive usando o RClone.
Instalando e Configurando
Como eu estou no Void, um simples...
sudo xbps-install rclone... instalou o pacote e com um...
rclone config... comecei a configurar o RClone. Como eu não tenho nenhuma configuração, então é exibida essa listinha de opções, para criar uma nova configuração, uma senha ou sair. Sendo assim, escolhi a opção para criar uma nova configuração.
n) New remote
s) Set configuration password
q) Quit config
n/s/q> n
Com isso, coloquei um nome para essa nova configuração...
name> Onedrive
... depois, foi a hora de escolher qual é a opção que eu quero para o RClone. E, ao menos por aqui, era a 42.
Type of storage to configure.
Choose a number from below, or type in your own value.
(...)
42 / Microsoft OneDrive
\ (onedrive)
(...)
Storage> 42
Depois vieram as opções do OAuth. Sendo assim, eu deixei em branco...
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_id>
Option client_secret.
OAuth Client Secret.
Leave blank normally.
Enter a value. Press Enter to leave empty.
client_secret>
... com isso, vieram as opções de Região, onde eu apenas aceitei a opção padrão.
Choose national cloud region for OneDrive.
Choose a number from below, or type in your own value of type string.
Press Enter for the default (global).
1 / Microsoft Cloud Global
\ (global)
2 / Microsoft Cloud for US Government
\ (us)
3 / Microsoft Cloud Germany (deprecated - try global region first).
\ (de)
4 / Azure and Office 365 operated by Vnet Group in China
\ (cn)
region>
Depois, veio a opção de "ID do Diretório". Bom, só apertei Enter para prosseguir.
ID of the service principal's tenant. Also called its directory ID.
Set this if using
- Client Credential flow
Enter a value. Press Enter to leave empty.
tenant>
E, por fim, o RClone pede para escolher se queremos ou não editar as configurações avançadas. Como eu não quero, já fui no "Não".
y) Yes
n) No (default)
y/n> n
E, por fim, vem a autenticação para o RClone. Aqui ele pede para abrir o navegador para fazer o login com o Onedrive.
* Say Y if the machine running rclone has a web browser you can use
* Say N if running rclone on a (remote) machine without web browser access
If not sure try Y. If Y failed, try N.
y) Yes (default)
n) No
y/n> y
Depois foi só logar no Onedrive, e sucesso! O rclone realmente conseguiu fazer o login no Onedrive!
2026/05/12 21:07:42 NOTICE: If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth?state=
2026/05/12 21:07:42 NOTICE: Log in and authorize rclone for access
2026/05/12 21:07:42 NOTICE: Waiting for code...
2026/05/12 21:08:14 NOTICE: Got code
Option config_type.
Após isso, é só escolher o tipo de conexão. Como uso o Onedrive Pessoal, a opção certa é a 1.
Choose a number from below, or type in an existing value of type string.
Press Enter for the default (onedrive).
1 / OneDrive Personal or Business
\ (onedrive)
2 / Root Sharepoint site
\ (sharepoint)
/ Sharepoint site name or URL
3 | 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)
/ Sharepoint server-relative path (advanced)
7 | E.g. /teams/hr
\ (path)
config_type> 1
Depois o RClone detecta os drives que você tem no Onedrive. E decidi ir pela opção padrão...
Choose a number from below, or type in your own value of type string.
Press Enter for the default ().
... e depois disso, ele detecta a raiz do drive que você escolheu...
Found drive "root" of type "personal"
URL: https://onedrive.live.com?cid=
y) Yes (default)
n) No
y/n>
... e assim, a configuração termina.
Options:
- type: onedrive
(...)
Keep this "Onedrive" remote?
y) Yes this is OK (default)
e) Edit this remote
d) Delete this remote
y/e/d> y
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>
E com isso, ao dar esse comando...
rclone bisync Onedrive: Onedrive --create-empty-src-dirs --compare size,modtime,checksum --slow-hash-sync-only --resilient -MvP --drive-skip-gdocs --fix-case --resync --exclude "/Cofre Pessoal/**"... tudo simplesmente funcionou! Só precisa se lembrar de que o item remoto vem acompanhado dos dois pontos. Como no caso ali do "Onedrive:". E também de que é bom dar um "--resync" para fazer a primeira sincronização, principalmente se a pasta local já tem arquivos (o que foi o meu caso)
2026/05/12 21:48:29 NOTICE: OneDrive root '': will use quickxor for same-side diffs on Path1 only
2026/05/12 21:48:29 INFO : Slow hash detected on Path2. Will ignore checksum due to slow-hash settings
2026/05/12 21:48:29 NOTICE: Ignoring checksums during --resync as --slow-hash-sync-only is set.
2026/05/12 21:48:29 INFO : Bisyncing with Comparison Settings:
{
"Modtime": true,
"Size": true,
"Checksum": true,
"HashType1": 4096,
"HashType2": 0,
"NoSlowHash": false,
"SlowHashSyncOnly": true,
"SlowHashDetected": true,
"DownloadHash": false
}
2026/05/12 21:48:29 INFO : Synching Path1 "Onedrive:/" with Path2 "/home/rapoelho/Onedrive/"
2026/05/12 21:48:29 INFO : Copying Path2 files to Path1
2026/05/12 21:48:29 INFO : - Path2 Resync is copying files to - Path1
(...)
2026/05/12 22:02:35 INFO : Resync updating listings
2026/05/12 22:02:37 INFO : Validating listings for Path1 "Onedrive:/" vs Path2 "/home/rapoelho/Onedrive/"
2026/05/12 22:02:37 INFO : Bisync successful
Transferred: 10.251 GiB / 10.251 GiB, 100%, 13.988 MiB/s, ETA 0s
Checks: 39686 / 39686, 100%, Listed 80572
Transferred: 33 / 33, 100%
Elapsed time: 14m7.8s
2026/05/12 22:02:37 INFO :
Transferred: 10.251 GiB / 10.251 GiB, 100%, 13.988 MiB/s, ETA 0s
Checks: 39686 / 39686, 100%, Listed 80572
Transferred: 33 / 33, 100%
Elapsed time: 14m7.8s
E simplesmente funcionou. Acho que o Onedrive é um dos programas que definitivamente irei riscar da minha lista de pós-instalação. O RClone se mostrou bem mais funcional. Com um "simples"...
rclone bisync Onedrive: Onedrive --create-empty-src-dirs --compare size,modtime,checksum --slow-hash-sync-only --resilient -MvP --drive-skip-gdocs --fix-case --exclude "/Cofre Pessoal/**"... posso sincronizar o meu Onedrive quando eu quiser, e nas duas vias: local e remotamente. E isso é realmente muito bom.
Fontes
- DocumentaçãoEssa é a documentação do RClone para o Onedrive
- BisyncEssa é a documentação para a sincronização bidirecional
- Tutorial que usei de baseEsse é o tutorial que usei de base para poder sincronizar o Onedrive com o RClone.