Se você já pensou em ter um serviço de bakcup nas nuvens, e acha que precisa gastar dinheiro para resolver esse problema, apresento-lhes o RCLONE. Quando descobri esse serviço simples de backup descobri que ele pode ser aplicado em diversas situações tanto nas empresas ou até mesmo na minha máquina pessoal. Se você possui contas Google Drive, Dropbox, OneDrive e outras diversas opções, você também pode aplicar esses conceitos do rclone.
Então pegue seu papel e caneta e anote essas informações que podem salvar sua pele, como já salvou a minha.
RCLONE
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
wget https://downloads.rclone.org/rclone-current-linux-amd64.deb
sudo dpkg -i rclone-current-linux-amd64.deb
ou você pode optar em instalar via APT
sudo apt instal rclone
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
Irá aparece as seguintes opções, vamos escolher a opção N
No remotes found - make a new one n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config /n/d/r/c/s/q> n <VAMOS ESCOLHER A OPÇÃO N>
Escolha um nome amigável para chamar o seu compartilhamento. Neste exemplo iremos configurar Microsoft OneDrive
name> oneDrive
Escolha qual tipo de armazenamento. Vamos escolher o Microsoft OneDrive. As opções podem mudar.
Type of storage to configure. Choose a number from below, or type in your own value 1 / Amazon Drive \ "amazon cloud drive" 2 / Amazon S3 (also Dreamhost, Ceph, Minio) \ "s3" 3 / Backblaze B2 \ "b2" 4 / Dropbox \ "dropbox" 5 / Encrypt/Decrypt a remote \ "crypt" 6 / Google Cloud Storage (this is not Google Drive) \ "google cloud storage" 7 / Google Drive \ "drive" 8 / Hubic \ "hubic" 9 / Local Disk \ "local" 10 / Microsoft OneDrive \ "onedrive" 11 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH) \ "swift" 12 / SSH/SFTP Connection \ "sftp" 13 / Yandex Disk \ "yandex" Storage> 10 <VAMOS ESCOLHER A OPÇÃO 10>
No nosso exemplo iremos deixar em branco o client_id.
client_id
No nosso exemplo iremos deixar em branco o client_secret
client_secret
No nosso exemplo vamos escolher a opção Y para auto configurar
Remote config 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 <VAMOS ESCOLHER A OPÇÃO Y>
Se não abrir automaticamente o navegador, você pode copiar o link a baixo no eu navegador
If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth
Você deverá logar na sua conta, no nosso caso Microsoft, e logo após aparecerá uma mensagem de Sucesso!
Is that okay? y) Yes n) No y/n> y <VAMOS ESCOLHER A OPÇÃO Y>
y) Yes this is OK e) Edit this remote d) Delete this remote y/e/d> <VAMOS ESCOLHER A OPÇÃO Y>
Para finalizar, vamos escolher a opção Q
No remotes found - make a new one 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 <VAMOS ESCOLHER A OPÇÃO Q>
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 diretorioLocal mydrive:/diretorioOrigem
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 “diretorioOrigem” para o computador local ou somente um arquivo de lá, use o seguinte comando:
rclone -v copy mydrive:/diretorioOrigem/arquivo.doc
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.
Comments