Como corrigir “Não é possível recuperar metadados de repositório (repomd.xml)” no CentOS?

1

Eu tentei yum update yum e yum clean all , mas também não ajudei a resolver o seguinte problema:

# yum install httpd --installroot=/opt/httpd2
Loaded plugins: fastestmirror 
Loading mirror speeds from cached hostfile  
    * rpmforge: repoforge.spinellicreations.com
http://centos.karan.org/el%24releasever/extras/stable/x86_64/RPMS/repodata/repomd.xml:
[Errno 14] HTTP Error 404: Not Found 
Trying other mirror. 
Error: Cannot retrieve repository metadata (repomd.xml) for repository: 
    kbs-CentOS-Extras.
Please verify its path and try again

Eu também tentei apagar todos os arquivos .repo para kbs-CentOS-Extras de /etc/yum.repos.d e re-executar o comando, sem nenhuma alteração. Aqui está a informação do meu sistema, apenas no caso:

# uname -a
Linux 2.6.18-274.3.1.el5xen #1 SMP Tue Sep 6 20:57:11 EDT 2011 x86_64 GNU/Linux

Agora estou usando o arquivo .repo fornecido aqui . Aqui está o meu /etc/yum.conf :

[main]
cachedir=/var/cache/yum
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
distroverpkg=redhat-release
tolerant=1
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
bugtracker_url=http://bugs.centos.org/yum5bug
timeout=300
installonly_limit = 5

# Note: yum-RHN-plugin doesn't honor this.
metadata_expire=1h

O arquivo yum.log está vazio, mas /var/cache/yum/kbs-CentOS-Misc contém repomd.xml - isso poderia ser usado em vez da cópia remota?

Se não, alguma sugestão de como posso resolver isso?

    
por Rob 24.02.2014 / 22:08

2 respostas

1

corrija el% 24releasever nome da variável para $ releasever no seu arquivo repo. Para mais informações sobre as variáveis do yum, verifique yum.conf .

Variables

There are a number of variables you can use to ease maintenance of yum's configuration files. They are available in the values of several options including name, baseurl and commands.

$releasever This will be replaced with the value of the version of the package listed in distroverpkg. This defaults to the version of

'redhat-release' package.

$arch This will be replaced with your architecture as listed by os.uname()[4] in Python.

$basearch This will be replaced with your base architecture in yum. For example, if your $arch is i686 your $basearch will be i386.

$uuid This will be replaced with a unique but persistent uuid for this machine. The value that is first generated will be stored in

/var/lib/yum/uuid and reused until this file is deleted.

$YUM0-$YUM9 These will be replaced with the value of the shell environment variable of the same name. If the shell environment

variable does not exist then the configuration file variable will not be replaced. As of 3.2.28, any file in /etc/yum/vars is turned into a variable named after the filename (or overrides any of the above variables).

Note that no warnings/errors are given if the files are unreadable, so creating files that only root can read may be confusing for users.

Also note that only the first line will be read and all new line characters are removed, as a convenience. However, no other checking is performed on the data. This means it is possible to have bad character data in any value.

também este tópico será útil para entender as variáveis do yum.

    
por 10.08.2014 / 23:35
0

Consegui resolver o problema adicionando o repositório CentALT x86_64 . Eu baixei pela primeira vez centalt-release-5-3.noarch.rpm , então correu:

rpm -Uvh centalt-release*rpm

Depois disso, executar meu comando original resultou em conflitos de pacote (não estava satisfeito por eu ter reinstalado uma versão diferente de httpd-tools , mesmo que para um diretório de instalação alternativo.)

Como eu estava instalando apenas para /opt/httpd2 para fins de teste, abandonei essa ideia e instalei com êxito executando yum upgrade httpd .

    
por 25.02.2014 / 20:32