Dependência não resolvida após falha de atualização do yum (conexão ssh quebrada)

1

Hoje eu estava atualizando um dos servidores de produção (um dos muitos para testar atualizações e atualizar o restante dos computadores).

Logo após a execução da conexão yum update ssh foi interrompida: /. Após o login mais uma vez usando o screen sesion desta vez executo yum-complete-transaction mas tem problemas então executo com --skip-broken parametro. Isso funcionou bem para transações inacabadas, mas o problema com a dependência perl permanece. Eu tentei reinstalar o pacote perl, mas isso me dá um erro:


Loaded plugins: langpacks, presto, refresh-packagekit
Installed package 4: perl-5.14.2-201.fc16.x86_64 (with updates) is not available.
Error: There is nothing to be done

Esse erro eu fico tentando atualizar yum:


Loaded plugins: langpacks, presto, refresh-packagekit
Dependency resolution
-> Running transaction check
---> Package perl.x86_64 4:5.14.2-201. FC16 is updated
-> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: 1: perl-Pod-Escapes-1.04-201.fc16.noarch
-> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: 4: perl-libs-5.14.2-201.fc16.x86_64
-> Processing Dependency: perl = 4:5.14.2-201. FC16 for package: perl-threads-1.83-201.fc16.x86_64
---> Package perl.x86_64 4:5.14.3-202. FC16 is updated
---> Package perl-CGI.noarch 0:3.52-201. FC16 is updated
---> Package perl-CGI.noarch 0:3.52-202. FC16 is updated
---> Package perl-Module-Pluggable.noarch 1:3.90-201. FC16 is updated
---> Package perl-Module-Pluggable.noarch 1:3.90-202. FC16 is updated
---> Package perl-PathTools.x86_64 0:3.33-201. FC16 is updated
---> Package perl-PathTools.x86_64 0:3.33-202. FC16 is updated
---> Package perl-Pod-Simple.noarch 1:3.16-201. FC16 is updated
---> Package perl-Pod-Simple.noarch 1:3.16-202. FC16 is updated
---> Package perl-macros.x86_64 4:5.14.2-201. FC16 is updated
---> Package perl-macros.x86_64 4:5.14.3-202. FC16 is updated
---> Package perl-parent.noarch 1:0.225-201. FC16 is updated
---> Package perl-parent.noarch 1:0.225-202. FC16 is updated
---> Package perl-threads-shared.x86_64 0:1.37-201. FC16 is updated
---> Package perl-threads-shared.x86_64 0:1.37-202. FC16 is updated
---> Package perl-version.noarch 3:0.88-201. FC16 is updated
---> Package perl-version.noarch 3:0.88-202. FC16 is updated
-> Complete dependency resolution
Error: package: 4: perl-libs-5.14.2-201.fc16.x86_64 (@ updates)
          Requires: perl = 4:5.14.2-201. FC16
          Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates)
              perl = 4:5.14.2-201. FC16
          Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates)
              perl = 4:5.14.3-202. FC16
          Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora)
              perl = 4:5.14.1-188. FC16
Error: Package: perl-threads-1.83-201.fc16.x86_64 (@ updates)
          Requires: perl = 4:5.14.2-201. FC16
          Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates)
              perl = 4:5.14.2-201. FC16
          Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates)
              perl = 4:5.14.3-202. FC16
          Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora)
              perl = 4:5.14.1-188. FC16
Error: Package: 1: perl-Pod-Escapes-1.04-201.fc16.noarch (@ updates)
          Requires: perl = 4:5.14.2-201. FC16
          Removing: 4: perl-5.14.2-201.fc16.x86_64 (@ updates)
              perl = 4:5.14.2-201. FC16
          Updated by: 4: perl-5.14.3-202.fc16.x86_64 (updates)
              perl = 4:5.14.3-202. FC16
          Available: 4: perl-5.14.1-188.fc16.x86_64 (fedora)
              perl = 4:5.14.1-188. FC16
 You could try using - skip-broken to work around the problem
** Found 6 pre-existing problems of the RPM database. The result of the command "yum check":
1: perl-Pod-Escapes-1.04-202.fc16.noarch is a duplicate 1: perl-Pod-Escapes-1.04-201.fc16.noarch
1: perl-Pod-Escapes-1.04-202.fc16.noarch has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ')
4: perl-libs-5.14.3-202.fc16.x86_64 is a duplicate 4: perl-libs-5.14.2-201.fc16.x86_64
4: perl-libs-5.14.3-202.fc16.x86_64 has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ')
perl-threads-1.83-202.fc16.x86_64 is a duplicate perl-threads-1.83-201.fc16.x86_64
perl-threads-1.83-202.fc16.x86_64 has missing requirements perl = ('4 ', '5 .14.3', '202. FC16 ')

(isso é traduzido para o inglês da minha língua nativa)

Como lidar com isso? (da próxima vez vou usar tela para atualização do sistema)

Meu sistema é o Fedora 16 com o kernel 3.2.3-2.fc16.x86_64.

    
por B14D3 07.11.2012 / 13:27

2 respostas

0

Consigo resolver deps removendo perl-libs, perl-threads e perl-Pod-Escapes. Remover esses aplicativos foi fácil (sem dependência). Depois disso, yum update e tudo está ok, mesmo os aplicativos removidos foram atualizados (houve um problema com algum tipo de duplicatas que eu acho).

Lição para mim usar tela :)

    
por 07.11.2012 / 14:29
1

Execute rapidamente um yum clean all , seguido por uma verificação do banco de dados RPM - rpm --rebuilddb - Tente novamente.

E você está certo ... Definitivamente, use screen da próxima vez que você estiver executando um processo crítico ou importante em primeiro plano em uma sessão remota.

    
por 07.11.2012 / 13:41