Guia de Backup OpenClaw — Proteja Seus Dados

Backup do OpenClaw — Proteja Seus Dados

Introdução

Imagine perder todo o contexto que seu assistente acumulou sobre você — suas preferências, projetos ativos, memórias de conversas passadas, skills personalizadas — tudo de uma vez. Sem backup, isso pode acontecer com uma falha de disco, uma migração mal feita ou até um simples erro de configuração. Backups regulares são a diferença entre um inconveniente de 10 minutos e horas ou dias de retrabalho.

O OpenClaw armazena dados em dois locais principais: o diretório de configuração (~/.openclaw/) e o workspace do agente (~/clawd/). Juntos, esses arquivos contêm tudo que torna seu assistente único: sua personalidade definida no SOUL.md, a memória acumulada de interações passadas, skills personalizadas que você criou, heartbeats configurados e, claro, a configuração técnica com suas integrações. Nenhum desses dados existe em um servidor da Anthropic ou do OpenClaw — eles são 100% seus, o que significa que a responsabilidade de protegê-los também é sua.

Este guia vai mostrar como fazer backups manuais rápidos, configurar backups automáticos com cron jobs, usar soluções de cloud sync e, o mais importante, como restaurar seu ambiente quando precisar. Seja para migrar para um novo servidor, se recuperar de uma falha ou simplesmente ter paz de espírito, este guia cobre tudo.

Pré-requisitos

Para seguir este guia você precisa de:

  • OpenClaw instalado e funcionando
  • Acesso ao terminal com permissões de leitura/escrita nos diretórios do OpenClaw
  • Espaço em disco suficiente para backups (geralmente 100MB-1GB dependendo do histórico)
  • Opcionalmente: conta em serviço cloud (Google Drive, Dropbox, S3) para backups remotos

O Que Fazer Backup

Antes de qualquer coisa, entenda o que precisa ser preservado:

~/.openclaw/
├── config.yaml       # Configuração técnica principal (API keys, canais, modelos)
├── sessions/         # Histórico de conversas (pode ser grande — opcional)
└── credentials/      # Tokens de sessão de canais (WhatsApp, etc.)

~/clawd/
├── SOUL.md           # Personalidade e comportamento do agente — CRÍTICO
├── USER.md           # Suas informações pessoais — CRÍTICO
├── MEMORY.md         # Memória consolidada — CRÍTICO
├── HEARTBEAT.md      # Configuração de tarefas periódicas
├── TOOLS.md          # Notas sobre ferramentas disponíveis
├── memory/           # Logs diários de interações
│   ├── 2026-01-15.md
│   ├── 2026-01-16.md
│   └── ...
└── skills/           # Skills personalizadas que você criou
    ├── minha-skill-1/
    └── minha-skill-2/

Prioridade de backup:

  • Crítico (sempre fazer backup): SOUL.md, USER.md, MEMORY.md, config.yaml
  • Importante: memory/ (logs diários), skills/
  • Opcional: sessions/ (histórico detalhado, pode ser grande)

Backup Manual

Backup Completo

Para um backup completo e rápido:

# Cria arquivo comprimido com data no nome
tar -czvf openclaw-backup-$(date +%Y%m%d-%H%M).tar.gz \
  ~/.openclaw/ \
  ~/clawd/

# Verificar se o backup foi criado corretamente
ls -lh openclaw-backup-*.tar.gz
# Saída esperada: openclaw-backup-20260322-1430.tar.gz  (tamanho)

# Verificar conteúdo sem extrair
tar -tzvf openclaw-backup-20260322-1430.tar.gz | head -30

Backup Mínimo (Só o Essencial)

Se você quer um backup pequeno e rápido dos arquivos mais importantes:

# Backup apenas dos arquivos críticos
tar -czvf openclaw-essencial-$(date +%Y%m%d).tar.gz \
  ~/clawd/SOUL.md \
  ~/clawd/USER.md \
  ~/clawd/MEMORY.md \
  ~/clawd/HEARTBEAT.md \
  ~/.openclaw/config.yaml

# Tamanho típico: 50-200KB

Backup com Skills e Memória

Para backup mais completo sem o histórico pesado de sessões:

tar -czvf openclaw-completo-$(date +%Y%m%d).tar.gz \
  ~/.openclaw/config.yaml \
  ~/clawd/SOUL.md \
  ~/clawd/USER.md \
  ~/clawd/MEMORY.md \
  ~/clawd/HEARTBEAT.md \
  ~/clawd/TOOLS.md \
  ~/clawd/memory/ \
  ~/clawd/skills/

Backup Automático

Configuração com Cron

Configure backups automáticos diários:

# Editar crontab
crontab -e

# Adicionar linha para backup diário às 3h da manhã:
0 3 * * * tar -czvf ~/backups/openclaw-$(date +\%Y\%m\%d).tar.gz ~/.openclaw/ ~/clawd/ >> ~/backups/backup.log 2>&1

Script de Backup Inteligente

Crie um script mais sofisticado com rotação de backups e notificações:

#!/bin/bash
# ~/clawd/scripts/backup.sh

# Configurações
BACKUP_DIR="$HOME/backups/openclaw"
KEEP_DAYS=30
DATE=$(date +%Y-%m-%d_%H-%M)
LOG_FILE="$BACKUP_DIR/backup.log"

# Criar diretório se não existir
mkdir -p "$BACKUP_DIR"

echo "[$(date)] Iniciando backup..." >> "$LOG_FILE"

# Criar backup
BACKUP_FILE="$BACKUP_DIR/openclaw-$DATE.tar.gz"
tar -czvf "$BACKUP_FILE" \
  ~/.openclaw/config.yaml \
  ~/clawd/SOUL.md \
  ~/clawd/USER.md \
  ~/clawd/MEMORY.md \
  ~/clawd/HEARTBEAT.md \
  ~/clawd/memory/ \
  ~/clawd/skills/ \
  2>> "$LOG_FILE"

# Verificar se backup foi criado
if [ -f "$BACKUP_FILE" ]; then
  SIZE=$(du -h "$BACKUP_FILE" | cut -f1)
  echo "[$(date)] Backup criado: $BACKUP_FILE ($SIZE)" >> "$LOG_FILE"
else
  echo "[$(date)] ERRO: Backup não foi criado!" >> "$LOG_FILE"
  exit 1
fi

# Remover backups antigos (manter só últimos N dias)
find "$BACKUP_DIR" -name "*.tar.gz" -mtime +$KEEP_DAYS -delete
echo "[$(date)] Backups antigos removidos." >> "$LOG_FILE"

# Verificar quantidade de backups existentes
COUNT=$(ls "$BACKUP_DIR"/*.tar.gz 2>/dev/null | wc -l)
echo "[$(date)] Total de backups disponíveis: $COUNT" >> "$LOG_FILE"

Torne o script executável e agende:

chmod +x ~/clawd/scripts/backup.sh

# Crontab: backup diário às 2h, semanal às 1h da domingo com notificação
crontab -e
0 2 * * * ~/clawd/scripts/backup.sh
0 1 * * 0 ~/clawd/scripts/backup.sh && echo "Backup semanal OK" | mail -s "Backup OpenClaw" voce@email.com

Cloud Backup

Sincronização com rclone (Recomendado)

O rclone suporta dezenas de serviços cloud e é a ferramenta mais flexível:

# Instalar rclone
curl https://rclone.org/install.sh | sudo bash

# Configurar (interativo — escolha seu cloud)
rclone config
# Siga os prompts para configurar Google Drive, S3, Dropbox, etc.

# Sincronizar backups para o cloud
rclone sync ~/backups/openclaw gdrive:backups/openclaw --progress

# Adicionar ao cron após o backup local:
0 3 * * * ~/clawd/scripts/backup.sh && rclone sync ~/backups/openclaw gdrive:backups/openclaw

Sincronização com rsync (Servidor Remoto)

Se você tem outro servidor para usar como destino de backup:

# Sincronizar para servidor remoto
rsync -avz --delete \
  ~/.openclaw/ \
  ~/clawd/ \
  usuario@servidor-backup.com:/backups/openclaw/

# Com chave SSH (sem senha)
rsync -avz -e "ssh -i ~/.ssh/id_rsa" \
  ~/clawd/ \
  usuario@servidor-backup.com:/backups/openclaw/clawd/

S3 / Backblaze B2

Para backup em object storage (mais barato que Google Drive para backups):

# Instalar AWS CLI
pip install awscli

# Configurar credenciais
aws configure

# Enviar backup
aws s3 cp openclaw-backup-20260322.tar.gz s3://seu-bucket/backups/

# Ou sincronizar pasta inteira
aws s3 sync ~/backups/openclaw s3://seu-bucket/openclaw-backups/

Restaurar a Partir do Backup

Restauração Completa

Para restaurar tudo em um servidor limpo:

# 1. Instalar OpenClaw primeiro
npm install -g openclaw

# 2. Parar gateway se estiver rodando
openclaw gateway stop

# 3. Extrair backup
tar -xzvf openclaw-backup-20260322.tar.gz -C /

# 4. Restaurar permissões
chmod 600 ~/.openclaw/config.yaml
chmod 700 ~/clawd

# 5. Verificar integridade
openclaw doctor

# 6. Reiniciar
openclaw gateway start

Restauração Seletiva

Para restaurar apenas alguns arquivos:

# Listar conteúdo do backup
tar -tzvf openclaw-backup-20260322.tar.gz

# Extrair apenas o MEMORY.md
tar -xzvf openclaw-backup-20260322.tar.gz \
  ./home/usuario/clawd/MEMORY.md \
  -C /tmp/restore/

# Copiar para o local correto
cp /tmp/restore/home/usuario/clawd/MEMORY.md ~/clawd/MEMORY.md

Restauração no Novo Servidor (Migração)

# No servidor antigo: criar backup e enviar
tar -czvf openclaw-migracao.tar.gz ~/.openclaw/ ~/clawd/
scp openclaw-migracao.tar.gz usuario@novo-servidor:~/

# No novo servidor: instalar e restaurar
ssh usuario@novo-servidor
npm install -g openclaw
tar -xzvf openclaw-migracao.tar.gz -C /
openclaw doctor
openclaw gateway start

Para canais como WhatsApp, será necessário reconectar (novo QR code). Veja o guia de migração para detalhes.

Configuração Avançada

Backup Incremental com Git

Para versionar seu workspace e ter histórico completo de mudanças:

# Inicializar repositório privado
cd ~/clawd
git init
echo "*.log" >> .gitignore
echo "sessions/" >> .gitignore

# Commit inicial
git add SOUL.md USER.md MEMORY.md HEARTBEAT.md skills/
git commit -m "Initial backup"

# Push para repositório privado (GitHub, GitLab, Gitea)
git remote add origin git@github.com:usuario/openclaw-backup.git
git push -u origin main

Configure commit automático diário:

# Script de backup via git
cat > ~/clawd/scripts/git-backup.sh << 'EOF'
#!/bin/bash
cd ~/clawd
git add -A
git commit -m "Auto backup $(date +%Y-%m-%d_%H:%M)" --allow-empty
git push origin main
EOF
chmod +x ~/clawd/scripts/git-backup.sh

# Cron: commit diário à meia-noite
0 0 * * * ~/clawd/scripts/git-backup.sh

Atenção: Use repositório privado se você usar Git para backup. O SOUL.md e MEMORY.md contêm informações pessoais.

Erros Comuns e Soluções

ErroCausa ProvávelSolução
Permission denied ao criar backupPermissões incorretas na pasta de destinomkdir -p ~/backups && chmod 755 ~/backups
Arquivo de backup corrompidoInterrupção durante criaçãoUse tar --verify para verificar; crie um novo backup
No space left on deviceDisco cheiodu -sh ~/backups/* para ver tamanho; remova backups antigos
Restauração restaura arquivos no local erradoPath absoluto vs. relativo no tarUse tar -xzvf backup.tar.gz -C / para extrair com paths absolutos
rclone falha na sincronizaçãoToken de autenticação expiradoExecute rclone config reconnect nome-do-remote:
Backup diário não executaErro no crontab ou script sem permissãoVerifique com crontab -l e teste manualmente o script

Boas Práticas

  • Regra 3-2-1: Mantenha 3 cópias dos dados, em 2 tipos de mídia diferentes, com 1 offsite (cloud ou servidor remoto). Backups locais sozinhos não protegem contra falha de hardware ou desastre físico.

  • Teste a restauração regularmente: Um backup que você nunca testou restaurar é um backup que pode não funcionar quando você precisar. Uma vez por mês, faça uma restauração de teste em um diretório temporário.

  • Documente o processo: Escreva os passos de restauração em um documento acessível fora do servidor (email pessoal, note pessoal). Você vai precisar dessa informação exatamente quando o servidor não estiver acessível.

  • Monitore o tamanho dos backups: Backups que crescem de forma inesperada podem indicar acúmulo de logs ou sessões. Configure alerta quando o diretório de backup ultrapassar um tamanho limite.

  • Criptografe backups com dados sensíveis: Se você faz backup em cloud ou servidores de terceiros, considere criptografar antes: tar -czf - ~/clawd/ | openssl enc -aes-256-cbc -e > backup.tar.gz.enc

  • Retire API keys dos backups antes de compartilhar: Se precisar enviar o backup para suporte ou outro ambiente, remova o config.yaml ou substitua as keys por placeholders antes de enviar.

  • Automatize e esqueça: O melhor backup é o que acontece automaticamente, sem depender de você lembrar de fazê-lo manualmente. Configure o cron e verifique os logs ocasionalmente.

Perguntas Frequentes

Com que frequência devo fazer backup? Para uso pessoal, backup diário automático é suficiente. Para uso em produção ou empresarial, considere backups a cada 6 horas. O fator decisivo é: “quantas horas de dados eu toleraria perder?” Se a resposta for “nenhuma”, use backup quase em tempo real com git ou rsync.

Qual é o tamanho típico de um backup? Depende do histórico de memórias e sessions. A configuração básica (sem sessions) geralmente fica em 1-10MB. Com logs diários de memória por 6 meses, pode chegar a 50-200MB. Sessions completas podem adicionar GBs. Para economizar espaço, exclua sessions antigas do backup.

Meu backup está na nuvem — está seguro? Depende de como está configurado. Backups em Google Drive ou Dropbox pessoal são criptografados em trânsito e em repouso, mas o provedor tem acesso técnico. Para máxima segurança, criptografe localmente antes de enviar para a nuvem. Para a maioria dos usos, cloud pessoal é suficientemente seguro.

Posso fazer backup pelo próprio OpenClaw? Sim! Configure uma skill de backup ou use o heartbeat para executar o script de backup periodicamente. O OpenClaw pode inclusive verificar se o backup foi bem-sucedido e te notificar por WhatsApp ou Telegram em caso de falha.

Como restaurar sem perder as configurações de canal (WhatsApp session)? As sessions do WhatsApp ficam em ~/.openclaw/sessions/. Inclua essa pasta no backup. No entanto, sessions do WhatsApp têm vida útil limitada e frequentemente precisam de reconexão via QR code, mesmo com backup. Telegram e Discord são mais estáveis e geralmente restauram automaticamente.

Próximos Passos