>_ DevTrendspt

Idioma

Início

Linguagens

Seções

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Segurança
JavaScript

Como Não Perder Sua Vida Digital: Backup com Um Clique da Conta Google

472 estrelas

Imagine este cenário: você acorda de manhã, tenta verificar seu e-mail e o Google informa que sua conta foi bloqueada. Sem explicação. Parece a abertura de um thriller? Infelizmente, para muitos usuários isso se tornou realidade. Em minha prática, encontrei inúmeras histórias de pessoas perdendo acesso a dez anos de correspondência, contatos e calendário apenas por causa de um erro de algoritmo de segurança ou uma sequência infeliz de eventos.

Claro, o Google tem o serviço Takeout, mas sejamos honestos: usá-lo regularmente é bastante trabalhoso. É lento, inconveniente e exige intervenção manual. É aí que entra o projeto node-google-backup, transformando o processo de backup em uma tarefa automatizada elegante.

O Que É Esta Ferramenta e Por Que Você Precisa Dela?

node-google-backup é um utilitário de linha de comando leve escrito em Node.js. Sua tarefa única, mas criticamente importante, é baixar seus e-mails, contatos e eventos do calendário, salvando-os em formatos padrão diretamente no seu disco rígido ou servidor.

Curiosamente, o autor do projeto, WeeJeWel, criou isso em resposta àqueles "contos de horror" sobre bloqueios de contas. O recurso principal aqui é a incrementabilidade. A ferramenta não vai baixar todos os seus gigabytes de e-mails do zero sempre. Ela "inteligentemente" baixa apenas o que apareceu desde a última sincronização.

NPM Version Sponsor Build & Publish NPM Package Build & Publish Docker Image

Por Que Isso É Conveniente?

Quando você executa o backup, não recebe um único arquivo enorme e ilegível. O utilitário cria uma estrutura de pastas organizada que é fácil de navegar mesmo sem programas especiais:

  • Contatos: todos os seus contatos no formato .vcf. Qualquer smartphone ou cliente de e-mail vai entendê-los.
  • Calendário: eventos no formato .ics.
  • E-mail: aqui é onde a mágica acontece. Os e-mails são salvos no formato .eml e organizados de acordo com três lógicas diferentes: por ID, por conversas e por etiquetas.

A propósito, para evitar ocupar espaço extra, o autor usou links simbólicos (symlinks). Fisicamente, o e-mail é armazenado na pasta By ID, enquanto todas as outras pastas contêm apenas links para ele. Esta é uma solução muito inteligente do ponto de vista da arquitetura de armazenamento.

Como Executar um Backup em 2 Minutos

Para começar, você precisará de uma "Senha de Aplicativo" do Google. Este é um código especial de 16 caracteres que permite que programas de terceiros se conectem securely à sua conta sem usar sua senha principal. Você pode criar uma nas configurações de segurança da sua conta Google.

Opção 1: Via Node.js (npx)

Se você tem Node.js instalado, nem precisa baixar nada. Basta executar o comando:

$ npx -y google-backup \
  --username "[email protected]" \
  --password "ваш-пароль-приложения" \
  --filepath "~/Backups/Google/"

Opção 2: Via Docker

Para entusiastas de containerização (e para quem quer executar isso em um servidor doméstico ou NAS), há uma imagem Docker pronta. Esta é provavelmente a forma mais conveniente de configurar backups regulares:

$ docker run \
  --env GOOGLE_BACKUP_USERNAME="[email protected]" \
  --env GOOGLE_BACKUP_PASSWORD="ваш-пароль-приложения" \
  --env GOOGLE_BACKUP_FILEPATH="/backups" \
  --env GOOGLE_BACKUP_SERVICES="mail,calendar,contacts" \
  --volume="~/Backups/Google/:/backups/" \
  ghcr.io/weejewel/google-backup

Casos Práticos de Uso: Como Usar Isso na Vida Real?

  1. Uma boa noite de sono: Configure cron em um servidor ou Raspberry Pi para que o script seja executado uma vez por semana. Agora, não importa o que aconteça com o Google, sua correspondência dos últimos 10 anos está sempre ao seu alcance.
  2. Migração: Se você decidir sair do ecossistema Google, esta ferramenta ajudará você a "extrair" dados em um formato limpo, pronto para importação em outros serviços.
  3. Busca local: O formato .eml é bem indexado por ferramentas de busca do sistema como Spotlight no macOS ou Windows Search. Às vezes encontrar um e-mail antigo em uma pasta local é mais rápido do que na interface web do Gmail.

Nuances Técnicas

O projeto é escrito em JavaScript e usa ativamente as capacidades de protocolos IMAP (para e-mail) e APIs correspondentes para contatos e calendário. É bom ver que o projeto está vivo: segundo o GitHub, é atualizado regularmente e as imagens Docker são construídas automaticamente através do GitHub Actions.

Você deveria experimentar? Com certeza, sim, se você valoriza seus dados. Este é um daqueles casos em que um pequeno utilitário resolve um enorme problema potencial. Como dizem, as pessoas se dividem em duas categorias: as que ainda não fazem backup e as que já fazem. Com node-google-backup, você pode passar para a segunda categoria em cinco minutos.

E se você também usa serviços da Apple, o mesmo autor tem um projeto similar para o iCloud. Mas isso é uma história completamente diferente.

Cuide dos seus dados!

Projetos relacionados