{"id":1761,"date":"2026-09-29T08:32:58","date_gmt":"2026-09-29T11:32:58","guid":{"rendered":"https:\/\/www.linuxpro.com.br\/?p=1761"},"modified":"2026-09-29T08:52:52","modified_gmt":"2026-09-29T11:52:52","slug":"rclone-no-linux-sync-backup-criptografado-mount-e-serve-em-qualquer-nuvem","status":"publish","type":"post","link":"https:\/\/www.linuxpro.com.br\/en\/2026\/09\/rclone-no-linux-sync-backup-criptografado-mount-e-serve-em-qualquer-nuvem\/","title":{"rendered":"rclone on Linux: sync, encrypted backup, mount, and serve on any cloud"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/09\/rclone-no-linux.webp\" alt=\"Mascote do LinuxPro conectando um cabo ao console com o logo do rclone, de onde arquivos sobem por um tubo at\u00e9 nuvens de armazenamento, com o cachorro caramelo cyborg sentado ao lado do rack\" width=\"1486\" height=\"856\" \/><\/p>\n<p><strong>rclone<\/strong> \u00e9 o &#8220;rsync para armazenamento em nuvem&#8221;: um bin\u00e1rio \u00fanico, escrito em Go, que copia, sincroniza, verifica, criptografa, monta e serve arquivos em mais de 70 servi\u00e7os de armazenamento \u2014 Amazon S3, MinIO, Backblaze B2, Cloudflare R2, Google Drive, OneDrive, SFTP, WebDAV, SMB e dezenas de outros. A vers\u00e3o est\u00e1vel em setembro de 2026 \u00e9 a <strong>1.75.1<\/strong> (04\/09). Este guia vai da instala\u00e7\u00e3o ao backup criptografado agendado com systemd, passando por <code>mount<\/code>, <code>serve<\/code> e a nova GUI web.<\/p>\n<p><!-- more --><\/p>\n<p>Se voc\u00ea j\u00e1 usa <code>rsync<\/code> entre servidores, o rclone \u00e9 a mesma ideia com um detalhe que muda tudo: o outro lado n\u00e3o precisa ser uma m\u00e1quina com SSH. Pode ser um bucket, um drive pessoal ou outro provedor de nuvem \u2014 e a c\u00f3pia entre duas nuvens acontece sem gravar nada no seu disco. C\u00f3digo em <a href=\"https:\/\/github.com\/rclone\/rclone\">github.com\/rclone\/rclone<\/a>, documenta\u00e7\u00e3o em <a href=\"https:\/\/rclone.org\/docs\/\">rclone.org\/docs<\/a>.<\/p>\n<h2>O que \u00e9 o rclone<\/h2>\n<p>O projeto foi criado por Nick Craig-Wood e est\u00e1 no GitHub desde mar\u00e7o de 2014. Licen\u00e7a <strong>MIT<\/strong>, cerca de 60 mil estrelas, bin\u00e1rio est\u00e1tico sem depend\u00eancias: baixou, rodou. O mesmo execut\u00e1vel roda em Linux, macOS, Windows e BSDs, em amd64, arm64 e outras arquiteturas.<\/p>\n<p>O conceito central \u00e9 o <strong>remote<\/strong>: um nome que voc\u00ea cadastra (<code>meus3:<\/code>, <code>gdrive:<\/code>, <code>cofre:<\/code>) e que aponta para um backend com suas credenciais. Todo comando aceita caminho local ou <code>remote:caminho<\/code>, nos dois lados:<\/p>\n<pre><code class=\"language-bash\">rclone copy \/srv\/dados meus3:backups\/srv      # local \u2192 nuvem\nrclone copy gdrive:Fotos meus3:fotos           # nuvem \u2192 nuvem\nrclone ls meus3:backups                        # listar como se fosse ls<\/code><\/pre>\n<p>Al\u00e9m dos backends &#8220;de verdade&#8221;, existem os <strong>virtuais<\/strong>, que embrulham outro remote: <code>crypt<\/code> (criptografia), <code>union<\/code> (junta v\u00e1rios remotes em um), <code>chunker<\/code> (quebra arquivos grandes), <code>compress<\/code>, <code>hasher<\/code>, <code>combine<\/code> e <code>alias<\/code>. \u00c9 isso que permite, por exemplo, um backup criptografado em cima de qualquer provedor.<\/p>\n<h2>Arquitetura: onde o rclone se encaixa<\/h2>\n<p>O rclone fica entre as origens (disco local, NAS, outra nuvem) e os destinos. Por dentro, cada opera\u00e7\u00e3o passa pelos comandos, pelos filtros e limites, opcionalmente pela camada de criptografia, e chega aos clientes de API de cada backend, que cuidam de checksum, retentativas e transfer\u00eancias paralelas. As credenciais moram no <code>rclone.conf<\/code>. Por fora, voc\u00ea consome o rclone de tr\u00eas jeitos: agendado (systemd\/cron), montado como sistema de arquivos (FUSE) ou servindo o remote por HTTP, WebDAV, SFTP, S3 ou NFS.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/09\/rclone-arquitetura.webp\" alt=\"Diagrama da arquitetura do rclone: origens locais, n\u00facleo com comandos, filtros e crypt, remotes de nuvem e as formas de uso (timer, mount e serve)\" width=\"1200\" height=\"700\" \/><\/p>\n<h2>Instala\u00e7\u00e3o<\/h2>\n<p>Os reposit\u00f3rios das distros andam atrasados: Ubuntu 24.04 e Debian 13 empacotam a <strong>1.60.1<\/strong>, sem <code>bisync<\/code> est\u00e1vel, sem <code>gui<\/code>, sem <code>archive<\/code> e sem anos de corre\u00e7\u00f5es. Use o script oficial, que baixa a \u00faltima vers\u00e3o est\u00e1vel e instala em <code>\/usr\/bin\/rclone<\/code> com a man page:<\/p>\n<pre><code class=\"language-bash\">sudo -v ; curl https:\/\/rclone.org\/install.sh | sudo bash\nrclone version<\/code><\/pre>\n<p>Prefere n\u00e3o passar script por pipe para o bash? Baixe o zip e instale na m\u00e3o:<\/p>\n<pre><code class=\"language-bash\">VER=v1.75.1\ncurl -LO https:\/\/downloads.rclone.org\/$VER\/rclone-$VER-linux-amd64.zip\nunzip rclone-$VER-linux-amd64.zip\nsudo install -m 755 rclone-$VER-linux-amd64\/rclone \/usr\/bin\/rclone\nsudo mkdir -p \/usr\/local\/share\/man\/man1\nsudo install -m 644 rclone-$VER-linux-amd64\/rclone.1 \/usr\/local\/share\/man\/man1\/<\/code><\/pre>\n<p>Para usar <code>rclone mount<\/code>, instale tamb\u00e9m o FUSE 3:<\/p>\n<pre><code class=\"language-bash\">sudo apt install fuse3<\/code><\/pre>\n<p>Atualizar depois \u00e9 um comando: <code>sudo rclone selfupdate<\/code>. H\u00e1 ainda imagem Docker oficial (<code>rclone\/rclone<\/code>) e snap, este mantido pela comunidade e com as limita\u00e7\u00f5es de confinamento do snap.<\/p>\n<h2>Configurando o primeiro remote<\/h2>\n<p>O jeito interativo \u00e9 <code>rclone config<\/code>: um assistente pergunta o tipo de backend e as credenciais e grava tudo em <code>~\/.config\/rclone\/rclone.conf<\/code>. Para scripts e automa\u00e7\u00e3o, o <code>rclone config create<\/code> faz o mesmo em uma linha. Exemplo com um MinIO (ou qualquer S3 compat\u00edvel):<\/p>\n<pre><code class=\"language-bash\">rclone config create meus3 s3 \\\n  provider=Minio \\\n  access_key_id=MINHA_CHAVE \\\n  secret_access_key=MEU_SEGREDO \\\n  endpoint=https:\/\/minio.exemplo.com.br\n\nrclone lsd meus3:                 # lista os buckets\nrclone mkdir meus3:backups        # cria um bucket<\/code><\/pre>\n<p>O resultado \u00e9 um bloco INI simples no arquivo de configura\u00e7\u00e3o:<\/p>\n<pre><code class=\"language-ini\">[meus3]\ntype = s3\nprovider = Minio\naccess_key_id = MINHA_CHAVE\nsecret_access_key = MEU_SEGREDO\nendpoint = https:\/\/minio.exemplo.com.br<\/code><\/pre>\n<p>Para AWS troque <code>provider=AWS<\/code> e informe <code>region<\/code>; para Cloudflare R2, Wasabi, Hetzner, Magalu Cloud e outros, o <code>provider<\/code> tem valor pr\u00f3prio \u2014 a lista completa sai de <code>rclone help backend s3<\/code>. Se voc\u00ea ainda n\u00e3o tem um S3 pr\u00f3prio, o post sobre o <a href=\"\/2026\/09\/openobserve-ubuntu-servidor-dedicado-s3-gcs-minio\/\">OpenObserve com S3, GCS e MinIO<\/a> mostra esse lado.<\/p>\n<h3>Google Drive, OneDrive e Dropbox em servidor sem navegador<\/h3>\n<p>Backends com OAuth querem abrir um navegador para voc\u00ea autorizar. Num servidor headless, responda <strong>n<\/strong> quando o <code>rclone config<\/code> perguntar se pode usar o navegador. Ele vai pedir um token; gere-o em qualquer m\u00e1quina com navegador e o mesmo rclone instalado:<\/p>\n<pre><code class=\"language-bash\"># no desktop, com navegador\nrclone authorize \"drive\"\n# autorize na p\u00e1gina que abre e copie o bloco que o comando imprime\n# de volta ao servidor, cole o bloco no prompt do rclone config<\/code><\/pre>\n<p>Nada de t\u00fanel nem de copiar o <code>rclone.conf<\/code> inteiro entre m\u00e1quinas.<\/p>\n<h2>copy, sync, move e bisync: escolha o verbo certo<\/h2>\n<p>\u00c9 aqui que o rclone perdoa pouco. Os quatro comandos parecem parecidos e fazem coisas bem diferentes com o <strong>destino<\/strong>:<\/p>\n<table>\n<thead>\n<tr>\n<th>Comando<\/th>\n<th>O que faz<\/th>\n<th>Apaga no destino?<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td><code>copy<\/code><\/td>\n<td>Copia o que \u00e9 novo ou mudou; ignora arquivos id\u00eanticos<\/td>\n<td>Nunca<\/td>\n<\/tr>\n<tr>\n<td><code>sync<\/code><\/td>\n<td>Deixa o destino <strong>id\u00eantico<\/strong> \u00e0 origem<\/td>\n<td><strong>Sim<\/strong>, tudo que n\u00e3o existe na origem<\/td>\n<\/tr>\n<tr>\n<td><code>move<\/code><\/td>\n<td>Copia e apaga da origem<\/td>\n<td>N\u00e3o (apaga na origem)<\/td>\n<\/tr>\n<tr>\n<td><code>bisync<\/code><\/td>\n<td>Sincroniza\u00e7\u00e3o nos dois sentidos, com detec\u00e7\u00e3o de conflito<\/td>\n<td>Sim, nos dois lados<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>O erro cl\u00e1ssico \u00e9 inverter origem e destino num <code>sync<\/code>: o rclone obedece e apaga o lado que voc\u00ea queria preservar. Por isso, antes de todo <code>sync<\/code> novo:<\/p>\n<pre><code class=\"language-bash\">rclone sync \/srv\/dados meus3:backups\/srv --dry-run      # mostra o que faria\nrclone sync \/srv\/dados meus3:backups\/srv -i             # pergunta arquivo a arquivo\nrclone sync \/srv\/dados meus3:backups\/srv -P             # executa com progresso<\/code><\/pre>\n<p>O <code>bisync<\/code> saiu oficialmente do beta na 1.71. Na primeira execu\u00e7\u00e3o ele precisa de <code>--resync<\/code> para montar o estado inicial dos dois lados; depois, rode sem a flag:<\/p>\n<pre><code class=\"language-bash\">rclone bisync ~\/Documentos gdrive:Documentos --resync   # s\u00f3 na primeira vez\nrclone bisync ~\/Documentos gdrive:Documentos            # as pr\u00f3ximas<\/code><\/pre>\n<p>Para backup, prefira <code>sync<\/code> ou <code>copy<\/code> num sentido s\u00f3. <code>bisync<\/code> \u00e9 para pastas que voc\u00ea edita dos dois lados, como um Dropbox caseiro.<\/p>\n<h2>Filtros: o que entra e o que fica de fora<\/h2>\n<p>Para excluir um padr\u00e3o r\u00e1pido, use <code>--exclude<\/code>. Para regras de verdade, um arquivo de filtros, lido de cima para baixo \u2014 a primeira regra que casa decide:<\/p>\n<pre><code class=\"language-bash\">sudo mkdir -p \/etc\/rclone\nsudo tee \/etc\/rclone\/filtros.txt &gt;\/dev\/null &lt;&lt;'EOF'\n- node_modules\/**\n- .cache\/**\n- *.tmp\n- *.swp\n+ **\nEOF\n\nrclone sync \/srv meus3:backups\/srv --filter-from \/etc\/rclone\/filtros.txt --dry-run<\/code><\/pre>\n<p>Outros filtros \u00fateis no dia a dia: <code>--max-age 7d<\/code> (s\u00f3 o que mudou na \u00faltima semana), <code>--min-size 1M<\/code>, <code>--exclude-if-present .nobackup<\/code> (pula diret\u00f3rios que cont\u00eam esse arquivo) e <code>rclone lsf -R origem --filter-from filtros.txt<\/code>, que lista exatamente o que o filtro deixa passar sem transferir nada.<\/p>\n<h2>Criptografia com o remote crypt<\/h2>\n<p>O <code>crypt<\/code> \u00e9 um remote que embrulha outro. Tudo que voc\u00ea grava em <code>cofre:<\/code> sai criptografado no remote de baixo, com conte\u00fado cifrado por <strong>XSalsa20 + Poly1305<\/strong> (o SecretBox da NaCl) e, opcionalmente, nomes de arquivos e diret\u00f3rios tamb\u00e9m cifrados. O provedor v\u00ea s\u00f3 blobs com nomes aleat\u00f3rios.<\/p>\n<pre><code class=\"language-bash\">rclone config create cofre crypt \\\n  remote=meus3:backups-cifrados \\\n  password=$(rclone obscure 'uma-senha-longa-e-aleatoria') \\\n  filename_encryption=standard \\\n  directory_name_encryption=true\n\nrclone copy \/srv\/dados cofre:srv\nrclone ls cofre:srv                    # nomes em claro, via rclone\nrclone ls meus3:backups-cifrados       # o que o provedor v\u00ea: nomes embaralhados<\/code><\/pre>\n<p>No lado do bucket, o resultado \u00e9 assim:<\/p>\n<pre><code class=\"language-bash\">5e4j7s0dqn1dn7tpog50ss59t4\/ees62i2pgm1tg01hd2euclo548\n64m5qfpup4djr71a5er0jmd3p4\ncj3kojq3km80ciulanc65ichm4<\/code><\/pre>\n<p>Tr\u00eas cuidados:<\/p>\n<ul>\n<li><strong>A senha \u00e9 o backup.<\/strong> Perdeu a senha (e o salt, se usou <code>password2<\/code>), perdeu os dados. Guarde-a num cofre de senhas, como o <a href=\"\/2026\/09\/vaultwarden-bitwarden-self-hosted\/\">Vaultwarden<\/a>, fora do servidor que faz o backup.<\/li>\n<li><strong>O tamanho dos arquivos n\u00e3o \u00e9 escondido<\/strong> \u2014 d\u00e1 para calcular o tamanho original com margem de 16 bytes \u2014 nem a estrutura de diret\u00f3rios e datas de modifica\u00e7\u00e3o.<\/li>\n<li><strong>Para verificar um remote criptografado<\/strong>, use <code>rclone cryptcheck \/srv\/dados cofre:srv<\/code>: ele compara os checksums sem baixar os arquivos.<\/li>\n<\/ul>\n<h2>Protegendo o rclone.conf<\/h2>\n<p>Senhas gravadas pelo rclone no <code>rclone.conf<\/code> ficam <strong>ofuscadas<\/strong>, n\u00e3o criptografadas: o <code>rclone obscure<\/code> usa AES-CTR com uma chave fixa, conhecida por qualquer vers\u00e3o do rclone. Serve s\u00f3 contra olhadas de relance. Quem l\u00ea o arquivo l\u00ea suas chaves de S3 e a senha do <code>crypt<\/code>. Criptografe a configura\u00e7\u00e3o inteira:<\/p>\n<pre><code class=\"language-bash\">rclone config encryption set      # define a senha do arquivo\nrclone config encryption check    # confirma que est\u00e1 cifrado\nchmod 600 ~\/.config\/rclone\/rclone.conf<\/code><\/pre>\n<p>Com o arquivo cifrado, cada execu\u00e7\u00e3o pede a senha. Para automa\u00e7\u00e3o, passe-a pela vari\u00e1vel <code>RCLONE_CONFIG_PASS<\/code> (carregada de um arquivo com modo <code>600<\/code>) ou por <code>--password-command<\/code>, que executa um comando e l\u00ea a senha da sa\u00edda \u2014 \u00fatil com <code>pass<\/code>, <code>secret-tool<\/code> ou um cofre externo.<\/p>\n<h2>Backup agendado com systemd timer<\/h2>\n<p>Juntando tudo: um backup noturno de <code>\/srv<\/code> para o remote criptografado, com vers\u00f5es antigas preservadas e uma trava contra apag\u00e3o acidental. Primeiro, o script:<\/p>\n<pre><code class=\"language-bash\">sudo tee \/usr\/local\/bin\/rclone-backup.sh &gt;\/dev\/null &lt;&lt;'EOF'\n#!\/usr\/bin\/env bash\nset -euo pipefail\nDIA=$(date +%F)\nexec \/usr\/bin\/rclone sync \/srv cofre:srv \\\n  --filter-from \/etc\/rclone\/filtros.txt \\\n  --backup-dir \"cofre:srv-versoes\/$DIA\" \\\n  --max-delete 500 \\\n  --transfers 8 \\\n  --log-file \/var\/log\/rclone\/backup.log \\\n  --log-level INFO \\\n  --stats 5m --stats-one-line\nEOF\nsudo chmod 755 \/usr\/local\/bin\/rclone-backup.sh\nsudo mkdir -p \/var\/log\/rclone<\/code><\/pre>\n<p>O que cada flag protege:<\/p>\n<ul>\n<li><code>--backup-dir<\/code>: arquivo que o <code>sync<\/code> apagaria ou sobrescreveria vai para <code>srv-versoes\/AAAA-MM-DD\/<\/code> em vez de sumir. \u00c9 o seu &#8220;lixo&#8221; com data.<\/li>\n<li><code>--max-delete 500<\/code>: ao atingir 500 exclus\u00f5es o sync para de apagar e termina com erro. Um disco de origem vazio por falha de montagem n\u00e3o vira um bucket vazio \u2014 e o que chegou a ser apagado ainda est\u00e1 no <code>--backup-dir<\/code>.<\/li>\n<li><code>--log-file<\/code> e <code>--stats-one-line<\/code>: hist\u00f3rico leg\u00edvel para auditoria.<\/li>\n<\/ul>\n<p>O servi\u00e7o roda como root e l\u00ea a configura\u00e7\u00e3o de <code>\/etc\/rclone<\/code>. Copie para l\u00e1 o <code>rclone.conf<\/code> j\u00e1 cifrado e ponha a senha dele num arquivo de ambiente s\u00f3 para root:<\/p>\n<pre><code class=\"language-bash\">sudo install -m 600 ~\/.config\/rclone\/rclone.conf \/etc\/rclone\/rclone.conf\nsudo install -m 600 \/dev\/null \/etc\/rclone\/backup.env\necho 'RCLONE_CONFIG_PASS=senha-do-arquivo-de-config' | sudo tee \/etc\/rclone\/backup.env &gt;\/dev\/null<\/code><\/pre>\n<p>Agora o service e o timer:<\/p>\n<pre><code class=\"language-ini\"># \/etc\/systemd\/system\/rclone-backup.service\n[Unit]\nDescription=Backup de \/srv para a nuvem com rclone\nWants=network-online.target\nAfter=network-online.target\n\n[Service]\nType=oneshot\nEnvironmentFile=\/etc\/rclone\/backup.env\nEnvironment=RCLONE_CONFIG=\/etc\/rclone\/rclone.conf\nExecStart=\/usr\/local\/bin\/rclone-backup.sh\nNice=10\nIOSchedulingClass=idle<\/code><\/pre>\n<pre><code class=\"language-ini\"># \/etc\/systemd\/system\/rclone-backup.timer\n[Unit]\nDescription=Backup noturno com rclone\n\n[Timer]\nOnCalendar=*-*-* 02:30:00\nRandomizedDelaySec=15m\nPersistent=true\n\n[Install]\nWantedBy=timers.target<\/code><\/pre>\n<pre><code class=\"language-bash\">sudo systemctl daemon-reload\nsudo systemctl enable --now rclone-backup.timer\nsudo systemctl start rclone-backup.service     # primeiro teste, na hora\nsystemctl list-timers rclone-backup.timer\njournalctl -u rclone-backup.service -n 50<\/code><\/pre>\n<p><code>Persistent=true<\/code> roda o backup perdido se a m\u00e1quina estava desligada \u00e0s 02:30. O b\u00e1sico de units e timers est\u00e1 em <a href=\"\/2026\/09\/dominando-o-systemd-comandos-essenciais\/\">Dominando o systemd<\/a>. Para bancos de dados, n\u00e3o copie os arquivos do datadir em uso: gere o dump antes (o <a href=\"\/2026\/09\/databasus-backup-de-postgresql-mysql-e-mariadb-com-restore-testado\/\">Databasus<\/a> faz isso com restore testado) e deixe o rclone levar o dump para fora do servidor.<\/p>\n<p>E backup que nunca foi restaurado \u00e9 esperan\u00e7a, n\u00e3o backup. Teste de tempos em tempos:<\/p>\n<pre><code class=\"language-bash\">rclone check \/srv cofre:srv --filter-from \/etc\/rclone\/filtros.txt --one-way\nrclone copy cofre:srv\/etc\/nginx \/tmp\/restore-teste -P<\/code><\/pre>\n<h2>Montando a nuvem como diret\u00f3rio: rclone mount<\/h2>\n<p>O <code>rclone mount<\/code> exp\u00f5e qualquer remote como sistema de arquivos via FUSE. Programas que s\u00f3 entendem caminho local passam a ler e gravar no bucket:<\/p>\n<pre><code class=\"language-bash\">mkdir -p ~\/nuvem\nrclone mount cofre: ~\/nuvem \\\n  --vfs-cache-mode full \\\n  --vfs-cache-max-size 20G \\\n  --daemon\n\nls ~\/nuvem\nfusermount3 -u ~\/nuvem       # desmontar<\/code><\/pre>\n<p>O <code>--vfs-cache-mode<\/code> define quanto o rclone guarda em disco local. Sem cache (<code>off<\/code>), muitos programas falham porque o objeto remoto n\u00e3o aceita escrita aleat\u00f3ria. <code>writes<\/code> j\u00e1 resolve a maioria dos casos; <code>full<\/code> cacheia tamb\u00e9m a leitura e \u00e9 o que se comporta mais como um disco. Uma pegadinha: a escrita sobe para a nuvem alguns segundos depois de o arquivo ser fechado (<code>--vfs-write-back<\/code>, padr\u00e3o 5 s). Desmontar no meio disso deixa o upload pendente no cache local \u2014 espere o log confirmar antes de desmontar ou desligar.<\/p>\n<p>Para montar no boot, use um service do systemd com <code>Type=notify<\/code> e sem <code>--daemon<\/code>, ou uma linha no <code>\/etc\/fstab<\/code> com o tipo <code>rclone<\/code> (a man page do <code>rclone mount<\/code> traz os dois exemplos). Para outros usu\u00e1rios enxergarem a montagem, habilite <code>user_allow_other<\/code> em <code>\/etc\/fuse.conf<\/code> e passe <code>--allow-other<\/code>.<\/p>\n<h2>Servindo arquivos: serve e a nova GUI<\/h2>\n<p>O caminho inverso: o rclone vira servidor e exp\u00f5e um remote por protocolo padr\u00e3o. <code>rclone serve<\/code> fala HTTP, WebDAV, FTP, SFTP, S3, NFS, DLNA, API REST do restic e o plugin de volumes do Docker:<\/p>\n<pre><code class=\"language-bash\"># WebDAV com autentica\u00e7\u00e3o, para montar no gerenciador de arquivos\nrclone serve webdav cofre:compartilhado --addr :8080 --user nilton --pass 'troque-isto'\n\n# um S3 compat\u00edvel na frente de qualquer backend (at\u00e9 de um Google Drive)\nrclone serve s3 gdrive:dados --addr :9000 --auth-key CHAVE,SEGREDO\n\n# reposit\u00f3rio do restic direto num remote\nrclone serve restic meus3:restic --addr 127.0.0.1:8000<\/code><\/pre>\n<p>O padr\u00e3o \u00e9 escutar s\u00f3 em <code>127.0.0.1<\/code>. Abriu para a rede, ponha TLS (<code>--cert<\/code> e <code>--key<\/code>) ou um proxy reverso na frente.<\/p>\n<p>Desde a 1.74 o bin\u00e1rio traz uma <strong>interface web embutida<\/strong>. O comando sobe a API de controle remoto e a GUI em portas locais, gera credenciais e abre o navegador j\u00e1 autenticado:<\/p>\n<pre><code class=\"language-bash\">rclone gui                                  # desktop\nrclone gui --no-open-browser --addr localhost:5580\n# num servidor: ssh -L 5580:localhost:5580 usuario@servidor<\/code><\/pre>\n<p>Para quem quer navegar nos arquivos com uma interface web completa, multiusu\u00e1rio, o <a href=\"\/2026\/09\/filestash-no-ubuntu-e-debian-instalacao-por-binario-e-comparacao-com-o-file-browser\/\">Filestash<\/a> e o <a href=\"\/2026\/09\/filebrowser-quantum-o-sucessor-do-file-browser-que-foi-arquivado\/\">FileBrowser Quantum<\/a> s\u00e3o outra categoria de ferramenta \u2014 e podem servir um diret\u00f3rio montado pelo rclone.<\/p>\n<h2>Desempenho e limites de banda<\/h2>\n<p>Os padr\u00f5es s\u00e3o conservadores: 4 transfer\u00eancias e 8 verificadores em paralelo. Para muitos arquivos pequenos em object storage, subir os dois ajuda bastante:<\/p>\n<pre><code class=\"language-bash\">rclone sync \/srv meus3:backups\/srv \\\n  --transfers 16 --checkers 32 \\\n  --fast-list \\\n  -P<\/code><\/pre>\n<ul>\n<li><code>--fast-list<\/code>: lista o bucket recursivamente em menos chamadas de API. Gasta mais mem\u00f3ria, economiza tempo e requisi\u00e7\u00f5es (que muitos provedores cobram).<\/li>\n<li><code>--checksum<\/code>: compara por hash em vez de data e tamanho, quando os dois lados suportam.<\/li>\n<li><code>--bwlimit<\/code>: aceita valor fixo ou uma tabela de hor\u00e1rios, para n\u00e3o derrubar o link no expediente:<\/li>\n<\/ul>\n<pre><code class=\"language-bash\">rclone sync \/srv meus3:backups\/srv --bwlimit \"08:00,2M 19:00,20M 23:00,off\"<\/code><\/pre>\n<p>Para diagn\u00f3stico, <code>rclone ncdu meus3:<\/code> mostra o uso de espa\u00e7o num navegador de terminal, e <code>rclone about meus3:<\/code> exibe a cota nos backends que a informam.<\/p>\n<h2>rclone, rsync ou restic?<\/h2>\n<ul>\n<li><strong>rsync<\/strong>: entre m\u00e1quinas Linux por SSH, com delta de blocos dentro do arquivo. Nisso ele continua melhor: o rclone transfere o arquivo inteiro quando algo muda.<\/li>\n<li><strong>rclone<\/strong>: quando o destino \u00e9 nuvem, bucket ou drive; c\u00f3pia entre nuvens; espelho leg\u00edvel arquivo a arquivo; montar ou servir um remote.<\/li>\n<li><strong>restic<\/strong> (ou Borg): backup com deduplica\u00e7\u00e3o, snapshots e reten\u00e7\u00e3o por pol\u00edtica. N\u00e3o substituem o rclone, combinam com ele: o restic usa o rclone como backend (<code>restic -r rclone:meus3:restic<\/code>) e herda os mais de 70 destinos.<\/li>\n<\/ul>\n<p>Uma regra simples: espelho e transporte, rclone; hist\u00f3rico de vers\u00f5es com deduplica\u00e7\u00e3o, restic por cima do rclone.<\/p>\n<h2>Comandos de bolso<\/h2>\n<pre><code class=\"language-bash\">rclone listremotes                         # remotes configurados\nrclone lsd remote:                         # diret\u00f3rios\/buckets\nrclone lsf -R remote:caminho               # lista para scripts\nrclone tree remote:caminho                 # \u00e1rvore\nrclone size remote:caminho                 # total de objetos e bytes\nrclone copyto arq.txt remote:dir\/novo.txt  # copiar com outro nome\nrclone cat remote:dir\/arq.txt              # conte\u00fado na sa\u00edda padr\u00e3o\nrclone check origem remote:destino         # conferir sem transferir\nrclone dedupe remote:                      # duplicados (comum no Google Drive)\nrclone purge remote:dir                    # apaga diret\u00f3rio e conte\u00fado (cuidado)\nrclone archive list remote:pacote.zip      # conte\u00fado de um zip\/tar no remote<\/code><\/pre>\n<h2>Fechando<\/h2>\n<p>O rclone faz uma coisa s\u00f3 \u2014 mover arquivos entre lugares \u2014 e faz com uma cobertura de backends que nenhuma outra ferramenta livre tem. Para um backup fora do servidor, quatro pe\u00e7as resolvem: um remote de object storage, um <code>crypt<\/code> em cima dele, um <code>rclone.conf<\/code> cifrado e um timer do systemd com <code>--backup-dir<\/code> e <code>--max-delete<\/code>. Comece sempre com <code>--dry-run<\/code> e teste o restore antes de precisar dele.<\/p>\n<p><strong>Continue na parte 2:<\/strong> veja como fazer uma <a href=\"\/2026\/09\/rclone-migracao-do-s3-para-gcs-ou-oci-parte-2\/\">migra\u00e7\u00e3o do Amazon S3 para Google Cloud Storage ou OCI com rclone<\/a>, com c\u00f3pia inicial, deltas, verifica\u00e7\u00e3o e plano de retorno.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Complete rclone guide 1.75: installation, S3 and Google Drive remotes, copy vs sync vs bisync, filters, encryption with crypt, encrypted rclone.conf, scheduled backup with systemd timer, FUSE mount, serve, and the new web GUI.<\/p>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[103,46,2,120],"tags":[410,106,513,514,58,512,463,511,460,123],"class_list":["post-1761","post","type-post","status-publish","format-standard","hentry","category-cloud","category-devops","category-linux","category-servidores","tag-backup","tag-cloud","tag-criptografia","tag-fuse","tag-go","tag-google-drive","tag-minio","tag-rclone","tag-s3","tag-systemd"],"_links":{"self":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/1761","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/comments?post=1761"}],"version-history":[{"count":3,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/1761\/revisions"}],"predecessor-version":[{"id":1770,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/posts\/1761\/revisions\/1770"}],"wp:attachment":[{"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/media?parent=1761"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/categories?post=1761"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.linuxpro.com.br\/en\/wp-json\/wp\/v2\/tags?post=1761"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}