Resolver as atualizações do yum para o meu ambiente RHEL 6.4 (Fedora 12+) consumiu muito tempo, mas foi bem-sucedido. Quero compartilhar o que fiz e o que poderia ter sido melhor.
- Identifiquei todas as duplicatas do pacote. Presumivelmente,
package-clean --dupesfaz o mesmo. Outro comando útil foirpm -qa package-name, que identificou pacotes duplicados por prefixo ou nome de pacote genérico. - Eu então removi todas versões de
coreutilsecoreutils-lib, mais ou menos seguindo essa sequência de comandos: (i)rpm -e --nodeps coreutils, (ii)rpm -e --nodeps coreutils-lib, (iii)updatedbe (iv)yum clean all. OBSERVAÇÃO: a remoção decoreutilsgeralmente NÃO é recomendável, pois gera muitos outros comandos inoperantes. - Eu reinstalei as versões mais recentes de
coreutilsecoreutils-lib:yum install coreutils coreutils-lib - Neste ponto, eu ainda tinha 100 pacotes duplicados. Infelizmente, meu EC2 está executando uma micro instância e, em várias execuções de
package-cleanup --cleandupes, tive problemas de alocação de memória, bem como problemas de memória. Assim, tive que remover manualmente cada pacote duplicado, usando o comando mencionado anteriormente:rpm -e --nodeps package-name. - Após a remoção dos pacotes duplicados, executei (i)
updatedb, (ii)yum clean alle (iii)yum update.
Depois de tudo isso, as coisas agora funcionam.
SUGESTÃO: seria útil se houvesse um comando como "yum self-solve". Ele exerceria uma política de adivinhação de quais pacotes eliminar e o que manter, de modo a atualizar um ambiente obsoleto. Se tal comando já existir, por favor me avise.