O Rclone é um programa de linha de comando para sincronizar arquivos e diretórios de/para diferentes serviços de nuvem, como o Google Drive, Dropbox, entre outros. Ele também possui uma versão com interface gráfica, o RcloneBrowser. A sincronização não é automática, devendo ser realizada manual ou agendada através de script no sistema operacional – sua operação lembra muito o comando rsync.
Instalação
Para instalar o programa no Linux, baixe o arquivo e instale-o com os seguintes comandos (supondo que o sistema seja 64 bits):
wget https://downloads.rclone.org/rclone-current-linux-amd64.deb sudo dpkg -i rclone-current-linux-amd64.deb
Sua instalação também pode ser realizada através de um pacote Snap. Originalmente, Snappy é um software de implantação e um sistema de gerenciamento de pacotes que foi projetado e construído pela Canonical para o sistema operacional Ubuntu phone. A ferramenta que permite usar os pacotes chama-se, snapd. Atualmente, ela funciona em várias distribuições Linux e, portanto, permite a implantação de software de forma independente de distribuição. Para sua instalação no Debian, use:
sudo apt install snapd
Para instalar o rclone usando o snap, execute:
sudo snap install rclone --classic
Para atualizá-lo, use o parâmetro “refresh” em vez de “install”; para desinstalar, “remove”.
Configuração
Execute o seguinte comando para iniciar a configuração:
rclone config
Um passo a passo atualizado está disponível no link. Basicamente, você deverá criar uma nova configuração (digite a letra n seguido de enter, escreva um nome, por exemplo “mydrive” ou “remote”, e tecle enter), escolher o serviço de uso (escreva drive para o Google Drive), deixando as outras opções em branco. Para “scope”, escolha “1”, e use “y” para “auto config”.
No “remote config”, digite “n” para ser apresentado o link que gerará o código de ativação do Google Drive. Nesse ponto, deve abrir uma janela de navegador para você fazer o login e autorizar a conexão com o Google. Por fim, escolha “n” para “team drive”, “y” para confirmar a configuração e “q” para sair.
Para eliminar o acesso do computador à nuvem, remova o arquivo de configuração: /home/NOME_DO_USUARIO/.config/rclone/rclone.conf
Utilização
Crie uma pasta (ou escolha uma já existente) para realizar a sincronização. Mesmo que escolha um link simbólico, a cópia também funciona – por exemplo, se estiver em uma VM Linux rodando em um host Windows e tiver um diretório compartilhado chamado “/media/sf_bkp”, é possível criar um link “ln -s /media/sf_bkp /home/user/bkp” e executar os comandos da home do usuário.
Se você estive 1 nível acima dela, basta executar o seguinte comando para sincronizar a pasta local “bkp” com a pasta que está na nuvem (caso contrário, deverá digitar o caminho completo da pasta local):
rclone -v sync bkp mydrive:/bkp
Caso a pasta não exista na nuvem, ela será criada e os arquivos enviados pela primeira vez. O parâmetro “-v” permite ver um log de mudanças na tela. Se o arquivo não existir na nuvem, ele é copiado; se já existir, é atualizado; se existir na nuvem e não existir no local, ele é APAGADO na nuvem.
Note que a ordem indica o sentido de fluxo dos arquivos: do computador local (que aparece antes) para a nuvem. Se quiser copiar a pasta “bkp” para o computador local ou somente um arquivo de lá, use o seguinte comando:
rclone -v copy mydrive:/bkp/teste.py .
Nesse caso, ele copia o arquivo “teste.py” da nuvem para o diretório local onde você executar o comando.
Para desconsiderar um diretório (com todos os seus arquivos) da sincronização sentido “local->Drive”, use o parâmetro “exclude”, conforme o exemplo (para desconsiderar a pasta “output”):
--exclude '/bkp/output/**'
A barra no início serve para indicar o caminho a partir da raiz de onde se está fazendo a sincronização. Os dois asteriscos servem para considerar todos os arquivos.
Dica: você pode usar o Rclone para baixar qualquer diretório (com estrutura de sub-diretórios) e seus arquivos de outros usuários, desde que compartilhados abertamente com link (“shared folder“). Primeiro, clique na seta para baixo que fica ao lado do nome da pasta e escolha a opção “Adicionar atalho do Google Drive” (“Add a shortcut to Drive”). Depois, clique e arraste esse atalho para a pasta a ser sincronizada (“bkp” no caso do exemplo desse post). Ao executar o comando de sincronização, tudo será copiado para o destino. Fonte: Fórum Rclone
Fontes