Como migrar contas cPanel de outro servidor com o Transfer Tool do WHM, Live Transfer, pkgacct e restorepkg, com testes antes da virada de DNS.
Para que serve
Se você revende hospedagem ou tem vários sites em cPanel em outro provedor, o próprio WHM traz uma ferramenta que copia as contas inteiras (arquivos, bancos de dados, e-mails, zonas DNS, certificados e configurações) para o servidor novo: o Transfer Tool. Este artigo mostra como migrar contas cPanel: preparar os dois servidores, transferir as contas com o mínimo de interrupção e, para casos isolados, usar os scripts pkgacct e restorepkg pela linha de comando.
Pré-requisitos
- Servidor de destino com cPanel & WHM instalado e licenciado. O cPanel roda em um sistema operacional próprio (instalado direto no servidor ou em uma VM do Proxmox); confira na documentação da cPanel quais distribuições e versões são suportadas. A licença é contratada à parte, diretamente com a cPanel ou um revendedor dela (a E-Consulters não revende cPanel). Veja também o artigo «Como escolher e instalar um painel de hospedagem: cPanel, Plesk, aaPanel, CloudPanel ou Virtualmin».
- Versão do cPanel no destino igual ou mais nova que a do servidor de origem.
- Acesso root (ou usuário com sudo) por SSH ao servidor de origem. Se o provedor antigo só oferece revenda, sem root, veja a seção "Sem acesso root na origem".
- Espaço em disco: a origem precisa de espaço livre para gerar o pacote de cada conta (até o tamanho da maior conta) e o destino precisa do total das contas mais esse mesmo espaço temporário.
- IPs do seu bloco /28 definidos para as contas que precisam de IP dedicado (WHM → IP Functions → Add a New IP Address).
Como migrar contas cPanel com o Transfer Tool
-
Iguale o ambiente. Antes de transferir, compare no WHM dos dois lados:
- Versões de PHP instaladas e módulos (EasyApache 4). Contas que usam PHP 7.4 na origem vão falhar se o destino só tiver 8.x. Instale as mesmas versões e, depois da migração, planeje a atualização.
- MySQL ou MariaDB e a versão. Migrar de MySQL 8 para MariaDB pode gerar erros de collation ao importar.
- Limites de pacotes (planos), que podem ser transferidos junto.
-
Libere o acesso na origem. Se a origem usa CSF, cPHulk ou outro firewall, adicione o IP do servidor novo à lista de permitidos para não ser bloqueado no meio da transferência. Exemplo com CSF:
csf -a IP_DO_SERVIDOR_NOVO "migracao cPanel"Confirme que o servidor novo consegue conectar por SSH:
ssh -p PORTA root@IP_ORIGEM. -
Reduza o TTL das zonas DNS na origem para 300 segundos alguns dias antes, como descrito no checklist de migração desta categoria.
-
Abra o Transfer Tool no WHM do servidor de destino: WHM → Transfers → Transfer Tool. Informe:
- Endereço (IP ou nome) e porta SSH da origem.
- Login como root, ou como usuário comum que eleva para root (necessário se a origem tem
PermitRootLogin no). - Autenticação por senha ou pela chave SSH do root do destino.
Clique em Fetch Account List.
-
Selecione o que transferir. Na lista, marque as contas, os pacotes e, se quiser, as configurações de serviço (Apache, Exim, MySQL etc.). Para cada conta, defina se ela recebe um IP dedicado. Comece com uma conta pequena para validar o processo antes de mover tudo.
-
Escolha o modo de transferência. A opção Live Transfer (disponível apenas entre servidores cPanel & WHM) reduz a parada: ao terminar cada conta, ela atualiza os registros A, MX e de nameserver para o destino, redireciona o tráfego de web e e-mail, copia as caixas de correio mais uma vez e suspende a conta na origem. Sem ela, você copia agora e faz a virada de DNS depois, por conta própria.
-
Acompanhe. A tela de progresso mostra a fila de empacotamento, cópia e restauração de cada conta. O log completo de cada sessão fica disponível pelo WHM em Transfers → Review Transfers and Restores. Leia os avisos: eles indicam bancos que falharam, versões de PHP ausentes e conflitos de nome.
-
Teste cada conta antes de mudar o DNS (se não usou Live Transfer): aponte o domínio no arquivo
hostsdo seu computador para o IP novo, abra o site, entre no painel da conta e no webmail. -
Vire o DNS. Se os domínios usam os nameservers do servidor antigo, você precisa configurar os nameservers no servidor novo (WHM → Basic WebHost Manager Setup e registros glue no registrador) ou passar o DNS para outro serviço. Se o DNS está em um serviço externo (Cloudflare, Registro.br), basta trocar os registros A/AAAA/MX para os IPs novos.
-
Sincronize o que chegou depois. E-mails entregues no servidor antigo entre a cópia e a virada de DNS ficam lá. Copie as caixas de novo, por exemplo com rsync da pasta de e-mail de cada conta:
rsync -a -e ssh root@IP_ORIGEM:/home/USUARIO/mail/ /home/USUARIO/mail/ -
Emita os certificados. Depois que o DNS apontar para o servidor novo, rode o AutoSSL (WHM → SSL/TLS → Manage AutoSSL → Run AutoSSL For All Users).
Linha de comando: pkgacct e restorepkg
Para mover uma conta isolada, ou quando o Transfer Tool falha por timeout em uma conta muito grande, gere o pacote na origem e restaure no destino:
# na origem
/usr/local/cpanel/scripts/pkgacct USUARIO
# gera /home/cpmove-USUARIO.tar.gz
# copie para o destino
rsync -a --partial --info=progress2 /home/cpmove-USUARIO.tar.gz root@IP_DESTINO:/home/
# no destino
/usr/local/cpanel/scripts/restorepkg /home/cpmove-USUARIO.tar.gz
Para contas com dezenas de GB de arquivos, uma alternativa é gerar o pacote sem a pasta home (pkgacct --skiphomedir USUARIO), restaurar e depois copiar o /home/USUARIO com rsync, que pode ser repetido para pegar só as diferenças. Apague os arquivos cpmove-*.tar.gz dos dois lados ao terminar: eles contêm senhas e dados dos clientes.
Sem acesso root na origem
Se você tem apenas uma conta cPanel ou de revenda no provedor antigo, gere um backup completo pela interface do cPanel (Arquivos → Backup → Download a Full Account Backup), copie o arquivo para o servidor novo e restaure em WHM → Transfers → Transfer or Restore a cPanel Account. Alguns provedores também permitem que o Transfer Tool conecte com usuário e senha de revenda, com recursos limitados.
Como saber se funcionou
- Em WHM → List Accounts aparecem todas as contas, com o IP e o pacote corretos.
- O resumo da transferência não mostra erros (avisos devem ser lidos e resolvidos).
- Os sites abrem pelo IP novo, os bancos de dados aparecem em cada conta e um e-mail de teste é enviado e recebido.
dig +short MX dominio.com.bredig +short dominio.com.brretornam os valores novos.
Problemas comuns
Falha de autenticação ou conexão recusada
Firewall da origem bloqueando o IP novo, porta SSH diferente da padrão ou login de root desabilitado. Libere o IP, informe a porta correta ou use login por usuário com escalada para root.
"No space left on device" durante o empacotamento
A origem não tem espaço para gerar o arquivo da conta. Libere espaço, ou use o caminho do --skiphomedir com rsync descrito acima.
Site com erro 500 após a migração
Geralmente a versão de PHP da conta não existe no destino ou falta uma extensão. Confira em WHM → MultiPHP Manager e instale o que falta pelo EasyApache 4.
Banco de dados não foi importado
Veja o log da transferência: o erro mais comum é collation incompatível entre MySQL e MariaDB, ou tabelas corrompidas na origem (veja também o artigo «Backup de MySQL e MariaDB: mariadb-dump, mysqldump, mariadb-backup e XtraBackup»). Repare na origem e transfira a conta de novo, ou importe o dump manualmente.
Perguntas frequentes
O Transfer Tool copia e-mails e bancos de dados?
Sim. Ele leva a conta inteira: arquivos, bancos de dados, caixas de e-mail, zonas DNS, certificados e configurações.
Preciso de acesso root no servidor antigo?
Para o Transfer Tool completo, sim (ou um usuário que eleve para root). Sem root, gere o backup completo de cada conta pelo cPanel e restaure no WHM do servidor novo.
O que faz o Live Transfer?
Ao terminar cada conta, ele aponta DNS para o destino, redireciona web e e-mail, copia as caixas de correio mais uma vez e suspende a conta na origem, reduzindo a parada.
A versão do cPanel precisa ser a mesma nos dois servidores?
O destino precisa ter versão igual ou mais nova que a origem. Iguale também as versões de PHP e do banco de dados antes de transferir.
A E-Consulters fornece a licença do cPanel?
Não. A licença do cPanel é contratada à parte, diretamente com a cPanel ou com um revendedor dela.
Leitura complementar
Precisa de ajuda?
Se a transferência travar ou você precisar de IPs adicionais configurados no servidor para as contas, abra um ticket na área do cliente.
