Backup com o Rclone
Sobre
Olá! Visitante, reunimos aqui, informações sobre a ferramenta Rclone, que é um programa de linha de comando para sincronizar arquivos e diretórios para diversos serviços de armazenamento em nuvem entre eles podemos destacar os seguintes:
- Amazon Drive
- Amazon S3 / Dreamhost / Ceph / Minio / Wasabi
- Backblaze B2
- Box
- Dropbox
- FTP
- Google Cloud Storage
- Google Drive
- HTTP
- Hubic
- Microsoft Azure Blob Storage
- Microsoft OneDrive
- Openstack Swift / Rackspace cloud files / Memset Memstore / OVH / Oracle Cloud Storage
- pCloud
- QingStor
- SFTP
- Webdav / Owncloud / Nextcloud
- Yandex Disk
- The local filesystem
Site Oficial: https://rclone.org/
Vídeo
Rclone
Características
- Os hashes MD5 / SHA1 são verificados o tempo todo para a integridade do arquivo
- Timestamps preservados em arquivos
- Sincronismos parciais suportados em todo o arquivo
- Modo de cópia para simplesmente copiar arquivos novos / alterados
- Modo de sincronização (ida) para fazer um diretório idêntico
- Modo de verificação para verificar a igualdade do arquivo hash
- Pode sincronizar de local e para a rede, por exemplo, duas contas da nuvem diferentes
- Criptografia opcional (Crypt)
- Montagem FUSE opcional
Instalação
- Método 01
curl https://rclone.org/install.sh | sudo bash
- Método 02
Instalando Dependências
apt-get install unzip
Baixar e Instalar o Rclone
wget -qO- https://downloads.rclone.org/rclone-current-linux-amd64.zip -O /tmp/rclone.zip; unzip /tmp/rclone.zip -d /usr/src; rm /tmp/rclone.zip cd /usr/src/rclone-v* cp rclone /usr/bin/ chown root:root /usr/bin/rclone chmod 755 /usr/bin/rclone mkdir -p /usr/local/share/man/man1 cp rclone.1 /usr/local/share/man/man1/ mandb
Configuração
rclone config No remotes found - make a new one n) New remote s) Set configuration password q) Quit config n/s/q> Tecle n (para iniciar uma nova configuração e digite um nome de sua preferencia para o cloud, no meu caso digitei meudropbox)
name> meudropbox Storage> 6 (Aqui você tecla 6 para usar o DropBox) Dropbox App Key - leave blank normally. app_key> Dropbox App Secret - leave blank normally. app_secret> Remote config Please visit: https://www.dropbox.com/1/oauth2/authorize?client_id=XXXXXXXXXXXXXXX&response_type=code If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth Log in and authorize rclone for access Waiting for code...
Autorizando Rclone no DropBox
- Realizar Tunelamento ssh para porta 53682 para pegar o código do DropBox
ssh [email protected] -D 53682
- Configurar Proxy
Servidor Socks: localhost 53682
Abrir no navegador localhost:53682
-------------------- [remote] app_key = app_secret = token = -------------------- y) Yes this is OK e) Edit this remote d) Delete this remote y/e/d> y
Verificando Arquivos
- Listar arquivos da Raiz (altere remote para o nome cadastrado no exemplo: meudropbox)
rclone lsd remote:
- Listar arquivos da pasta corrente
rclone ls remote:
- Copiar arquivos
rclone copy /home (Origem) remote:backup (Destino)
- Sincronizar
rclone sync source:/home dest:/backup/
Scripts
Para facilitar vamos criar os scripts abaixo com permissão 755 do chmod e salvo em /bin/ com o conteúdo abaixo:
- Para Backup faça:
nano /bin/Backup.sh
echo "Sync do computador para a nuvem - Upload" echo "*** Sincronizando do computador para a nuvem - subir ***" >> /var/log/rclone-`date +%d-%m-%Y`.log rclone sync /mnt/backup/ meudropbox:/backup/ --log-file=/var/log/rclone-`date +%d-%m-%Y`.log echo ==================================== >> /var/log/rclone-`date +%d-%m-%Y`.log
- Para Restaurar faça:
nano /bin/Restaurar.sh
echo "Sync da nuvem para o computador - Download" echo "*** Sincronizando da nuvem para o computador - baixar ***" >> /var/log/rclone-`date +%d-%m-%Y`.log rclone -v sync meudropbox:/backup/ /mnt/backup/ --log-file=/var/log/rclone-`date +%d-%m-%Y`.log echo ==================================== >> /var/log/rclone-`date +%d-%m-%Y`.log
- Para agendar o Backup faça:
Exemplo para agendar Backup todos os dias as 23:00
crontab -e
00 23 * * * /bin/Backup.sh
Ajuda
Lista de Comandos em: https://rclone.org/commands/
Documentação em: https://rclone.org/docs/
Bug Report
[Erro de autorização no Onedrive - Matheus Cardoso] Se você teve algum erro para autorizar sua conta do Onedrive pode ser que seu rclone esteja desatualizado. Por vezes os repositórios das distros demoram um pouco para atualizar seus pacotes, isso é normal.
- Solução por Matheus Cardoso
Para corrigir o problema é simples;
1) Remova sua versão atual do rclone
sudo apt purge rclone --auto-remove
2) Baixe a versão mais atual do programa no site oficial do rclone
https://rclone.org/downloads/
3) Instale o pacote baixado
4) Continue acompanhando o ótimo tutorial do vídeo :)