Skip to content

Como copiar arquivos usando o rClone

O objetivo deste tutorial é fornecer informações para permitir o uso do aplicativo rClone para fazer cópia de arquivos do Drive de uma conta no Google Workspace para a nova área de armazenamento oferecida pela STI no Google Cloud Storage (SAN). O Google possui algumas opções de cópia ou transferência dos dados, que podem ser consultados no site https://takeout.google.com/.

Info

A vantagem deste aplicativo é que você não necessita fazer o download e posteriormente o upload dos seus arquivos, o processo ocorre em memória. Isso é muito importante quando o volume de dados do seu drive é superior ao espaço disponível no disco local do seu desktop.

Para entender como funciona esta nova área você pode acessar o portal https://san.sti.usp.br. Neste ambiente (Google Cloud Storage) um bucket é o equivalente a um Drive Individual ou Drive Compartilhado. Você recebeu um email com o nome deste bucket, que possui o formato usp-gcp-000001-aaaaa.usp.br. A permissão de acesso é através de dois grupos disponibilizados:

  • usp-gcp-000001-aaaaa.usp.br-viewer@usp.br, cujos membros têm apenas permissão de leitura

  • usp-gcp-000001-aaaaa.usp.br-writer@usp.br, cujos membros têm apenas permissão de leitura e gravação

Instalação e Configuração do rClone#

Esta é uma ferramenta gratuita disponível para plataformas Windows, Linux e MacOS em https://rclone.org/downloads/. A STI não oferece suporte ao seu uso, mas preparamos este documento para facilitar o processo de cópia.

Efetue o download de acordo com o ambiente que tem disponível. Neste tutorial abordaremos o seu uso no Windows, mas todos os conceitos se aplicam às outras plataformas.

Não é necessária instalação. Faça o download do arquivo e descompacte em uma pasta qualquer. Neste documento colocaremos os arquivos na pasta c:\rclone. Após a descompactação esta pasta deverá apresentar os arquivos mostrados abaixo:

alt

Crie um arquivo texto com nome rclone.conf nesta pasta e copie o conteúdo abaixo para ele.

[gdrive_origem] 
type = drive 
scope = drive 
root_folder_id = 
team_drive = 

[san] 
type = google cloud storage 
object_acl = authenticatedRead 
bucket_acl = 
location = southamerica-east1 
bucket_policy_only = true 

Este arquivo tem uma configuração mínima do rClone que atende à nossa necessidade de cópia de arquivos do drive de uma conta no Google (entrada com nome gdrive_origem) para um bucket do Google Cloud Storage (entrada com nome san).

Para garantir que o arquivo está válido acesse o terminal na pasta c:\rclone (clique no botão direito do mouse e, em seguida, “Abrir no Terminal”.

alt

Digite o comando abaixo:

.\rclone.exe --config=.\rclone.conf config show 

Será exibida a listagem do arquivo de configuração criado no passo anterior.

alt

Se a tela acima foi mostrada o arquivo está pronto para os próximos passos, caso contrário será necessário rever/refazer o processo antes de continuar.

Copiando arquivos com rClone#

O processo de cópia possui várias etapas:

  1. Autorização da conta de origem
  2. Autorização da conta para gravar no bucket (Google Cloud Storage)
  3. Cópia de todos os arquivos do drive da conta de origem para o bucket
  4. Cópia de uma pasta do drive da conta de origem para o bucket
  5. Validação do processo de COPY/SYNC

Autorização da conta do Google Drive#

Acesse o Google Drive da sua conta de email no navegador para garantir que a autenticação já foi feita e, em seguida, entre no terminal do Windows para digitar o comando abaixo:

.\rclone.exe --config=.\rclone.conf config reconnect gdrive_origem:

alt

Tecle Enter para confirmar a autorização de acesso do rClone à sua conta de origem. Serão mostradas as contas de email autenticadas no navegador. Caso a conta esteja autenticada em outro navegador, copie o link e cole no navegador correto. Clique na conta de origem.

alt

Verifique as informações e clique em “Permitir”.

alt

Se tudo correu bem será exibida a mensagem:

alt

No terminal do Windows você verá a mensagem abaixo. Pressione Enter novamente.

alt

Para testar você pode consultar o total de arquivos que estão na conta autorizada, digitando o comando:

.\rclone.exe --config=.\rclone.conf size gdrive_origem: 

alt

Autorização da conta do Google Cloud Storage#

Você recebeu um email com a identificação/endereço do seu bucket. Precisaremos colocar esta informação para autorizar o acesso de gravação de arquivos.

Ele é um nome no formato usp-gcp-0000001-aaaaa.usp.br. Nas próximas instruções onde colocamos a informação <nome_bucket> você deve substituir pelo endereço que você recebeu por email.

Você pode acessar esta área de armazenamento via web colocando o endereço:

https://console.cloud.google.com/storage/browser/<nome_bucket>

Para autorizar o rClone a gravar nesta área, inicialmente acesse o drive da sua conta de email no navegador para garantir que a autenticação já foi feita e, em seguida, entre no terminal do Windows para digitar o comando abaixo:

.\rclone.exe --config=.\rclone.conf config reconnect san:<nome_bucket>

alt

Tecle Enter para confirmar a autorização de acesso do rClone à sua conta de origem. Serão mostradas as contas de email autenticadas no navegador. Caso a conta esteja autenticada em outro navegador, copie o link e cole no navegador correto. Clique na conta de origem.

alt

Verifique as informações e clique em “Permitir”.

alt

Se não ocorreram erros será exibida a mensagem:

alt

No terminal do Windows você verá a mensagem abaixo. Pressione Enter novamente.

alt

Para testar você pode consultar o total de arquivos que estão na conta autorizada, digitando o comando:

.\rclone.exe --config=.\rclone.conf size san:<nome_bucket>
alt

Cópia dos arquivos do drive da conta de origem para o bucket#

Após testar o acesso do rClone ao compartilhamento do Google Drive e ao bucket no USP SAN (Google Cloud Storage) nós podemos copiar os arquivos para esta nova área de armazenamento.

Temos ao menos dois comandos disponíveis para este procedimento: sync e copy.

Recomendamos que leia a documentação do aplicativo para entender a diferença entre eles e escolher a que melhor atenda à sua necessidade:

https://rclone.org/commands/rclone_copy/

https://rclone.org/commands/rclone_sync/

Execução do SYNC#

.\rclone --config=.\rclone.conf -P --delete-before --gcs-bucket-policy-only --stats-one-line --drive-skip-shortcuts --drive-stop-on-download-limit sync gdrive_origem: san:<nome_bucket>

Cuidado

O processo de sync irá remover todo o conteúdo do Google Cloud Storage (san:) que não estiver presente no Google Drive (grive_origem).

alt

Execução do COPY#

.\rclone --config=.\rclone.conf -P --delete-before --gcs-bucket-policy-only --stats-one-line --drive-skip-shortcuts --drive-stop-on-download-limit copy gdrive_origem: san:<nome_bucket>

Você pode consultar os arquivos copiados neste processo acessando esta área de armazenamento via web colocando o endereço:

https://console.cloud.google.com/storage/browser/<nome_bucket>

Cópia de uma pasta do drive da conta de origem para o bucket#

Após testar o acesso do rClone ao compartilhamento do Google Drive e ao bucket no USP SAN (Google Cloud Storage) nós podemos copiar os arquivos para esta nova área de armazenamento.

Se você necessita copiar apenas uma(s) pasta(s) do seu drive pode especificá-la no comando do rClone. O destino pode ser a raiz do bucket ou uma pasta também.

https://rclone.org/commands/rclone_copy/

.\rclone --config=.\rclone.conf -P --delete-before --drive-scope "drive" --gcs-bucket-policy-only --stats-one-line --drive-skip-shortcuts --drive-stop-on-download-limit copy gdrive_origem:\<nome_pasta_origem> san:<nome_bucket>\<nome_pasta_destino> 

Cuidado

O processo de copy irá sobrescrever todo os arquivos do Google Cloud Storage (san:) que tiver o mesmo nome na origem Google Drive (gdrive_origem:). Não há versionamento.

Você pode consultar os arquivos copiados neste processo acessando esta área de armazenamento via web colocando o endereço:

https://console.cloud.google.com/storage/browser/<nome_bucket>

Validação do processo de COPY/SYNC#

Após copiar os arquivos é possível validar o processo e listar os eventuais erros, recomendamos que execute o comando CHECK. Leia a documentação do aplicativo para entender o seu funcionamento.

https://rclone.org/commands/rclone_check/

Execução do CHECK:#

.\rclone --config=.\rclone.conf -P --delete-before --drive-scope "drive" --gcs-bucket-policy-only --stats-one-line --drive-skip-shortcuts --drive-stop-on-download-limit check gdrive_origem: san:<nome_bucket> 

alt

Informação

Arquivos que tenham o mesmo nome na mesma pasta são considerados duplicados e não são sincronizados. Arquivos suspeitos de contaminação por malware também são ignorados.