YUM transação quebrada

0

No RHEL 7 ao atualizar com o YUM após algum tempo, a transação do YUM não foi concluída corretamente, pois a conexão com o servidor foi interrompida e a sessão do YUM não foi executada na tela.

--> Processing Conflict: firewalld-0.4.4.4-6.el7.noarch conflicts selinux-policy < 3.13.1-118.el7
--> Finished Dependency Resolution
You could try using --skip-broken to work around the problem
** Found 157 pre-existing rpmdb problem(s), 'yum check' output follows:
audit-2.7.6-3.el7.x86_64 is a duplicate with audit-2.6.5-3.el7_3.1.x86_64
audit-libs-2.7.6-3.el7.x86_64 is a duplicate with audit-libs-2.6.5-3.el7_3.1.x86_64
audit-libs-python-2.7.6-3.el7.x86_64 is a duplicate with audit-libs-python-2.6.5-3.el7_3.1.x86_64
bash-4.2.46-29.el7_4.x86_64 is a duplicate with bash-4.2.46-21.el7_3.x86_64
32:bind-libs-9.9.4-51.el7_4.2.x86_64 is a duplicate with 32:bind-libs-9.9.4-50.el7_3.1.x86_64
32:bind-libs-lite-9.9.4-51.el7_4.2.x86_64 is a duplicate with 32:bind-libs-lite-9.9.4-50.el7_3.1.x86_64
32:bind-license-9.9.4-51.el7_4.2.noarch is a duplicate with 32:bind-license-9.9.4-50.el7_3.1.noarch
...

Portanto, a transação não foi concluída e alguns pacotes estão listados em duas versões.

Nesse estado, o yum update informa:

# yum update
Loaded plugins: product-id, search-disabled-repos
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction, or "yum-complete-transaction --cleanup-only" and "yum history redo last", first to finish them. If those don't work you'll have to try removing/installing packages by hand (maybe package-cleanup can help).

E a transação falha.

Veja a solução de como foi possível resolver esse problema.

    
por Jaroslav Kucera 24.07.2018 / 14:06

1 resposta

2

Para corrigir o problema, é possível usar o seguinte comando:

$ yum history redo force-reinstall last --setopt=protected_multilib=false

Isso diz que yum executou a última transação novamente com o parâmetro force-reinstall . O --setopt=protected_multilib=false pode não ser necessário em todos os casos (no meu caso, devido ao problema do pacote grub2).

A transação pode relatar alguns erros nos pacotes listados duas vezes durante o processo, no entanto, termina e o estado dos RPMs parece estar correto.

No entanto, o yum ainda se queixa de transações inacabadas (mas não falha mais). É seguro removê-los agora com:

$ yum-complete-transaction --cleanup-only

A partir de agora, o YUM está operacional como antes.

    
por 24.07.2018 / 14:06

Tags