--- name: cwp-backup description: Criação e gestão de backups no CWP com scripts oficiais — backups de utilizador, gestão de localizações e restauro. disable-model-invocation: true --- # /cwp-backup - Backups CWP (Documentação Oficial) Gestão de backups no CWP usando scripts oficiais. **Zero assumptions, zero hallucinations** - apenas comandos documentados. **REGRA #38 - ZERO INVENCAO:** NUNCA improvisar comandos. Verificar estado actual ANTES de alterar. Pesquisar wiki CWP se necessario. Usar APENAS scripts oficiais. --- ## Servidor Alvo | Servidor | IP | MCP | User | |----------|-----|-----|------| | **CWP Principal** | 176.9.3.158 | ssh-unified | root | --- ## Documentação Base - [CWP Scripts](https://wiki.centos-webpanel.com/cwp-scripts) - [CWP Backups](https://wiki.centos-webpanel.com/category/backups) ### Documentação Hub (Consultar SEMPRE) **Manuais locais** (`Hub/06-Operacoes/Documentacao/Manuais/CWP/`): - `CWP-Manual-Completo.md` - Admin Guide (seccao Backup and Restore, Google Drive) + Wiki (Backup & Migration) - **503KB** - `CWP-Guia-do-Utilizador.md` - Painel utilizador (seccao Backup and Restore) - **72KB** **Quick Reference:** `Hub/06-Operacoes/Documentacao/Quick-Reference/QR-CWP.md` **NotebookLM (pesquisa AI sobre toda a documentacao CWP):** ``` mcp__notebooklm__notebook_query notebook_id:"0ded7bd6-69b3-4c76-b327-452396bf7ea7" query:"backup restore configuracao" ``` --- ## Paths Oficiais | Path | Descrição | |------|-----------| | `/backup/` | Localização padrão de backups | | `/scripts/user_backup` | Script de backup de utilizador | | `/usr/local/cwpsrv/htdocs/resources/admin/include/cron_backup.php` | Cron de backup | --- ## Comando Principal de Backup ### Criar Backup de Utilizador ```bash # COMANDO OFICIAL DOCUMENTADO sh /scripts/user_backup USERNAME ``` **Nota:** Este comando cria um backup completo da conta incluindo: - Ficheiros do site - Bases de dados - Emails - Configurações --- ## Scripts de Consulta ```bash # Listar utilizadores disponíveis para backup sh /scripts/list_users # Verificar owner de domínio sh /scripts/whoowns DOMINIO ``` --- ## Localização dos Backups ```bash # Ver backups existentes ls -lh /backup/ # Espaço usado por backups du -sh /backup/ ``` --- ## Workflows ### 1. Criar Backup Completo de Conta ```bash # 1. Identificar username sh /scripts/whoowns DOMINIO # 2. Criar backup sh /scripts/user_backup USERNAME # 3. Verificar criação ls -lh /backup/ | grep USERNAME ``` ### 2. Backup Antes de Operação Crítica ```bash # SEMPRE fazer backup antes de: # - Actualizar WordPress # - Migrar site # - Alterações massivas sh /scripts/user_backup USERNAME ``` ### 3. Verificar Espaço Disponível ```bash # Antes de criar backup, verificar espaço df -h /backup # Tamanho de conta específica du -sh /home/USERNAME/ ``` --- ## Configuração de Backups Automáticos **Via CWP Admin:** - CWP.admin → CWP Settings → Backup Configuration **Cron (documentado):** ```bash # O CWP usa este script para backups agendados /usr/local/cwpsrv/htdocs/resources/admin/include/cron_backup.php ``` --- ## Limitações Conhecidas (Documentadas) | Limitação | Descrição | |-----------|-----------| | **GUI Restore** | Documentação menciona que "não funciona confiavelmente" | | **Tamanho** | Backups grandes podem demorar | | **Espaço** | Verificar espaço antes de criar | --- ## Anti-Patterns (NUNCA FAZER) | Anti-Pattern | Risco | Alternativa | |--------------|-------|-------------| | Backup sem verificar espaço | Disco cheio | `df -h` primeiro | | Confiar só em backups locais | Perda total | Backup remoto também | | Restaurar via GUI | Falha | Restaurar manualmente | | Não testar backups | Backup inválido | Testar periodicamente | --- ## Validação Pós-Backup ```bash # 1. Verificar ficheiro criado ls -lh /backup/ | grep USERNAME | tail -1 # 2. Verificar integridade (tar) tar -tzf /backup/BACKUP_FILE.tar.gz > /dev/null && echo "OK" || echo "CORRUPTO" # 3. Verificar tamanho razoável # (deve ser similar ao tamanho da conta) du -sh /home/USERNAME/ ls -lh /backup/BACKUP_FILE.tar.gz ``` --- ## Restauro Manual (Procedimento Seguro) **Nota:** O restauro via GUI não é fiável segundo documentação. Procedimento manual: ```bash # 1. Extrair backup para pasta temporária mkdir /tmp/restore_test tar -xzf /backup/BACKUP_FILE.tar.gz -C /tmp/restore_test # 2. Verificar conteúdo ls -la /tmp/restore_test/ # 3. Restaurar ficheiros manualmente # (copiar para localização correcta) # 4. Corrigir permissões chown -R USERNAME:USERNAME /home/USERNAME/public_html/ # 5. Limpar temporário rm -rf /tmp/restore_test ``` --- ## Checklist de Execução - [ ] Verificar espaço em disco (`df -h`) - [ ] Identificar username correcto - [ ] Executar `sh /scripts/user_backup USERNAME` - [ ] Verificar ficheiro criado - [ ] Testar integridade do backup - [ ] Documentar backup realizado --- ## Boas Práticas 1. **Backup antes de qualquer operação destrutiva** 2. **Manter backups remotos** (Google Drive, S3) 3. **Testar restauro periodicamente** 4. **Documentar localização de backups** 5. **Limpar backups antigos** (>30 dias) --- **Versão:** 1.0.0 | **Autor:** Descomplicar® **Fonte:** wiki.centos-webpanel.com/cwp-scripts, wiki.centos-webpanel.com/category/backups