¿Cómo instalo los repositorios CentOS de stock?

20

Tengo una situación en la que los archivos de repositorio de acciones que deberían existir en /etc/yum.repos.d/(como centos-base.repo) no están presentes. Necesito instalarlos. Estoy seguro de que esto es simple, pero después de horas de búsqueda, parece que no lo busco en Google correctamente.

Básicamente tengo un servidor con repositorios personalizados que no me sirven. Necesito epel, y epel necesita centos-base.repo. También necesito postgres repo.

Jim
fuente
1
o puede instalar el sistema operativo en una máquina virtual y luego copiar el archivo predeterminado ubicado en el directorio
yum.repos.d

Respuestas:

16

Cree un archivo llamado Centos-Base.repo en el siguiente directorio /etc/yum.repos.d

vi /etc/yum.repos.d/Centos-Base.repo

Ponga la siguiente información dentro del archivo:

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#released updates 
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=addons
#baseurl=http://mirror.centos.org/centos/$releasever/addons/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=centosplus
#baseurl=http://mirror.centos.org/centos/$releasever/centosplus/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2

#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=
$basearch&repo=contrib
#baseurl=http://mirror.centos.org/centos/$releasever/contrib/$basearch/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2

Guárdalo y corre.

yum clean all 

Entonces corre.

yum repolist

Si está copiando esto en masilla vi, asegúrese de verificar los saltos de línea. Tuve que arreglar algunas ediciones que ocurrieron durante la copia y pegar.

acero medianoche
fuente
55
En lugar de pegar en un editor como vi o vim, simplemente use cat> filename y presione ctrl-d después de pegar. Además, vim tiene un modo diseñado para recibir datos del portapapeles, que deshabilitará el formateo automático, etc. Simplemente use ": set paste" antes de ingresar al modo de inserción. Pero todavía prefiero el método del gato, es más simple.
Watcom
2
¿Por qué esto tiene archivos GPG para CEntOS-5, por ejemplo, gpgkey = file: /// etc / pki / rpm-gpg / RPM-GPG-KEY-CentOS-5?
Nathan Basanese
3
No funciona en CentOS-7
Alex Jolig
Para el FYI de la posteridad que ahora viene a esta pregunta: esas URL ya no son válidas para CentOS 5. Puede usar esto en su lugar: archive.kernel.org/centos-vault/5.7 (ajustando su versión, por supuesto). Encontré esa URL en la parte inferior de esta página: vault.centos.org/centos
Todd Walton
10

Puede reinstalar manualmente centos-release-rpm usando:

rpm -ivh --replacepkgs --replacefiles centos-release*.rpm
Nils
fuente
3
Esto funcionó, pero necesitaba modificaciones. El primer paso es ver si el paquete centos-release está instalado, escribiendo rpm -q centos-release. Si no está instalado, se debe omitir la parte --replacepkgs --replacefiles del comando. En mi caso, todo se había desinstalado, así que usé: rpm -Uvh centos-release. *. Rpm
Jim
@Jim que debe haber sido una eliminación brutal de esas rpm, sin verificación de dependencia. Lo comprobé con yum remove centos-release- eso normalmente debería desinstalar todo el sistema.
Nils
3

Para mí, el problema se resolvió limpiando todos los repositorios y agregando nuevos desde aquí teniendo en cuenta mi versión de CentOS:

# yum clean all

# rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-9.noarch.rpm

# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm

# rpm -Uvh http://dl.atrpms.net/all/atrpms-repo-7-7.el7.x86_64.rpm

# rpm -Uvh http://repo.webtatic.com/yum/el7/webtatic-release.rpm
Alex Jolig
fuente
La primera URL ya no es válida. No he revisado a los demás.
theMayer