Como reinstalar o yum?

5

Eu cometi um grande erro: eu removi o yum. Então agora, quando eu, por exemplo, executar o seguinte, isso me dá um erro:

$ yum clean all
yum command not found.

Eu posso baixar o pacote com sucesso:

wget mirror.centos.org/centos/6/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
--2014-01-15 15:42:59--  http://mirror.centos.org/centos/6/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
Resolving mirror.centos.org... 192.133.139.3
Connecting to mirror.centos.org|192.133.139.3|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1019540 (996K) [application/x-rpm]
Saving to: “yum-3.2.29-40.el6.centos.noarch.rpm.1”

100%[====================================================================================================================>] 1,019,540    649K/s   in 1.5s

2014-01-15 15:43:01 (649 KB/s) - “yum-3.2.29-40.el6.centos.noarch.rpm.1” saved [1019540/1019540]

Tentar instalar o pacote baixado apresenta o seguinte erro:

# rpm -ivh yum-3.2.29-40.el6.centos.noarch.rpm
Preparing...                ########################################### [100%]
    file /usr/lib/python2.6/site-packages/yum/__init__.py from install of yum-3.2.29-40.el6.centos.noarch conflicts with file from package yum-3.2.29-30.el6.centos.noarch
[...]
file /usr/share/yum-cli/yummain.pyo from install of yum-3.2.29-40.el6.centos.noarch conflicts with file from package yum-3.2.29-30.el6.centos.noarch

Não há diretório "yum" em /usr/bin .

Quando eu uso o comando "rpm -qa | grep yum".

yum-metadata-parser-1.1.2-16.el6.x86_64
yum-plugin-fastestmirror-1.1.30-14.el6.noarch
yum-3.2.29-30.el6.centos.noarch

A distro é o CentOS 6.3.
Como posso reinstalar o yum?

    
por az93 15.01.2014 / 12:01

3 respostas

7

Já que você já tem o yum instalado, não pode fazer rpm -ivh .. . Este comando irá instalar um RPM que ainda não foi instalado. Em vez disso, você deve usar rpm -Uvh ... para atualizar o pacote yum ou removê-lo primeiro, rpm -e yum .

Eu sugiro fazer um upgrade no pacote.

$ wget http://mirror.centos.org/centos/6/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
rpm -Uvh yum-3.2.29-40.el6.centos.noarch.rpm

Baseando-se no gerenciador de pacotes

O RPM pode ajudá-lo a corrigir problemas como esse ou, no mínimo, ajudar a identificar problemas. O comando rpm inclui a capacidade de verificar os pacotes que ele mantém.

 $ rpm -V yum

Se não houver um problema, ele simplesmente não retornará nada. Se houver problemas, ele informará quais arquivos estão com defeito.

$ rpm -V httpd
SM5....T  c /etc/httpd/conf/httpd.conf

As letras / números informam sobre vários aspectos do pacote que estão fora de especificação com o que foi instalado originalmente.

excerto da página de manual do rpm

Each of the 9 characters denotes the result of a comparison of attribute(s) of the file to the value of those attribute(s) recorded in the database. A single "." (period) means the test passed, while a single "?" (question mark) indicates the test could not be performed (e.g. file permissions prevent reading). Otherwise, the (mnemonically emBoldened) character denotes failure of the corresponding --verify test:

   S file Size differs
   M Mode differs (includes permissions and file type)
   5 digest (formerly MD5 sum) differs
   D Device major/minor number mismatch
   L readLink(2) path mismatch
   U User ownership differs
   G Group ownership differs
   T mTime differs
   P caPabilities differ
    
por 15.01.2014 / 15:29
0

Faça o download do yum (não tem idéia de qual distro você está usando) você pode tentar em aqui e depois instalar o pacote com

rpm -ivh <rpm_file_name>

ou confira a página do projeto yum. Por exemplo, para yum 3.2.29-40 (32 bits):

wget http://mirror.centos.org/centos/6/os/i386/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
rpm -ivh yum-3.2.29-40.el6.centos.noarch.rpm –
    
por 15.01.2014 / 12:11
0

Aqui estou listando as etapas para resolver esse problema. Execute o seguinte comando YUM para isso.

  1. Elimine todos os arquivos de cabeçalho que o yum usa para dependência resolução.

    # yum clean headers
    
  2. Remova todos os pacotes armazenados nos caches

    # yum clean packages
    
  3. Remover todos os metadados

    # yum clean metadata
    
  4. Limpar o dbcache

    # yum clean dbcache
    
  5. Limpar tudo

    # yum clean all
    

Execute o comando de atualização se todos os comandos mencionados acima não resolverem o problema.

# yum -y update

Se a atualização do yum falhou, pode ser devido à corrupção no banco de dados do RPM em / var / lib / rpm / location. Por favor, siga os passos abaixo para resolver o problema.

# rm -f /var/lib/rpm/__db.*
# rpm -vv –rebuilddb
# yum update

É isso.

Fonte : [Resolvido] O servidor gerenciador de pacotes do sistema, 'YUM', falhou: Erro com o easyapache

    
por 19.07.2016 / 14:02

Tags