Eu sei que isso yum clean all
não necessariamente limpa todos os arquivos do pacote. Eu sei de " Talvez você queira: rm -rf /var/cache/yum " que talvez eu precise, meu Deus, limpe sem rodeios todos os arquivos /var/cache/yum
. Mas acabei de descobrir que definitivamente não quero limpar todos os /var/cache/yum
, porque evidentemente o registro de quais pacotes estão instalados também é mantido lá em algum lugar. Sem certos arquivos em /var/cache/yum
, rpm -qa
parece não imprimir nada.
Portanto, existe uma regra simples para a qual outros arquivos abaixo /var/cache/yum
podem ser excluídos manualmente, para economizar espaço excluindo arquivos de pacote que não são necessários (ou podem ser facilmente baixados novamente), mas preservando o estado de instalação do sistema?
É possível que eu esteja completamente enganado em uma ou mais das minhas suposições aqui. Correções são bem-vindas, se assim for.
Atualização: estou pulando alguns detalhes aqui, mas copiando tudo do /var/cache/yum
sistema que tinha para o sistema que não tinha não corrigiu ( rpm -qa
ainda não está imprimindo nada), então parece que uma das minhas suposições está errada e o o estado instalado do sistema é mantido em algum lugar /var
diferente de /var/cache/yum
.
Atualização 2: Eu estava errado em uma de minhas suposições. Como acabei descobrindo, e como @shodanshok aponta em uma resposta, o banco de dados de pacotes atualmente instalados está abaixo de /var/lib/rpm
, não /var/cache/yum
. Portanto, limpar tudo /var/cache/yum
deve ser seguro.
Correr
yum clean all
geralmente é suficiente para todas as intenções e propósitos, pois deixará apenas um pouco de espaço usado para trás. A exceção é quando você desativou um repositório antes de executaryum clean all
, proibindoyum
a limpeza desse cache de repositório.De qualquer forma, a exclusão
/var/cache/yum
não deve ter efeitos ruins, especialmente porque o banco de dados RPM está localizado/var/lib/rpm
em/var/cache
.Uma caixa Red Hat sem nenhum pacote rpm instalado está quebrada.
Primeiro, confirme se este é um host que deve ter um banco de dados rpm real. Não algum contêiner estranho ou chroot ou outra coisa simplificada. Determine se o sistema deve obter atualizações até
yum update
. E verifiqueyum history
se os comandos yum mais recentes foram registrados. O yum não entraria nesse estado sozinho, ele se recusaria a remover pacotes protegidos.Ter um sistema funcional, mas nada em consultas de rpm, implica que alguém fez algo muito inseguro para o rpm. Como remover o banco de dados rpm sem apagar pacotes. Vai ser uma verdadeira bagunça para limpar. Conforme discutido, remover os caches do yum não fará isso.
Considere reinstalar um novo host do instalador. Restaurar dados. As vantagens desta partida limpa incluem começar com um sistema de rpm bom conhecido. E possivelmente você pode aproveitar para fazer grandes atualizações de software.
Ou pode ser possível recuperar de um banco de dados rpm corrompido . Supondo que qualquer banco de dados ainda exista. Faça isso apenas se não puder restaurar a partir do backup e entenda qual back-end de banco de dados seu rpm está usando. Faça backup do host, incluindo rpm db, antes de tentar. O host precisaria ter algum valor para você, se fazer uma cirurgia em seu banco de dados de pacotes for mais fácil do que uma reinstalação.