Ainda não há um cliente Linux oficial para o Google Drive, mas você pode fazer backup no Google Drive usando o rclone
utilitário na linha de comando. Nós mostramos como.
Índice
Onde está o Google Drive no Linux?
Apesar da promessa de suporte ao Linux “em breve” em 2012 , não há indicação de que o Google irá produzir um cliente Linux nativo para o Google Drive. Existem várias soluções de terceiros não oficiais, como InSync , overGrive e ODrive , e alguns navegadores de arquivos permitem a integração com seu Google Drive, como Arquivos no GNOME .
Os aplicativos de terceiros são produtos comerciais, exigindo uma compra definitiva ou uma assinatura. Eles funcionam bem, não custam muito e, de fato, overGrive tem uma versão gratuita, oferecendo funcionalidade limitada sem nenhum custo.
Mas e se você quiser criar e executar backups a partir da linha de comando? Ou incorporar essa funcionalidade em scripts? Tudo isso é possível graças a um aplicativo incrível chamado rclone
. Na verdade, com rclone
você pode fazer backup, baixar e sincronizar arquivos para mais de quarenta soluções de nuvem diferentes . É como rsync para nuvens.
Instalando rclone
rclone
quase certamente não será instalado em seu computador Linux por padrão. Felizmente, existe um script de instalação que deve funcionar em todas as distribuições. O processo de instalação usa curl . Nos computadores usados para pesquisar este artigo, o Fedora 31 e o Manjaro 18.1.0 já estavam curl
instalados, mas curl
precisavam ser instalados no Ubuntu 18.04 LTS.
No Ubuntu, execute este comando para instalá-lo:
sudo apt-get install curl
Depois de curl
instalado, instale rclone
com este comando:
curl https://rclone.org/install.sh | sudo bash
Quando a rclone
instalação for concluída, você verá uma mensagem de sucesso.
Isso instalou o rclone
programa em seu computador Linux. A próxima etapa é executar o processo de configuração e autenticar rclone
para acessar o Google Drive.
Criando uma conexão remota rclone
Conexões com serviços remotos em nuvem são chamadas de “remotas” no rclone
mundo. Precisamos criar um para o Google Drive. Inicie o rclone
processo de configuração com este comando:
configuração rclone
Existem muitas questões no processo de configuração. Mas não desanime, muitos deles podem ser deixados em seus valores padrão e simplesmente aceitos pressionando “Enter”.
rclone
informa que não há controles remotos configurados. Pressione “n” e pressione “Enter” para criar um novo controle remoto. Ele solicitará um nome. Vamos chamá-lo de “google-drive”. Use o nome que quiser.
Um longo menu permite que você escolha o tipo de armazenamento para o qual está criando uma conexão remota.
Percorra a lista até ver a entrada do Google Drive e anote seu número.
Podemos ver que, neste caso, é o número 13. Digite-o como o tipo de armazenamento e pressione “Enter”.
Será solicitado um ID de cliente de aplicativo do Google. Pressione “Enter” para aceitar o padrão.
Em seguida, será solicitado um segredo do cliente do aplicativo Google.
Novamente, basta pressionar “Enter”. Você deve fornecer o escopo que rclone
terá quando estiver operando em seu Google Drive. Pressione “1” e depois pressione “Enter”.
Para o “ID da pasta raiz”, basta pressionar “Enter”.
No prompt “Credenciais da conta de serviço”, pressione “Enter”.
No prompt “Editar configuração avançada”, basta pressionar “Enter”. No menu “Usar configuração automática”, pressione “y” e depois pressione “Enter”.
Isso faz rclone
com que você se comunique com o Google Drive e inicie seu navegador para permitir que você dê permissão para rclone
interagir com o Google Drive.
Na janela do seu navegador, clique na conta do Google que deseja usar.
Clique no botão “Permitir” para permitir o rclone
acesso ao seu Google Drive.
Quando a autenticação for concluída, você verá a mensagem “Sucesso!” mensagem na janela do navegador. Você pode fechar o navegador e retornar à janela do terminal.
No prompt “Configurar isto como um drive de equipe”, digite “n” e pressione “Enter”.
No menu “Sim, Editar, Excluir”, digite “y” e pressione “Enter”.
No menu final, digite “q” e pressione “Enter”.
O script de backup rclone
O rclone
aplicativo é muito rico em recursos. Isso é ótimo, mas significa que há muitas opções . O comando que veremos a seguir copia os arquivos de seu computador local para o Google Drive. Esta é uma cópia unilateral para a nuvem; não é uma sincronização bidirecional entre o Google Drive e o computador local – embora rclone
possa fazer isso. Estamos usando isso como uma forma básica de backup externo.
Digite (ou copie e cole) em um editor de texto e salve em seu computador. Nós chamamos isso gbk.sh
. Você pode chamá-lo do que fizer sentido para você.
#! / bin / bash / usr / bin / rclone cópia --update --verbose --transfers 30 --checkers 8 --contimeout 60s --timeout 300s --retries 3 --low-level-retries 10 --stats 1s "/ home / dave / Documentos "" google-drive: LinuxDocs "
Aqui está o que os parâmetros significam:
- copiar : copia os arquivos do computador local para o armazenamento remoto, pulando os arquivos que já estão presentes no armazenamento remoto.
- –Update : ignora todos os arquivos que estão no armazenamento remoto com um tempo de modificação mais recente do que o arquivo no computador local.
- –Verbose : Fornece informações sobre todos os arquivos transferidos.
- –Transfers 30 : Define o número de arquivos a serem copiados em paralelo.
- –Checkers 8 : Quantos “verificadores” executar em paralelo. Os verificadores monitoram as transferências em andamento.,
- –Contimeout 60s : O tempo limite da conexão. Ele define a hora que
rclone
tentará fazer uma conexão com o armazenamento remoto. - –Timeout 300s : Se uma transferência ficar ociosa por esse período de tempo, ela será considerada interrompida e será desconectada.
- –Retries 3 : se houver tantos erros, toda a ação de cópia será reiniciada.
- –Low-level-retries 10 : Uma nova tentativa de baixo nível tenta repetir uma operação com falha, como uma única solicitação HTTP. Este valor define o limite para o número de tentativas.
- –Stats 1s :
rclone
pode fornecer estatísticas sobre os arquivos transferidos. Isso define a frequência de atualização das estatísticas para um segundo. - “/ Home / dave / Documents” : o diretório local que vamos copiar para o armazenamento remoto.
- “Google-drive: LinuxDocs” : o diretório de destino no armazenamento remoto. Observe o uso de “google-drive”, que é o nome que demos a esta conexão remota durante a
rclone config
sequência. Observe também os dois pontos “:” que são usados como separador entre o nome do armazenamento remoto e o nome do diretório. Os subdiretórios são separados pela barra normal “/”. Se o diretório de destino não existir, ele será criado.
Alguns desses valores são os padrões, mas nós os incluímos aqui para que possamos discuti-los. Dessa forma, se você precisar alterar um valor, saberá qual parâmetro ajustar.
Torne o script executável com este comando:
chmod + x gbk.sh
Executando o Script de Backup
Nosso script de backup irá copiar nossa pasta Documentos para nosso Google Drive. Em nossa pasta Documentos, temos uma coleção de partituras.
Podemos iniciar o script de backup com este comando:
./gbk.sh
Solicitamos atualizações de estatísticas a cada segundo ( --stats 1s
) e também solicitamos uma saída detalhada ( --verbose
). Não será nenhuma surpresa, então, termos uma grande quantidade de saída na tela. Normalmente, é uma boa opção ativar a saída detalhada para uma nova funcionalidade, de modo que você possa detectar problemas. Você pode diminuir a quantidade de produção quando estiver feliz que as coisas estejam funcionando perfeitamente.
Recebemos um resumo final informando que 60 arquivos foram transferidos sem erros. A transferência demorou cerca de 24 segundos.
Vamos verificar em nosso Google Drive e ver o que aconteceu em nosso armazenamento em nuvem.
Um diretório “LinuxDocs” foi criado, então parece promissor. Se clicarmos duas vezes nele para dar uma olhada, podemos ver que todos os arquivos foram transferidos para o nosso Google Drive.
Usando rclone para visualizar arquivos no Google Drive
Podemos usar rclone
para espiar a pasta no Google Drive, direto da janela do terminal:
rclone ls google-drive: / LinuxDocs
A ponta do iceberg
É ótimo podermos realizar esse tipo de cópia diretamente da linha de comando. Podemos incorporar o uso de nosso armazenamento em nuvem em scripts e podemos programar a execução de scripts de backup usando cron
.
rclone
tem uma riqueza absoluta de comandos, você é encorajado a verificar sua documentação e excelente website . Nós mal arranhamos a superfície aqui, e um pouco de leitura e brincadeira rclone
vai retribuir o esforço muitas vezes.
Estritamente falando, este não é um backup verdadeiro. É uma cópia remota de seus arquivos e dados, o que é definitivamente uma boa coisa, mas é apenas uma cópia de arquivos. Ele não oferece controle de versão ou outros recursos que as verdadeiras soluções de backup ofereceriam.
Portanto, use rclone
em conjunto com outras técnicas de backup. Como outra camada de um regime de backup existente, rclone
é uma maneira fácil de armazenar seus dados em um local geograficamente removido de sua casa ou escritório. E isso deve ser uma coisa boa.