🔧 openSUSE: Corrigindo Repositórios Corrompidos e Cache do Zypper
Usuários do openSUSE Tumbleweed frequentemente encontram erros durante o `dist-upgrade` (dup) quando um dos espelhos (mirrors) do repositório Packman falha na sincronização. O erro crítico bloqueia a atualização para evitar quebras de dependência.
| 📊 Ficha Técnica do Incidente | |
|---|---|
| ⚙️ Erro | repo_rpmmd: Document is empty (XML inválido) |
| ⏱️ Tempo Estimado | 2 a 5 Minutos |
| 📦 Requisitos | Terminal, Acesso Root (Sudo), Conexão Internet |
O Sintoma
Ao tentar rodar a atualização do sistema, o terminal retorna que o documento de metadados está vazio (0 bytes) ou corrompido, abortando a operação:
...
Erro ao construir o cache:
[packman] Falha ao armazenar .repo (1) em cache.
/var/cache/zypp/raw/packman/repodata/primary.xml.gz: repo_rpmmd: Document is empty
Aviso: Ignorando o repositório 'Packman' devido ao erro acima.
Alguns dos repositórios não foram atualizados devido a um erro.
A Solução (Fix)
Para resolver isso, precisamos forçar o zypper a descartar o cache local corrompido e baixar novamente os metadados brutos do servidor, importando chaves GPG se necessário.
sudo zypper --gpg-auto-import-keys ref -f
ref(refresh): Comando para atualizar a lista de repositórios.-f(force): Ignora o cache local e obriga o download dos arquivos do servidor.--gpg-auto-import-keys: Aceita automaticamente novas chaves de assinatura se o repositório tiver atualizado suas credenciais de segurança.
Após a execução com sucesso (aparecerá "Todos os repositórios foram atualizados"), você pode rodar novamente o comando de atualização do sistema:
sudo zypper dup
Se você administra servidores críticos, confira também nosso guia sobre Manutenção de Servidores Linux para automatizar essas correções.
Seu Linux Quebrou Após uma Atualização?
Erros de repositório e dependências quebradas podem parar sua operação. Podemos resolver problemas complexos em openSUSE, Ubuntu e Debian remotamente.
Solicitar Suporte Linux RemotoRecuperação de Sistema e Gestão de Pacotes.




