Você também pode reconstruir o banco de dados RPM.
yum clean all
rpm --rebuilddb
Eu criei o repositório para o RHEL 5.6. Já havia um repositório existente para o RHEL 5.2 que eu deletei.
Eu executei os seguintes comandos:
yum clean all
yum clean metadata
então,
yum list all
Listar todos os pacotes.
Mas quando eu digito YUM UPDATE. Mostra
Setting up Update Process
Setting up repositories
rhel-local 100% |=========================| 951 B 00:0
Reading repository metadata in from local files
primary.xml.gz 100% |=========================| 1.1 MB 00:0
################################################## 3229/3229
Setting up Update Process
Setting up repositories
Reading repository metadata in from local files
E isso é tudo pessoal. Não há mais resposta do YUM UPDATE.
Alguma idéia de por que o yum está ficando preso?
Você também pode reconstruir o banco de dados RPM.
yum clean all
rpm --rebuilddb
No meu caso, eu tinha um db lock RPM que estava bloqueando o yum.
A execução de strace yum --verbose --noplugins info
ficaria presa em:
open("/var/lib/rpm/.dbenv.lock", O_RDWR|O_CREAT, 0644) = 5
umask(022) = 022
fcntl(5, F_SETLKW, {type=F_WRLCK, whence=SEEK_SET, start=0, len=0}Killed
para corrigir, eu corri como root:
rm /var/lib/rpm/.dbenv.lock
Isso geralmente pode ocorrer se houver outro processo yum
em execução ou se os metadados que yum
mantêm no sistema estiverem corrompidos.
Para o primeiro problema, eu normalmente mato qualquer processo do yum existente e, em seguida, executo este comando yum-complete-transaction
, que deve permitir que o yum limpe o yup após ele mesmo.
Para o segundo problema, eu geralmente tenho que executar um yum clean all
para eliminar quaisquer pacotes e pacotes de metadados e depois executar um yum update
como normal.
Ocasionalmente, também executo este comando, package-cleanup <options>
, para limpar diferentes problemas com o banco de dados RPM:
limpe quaisquer pacotes duplicados (verifique se há duplicatas no banco de dados RPM local e limpe as versões mais antigas)
package-cleanup --cleandupes
verificar problemas (Listar problemas de dependência no banco de dados RPM local. Se algum problema for encontrado, ele sairá com um código de saída 1)
package-cleanup --problems
Listar órfãos. (Listar os pacotes instalados que não estão disponíveis nos repositórios configurados atualmente. Isso é idêntico ao yum list extras
, que pode fornecer uma saída melhor)
package-cleanup --orphans
Eu descobri mensagens de erro iscsi em / var / log / messages. E então eu parei daemons iscsi e iscid. Depois disso, o yum completou o processo de atualização.
Tags repository yum rhel