Estou recebendo erros, acho que com o coreutils, onde o yum não será atualizado. Aqui está uma saída simplificada do que vejo quando executo yum update
:
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
The program yum-complete-transaction is found in the yum-utils package.
--> Running transaction check
---> Package PyYAML.x86_64 0:3.10-3.el6 will be updated
---> Package PyYAML.x86_64 0:3.10-3.1.el6 will be an update
... more of the same, and then:
--> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64
---> Package coreutils.x86_64 0:8.4-37.el6 will be an update
... then more of the same --> Finished Dependency Resolution
--> Running transaction check
---> Package coreutils.x86_64 0:8.4-31.el6_5.2 will be updated
--> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64
---> Package kernel.x86_64 0:2.6.32-431.17.1.el6 will be erased
--> Finished Dependency Resolution
Error: Package: coreutils-libs-8.4-31.el6_5.2.x86_64 (@updates)
Requires: coreutils = 8.4-31.el6_5.2
Removing: coreutils-8.4-31.el6_5.2.x86_64 (@updates)
coreutils = 8.4-31.el6_5.2
Updated By: coreutils-8.4-37.el6.x86_64 (base)
coreutils = 8.4-37.el6
You could try using --skip-broken to work around the problem
** Found 71 pre-existing rpmdb problem(s), 'yum check' output follows:
audit-libs-2.3.7-5.el6.x86_64 is a duplicate with audit-libs-2.2-4.el6_5.x86_64
audit-libs-python-2.3.7-5.el6.x86_64 is a duplicate with audit-libs-python-2.2-4.el6_5.x86_64
... then lots more like the above duplicate
Eu tenho outro servidor que é (quase) idêntico a isso (eles são com balanceamento de carga e funcionam com a mesma imagem) e esse não tem o mesmo problema. Qual pode ser o problema e como devo proceder da melhor maneira?
Atualizar:
Também executei yum-complete-transaction
a falha e disse que havia renomeado os arquivos de transação. Ele ainda diz que há uma transação incompleta, mas agora isso acontece quando eu a executo:
[root@nico ~]# yum-complete-transaction
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* webtatic: uk.repo.webtatic.com
drivesrvr | 951 B 00:00
There are 1 outstanding transactions to complete. Finishing the most recent one
The remaining transaction had 252 elements left to run
... lots of:
Package name-1.23.x8x_64 already installed and latest version
...
--> Running transaction check
... lots of entries like this:
---> Package PyYAML.x86_64 0:3.10-3.el6 will be updated
... and this:
---> Package PyYAML.x86_64 0:3.10-3.1.el6 will be an update
... and this:
---> Package audit-libs.x86_64 0:2.2-4.el6_5 will be erased
Killed
De repente, ele pára com a Killed
linha.
Eu tentei correr a yum update --skip-broken
seguir:
[root@nico ~]# yum update --skip-broken
Freeing read locks for locker 0x7d: 28940/139976145426176
Freeing read locks for locker 0x7f: 28940/139976145426176
Freeing read locks for locker 0x80: 28940/139976145426176
Freeing read locks for locker 0x81: 28940/139976145426176
Freeing read locks for locker 0x82: 28940/139976145426176
Loaded plugins: downloadonly, fastestmirror, replace
Setting up Update Process
Loading mirror speeds from cached hostfile
* webtatic: uk.repo.webtatic.com
drivesrvr | 951 B 00:00
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
... lots of will be updated/will be an update/etc, then:
--> Processing Dependency: coreutils = 8.4-31.el6_5.2 for package: coreutils-libs-8.4-31.el6_5.2.x86_64
Em seguida, vários outros Running transaction check:
s, e Processing Dependency: coreutils =...
entradas entre mais willy be updated/willbe an update
entradas. Então:
Packages skipped because of dependency problems:
coreutils-8.4-37.el6.x86_64 from base
Dependencies Resolved
Em seguida, é mostrada uma tabela com uma lista de Installing:
e Updating:
pacotes, com um resumo no final:
Install 2 Package(s)
Upgrade 79 Package(s)
Remove 1 Package(s)
Em seguida, ele baixa todos os pacotes (81/81 com sucesso) e finalmente mostra o seguinte:
Total 3.0 MB/s | 115 MB 00:37
Running rpm_check_debug
Killed
Atualização 2:
Também corri yum clean all
e tive alguns problemas por lá também. Encontrei alguns conselhos para remover os __db*
arquivos e tente novamente:
[root@nico ~]# yum clean all
rpmdb: Thread/process 29404/139880514733824 failed: Thread died in Berkeley DB library
error: db3 error(-30974) from dbenv->failchk: DB_RUNRECOVERY: Fatal error, run database recovery
error: cannot open Packages index using db3 - (-30974)
error: cannot open Packages database in /var/lib/rpm
CRITICAL:yum.main:
Error: rpmdb open failed
[root@nico ~]# rm -f /var/lib/rpm/__db*
[root@nico ~]# yum clean all
Loaded plugins: downloadonly, fastestmirror, replace
Cleaning repos: base drivesrvr epel extras ius newrelic percona-release-noarch percona-release-x86_64 rackspace updates webtatic
Cleaning up Everything
Cleaning up list of fastest mirrors
[root@nico ~]# yum clean all
Loaded plugins: downloadonly, fastestmirror, replace
Cleaning repos: base drivesrvr epel extras ius newrelic percona-release-noarch percona-release-x86_64 rackspace updates webtatic
Cleaning up Everything
[root@nico ~]#
Atualização 3:
Eu segui /var/log/messages
e vi muita produção quando corri yum-complete-transaction
, cujas últimas duas linhas foram:
Nov 14 08:19:47 nico kernel: Out of memory: Kill process 30995 (yum-complete-tr) score 149 or sacrifice child
Nov 14 08:19:47 nico kernel: Killed process 30995, UID 0, (yum-complete-tr) total-vm:641952kB, anon-rss:181420kB, file-rss:4kB
Então, presumivelmente, isso sugere que esteja relacionado à memória. Em caso afirmativo, esse é um caso de precisar de mais RAM ou pode haver outro problema que preciso investigar?
Respostas:
Problema semelhante - e minha correção. Também tive um problema com a memória, então tive que atualizar a memória do VPS. Fiz uma atualização do yum - é claro que obtive os erros acima. Então olhei para o fracasso e percebi o que aconteceu: o Yum instalou (bem, começou a instalar) os mais recentes coreutils - versão 37, enquanto eu ainda tinha bits 31. Então, primeiro, removi a versão 37, depois limpei e executei o yum update novamente.
Isso fez com que a versão '31' estivesse disponível para ser "atualizada" corretamente. Veja o trabalho abaixo:
Em execução
yum remove coreutils-libs-8.4-37.el6.x86_64
:Limpando usando
yum clean all
:Fazendo atualização da lista de pacotes
yum update
:-Sup.
fonte
O motivo usual para
yum
morrerKilled
é que o sistema ficou sem memória.Nos seus logs, parece que você tem uma instância do Amazon t1.micro, ou algo com o mesmo tamanho e sem espaço de troca. Essa quantidade restrita de memória geralmente não é suficiente para concluir um grande número de instalações / atualizações de pacotes.
Para resolver o problema:
Encerre os serviços em execução até ter memória suficiente para concluir a transação yum.
Ou...
Adicione um arquivo de troca ou troca no armazenamento efêmero à sua instância.
Então você poderá concluir suas transações yum.
Por fim, para limpar os problemas do seu pacote com base nas atualizações anteriores com falha, tente
antes de executar outras atualizações.
fonte
Tente
you update --skip-broken
evitar os pacotes quebrados (você pode lidar com eles mais tarde), provavelmente uma boa ideia para executaryum clean all
antes de fazer qualquer coisa.fonte
Filtrar as informações estranhas que você citou e no meio
yum
já tenta ajudá-lo:Você já tentou isso?
fonte
Experimente um
yum downgrade packagename
Não sei por que, mas é atualizado, ou pelo menos o fez com o pacote tcpdump. Fui da versão tcpdump-4.5.1-2.el7.x86_64 para tcpdump-4.7.4-1_ESG_ring.x86_64, que é o que eu queria.
fonte