Archivo / etc / redhat-release eliminado accidentalmente

12

Accidentalmente borré el archivo / etc / redhat-release. ¿Cómo puedo restaurar o crear uno nuevo? Tengo CentOS Linux versión 7.0.1406 (Core).

el Salvador
fuente
1
Fácil: restaurar desde copia de seguridad
Anthon

Respuestas:

23

Puede usar RPM para ver a qué RPM pertenece ese archivo:

$ rpm -qf /etc/redhat-release
centos-release-7-0.1406.el7.centos.2.5.x86_64

Luego puedes arreglarlo usando yum:

$ yum reinstall centos-release

Podría no funcionar

Si el RPM que se usó para hacer esta instalación ya no está disponible, entonces lo anterior no funcionará:

$ yum reinstall centos-release-7-0.1406.el7.centos.2.5.x86_64
...
Installed package centos-release-7-0.1406.el7.centos.2.5.x86_64 (from updates) not available.

En este caso, puede buscar ese RPM en CentOS Vault (lo busco a través de Google), por ejemplo. NOTA: El paquete específico que desea está aquí .

Luego puede descargar el RPM directamente y volver a instalarlo utilizando rpmo yum.

$ wget http://vault.centos.org/centos/7.0.1406/updates/x86_64/Packages/centos-release-7-0.1406.el7.centos.2.5.x86_64.rpm
Usando RPM
$ sudo rpm -Uvh --replacepkgs centos-release-7-0.1406.el7.centos.2.5.x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:centos-release-7-0.1406.el7.cento################################# [100%]
Usando YUM
$ sudo yum reinstall centos-release-7-0.1406.el7.centos.2.5.x86_64.rpm
Loaded plugins: dellsysid, fastestmirror, langpacks
Examining centos-release-7-0.1406.el7.centos.2.5.x86_64.rpm: centos-release-7-0.1406.el7.centos.2.5.x86_64
Resolving Dependencies
--> Running transaction check
---> Package centos-release.x86_64 0:7-0.1406.el7.centos.2.5 will be reinstalled
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================================================================================================
 Package                     Arch                Version                              Repository                                                   Size
========================================================================================================================================================
Reinstalling:
 centos-release              x86_64              7-0.1406.el7.centos.2.5              /centos-release-7-0.1406.el7.centos.2.5.x86_64               31 k

Transaction Summary
========================================================================================================================================================
Reinstall  1 Package

Total size: 31 k
Installed size: 31 k
Is this ok [y/d/N]: y
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : centos-release-7-0.1406.el7.centos.2.5.x86_64                                                                                        1/1
  Verifying  : centos-release-7-0.1406.el7.centos.2.5.x86_64                                                                                        1/1

Installed:
  centos-release.x86_64 0:7-0.1406.el7.centos.2.5

Complete!

¿Por qué no reinstaló el trabajo?

Este es un error que se creó cuando los RPM individualizados para versiones específicas de CentOS quedaron en desuso.

Este directorio (y versión de CentOS) está en desuso. Para usuarios normales, debe usar / 7 / y no /7.0.1406/ en su ruta. Consulte estas preguntas frecuentes sobre el esquema de lanzamiento de CentOS:

https://wiki.centos.org/FAQ/General

Si sabe lo que está haciendo y desea permanecer en el nivel 7.0.1406, vaya a http://vault.centos.org/ para obtener los paquetes.

Tenga en cuenta que 7.0.1406 ya no recibe actualizaciones ni correcciones de seguridad.

--- Fuente: http://mirror.centos.org/centos/7.0.1406/readme

Por lo tanto, generalmente tiene que acceder a CentOS Vault para los paquetes que se encuentran en este estado.

slm
fuente
Buena respuesta, aunque generalmente se -idebe evitar el indicador de rpm, ya que casi siempre es menos útil que el -Uindicador (y, sí, -Upuede instalar paquetes completamente nuevos).
Etan Reisner
@EtanReisner - buen punto, cambiado.
slm
@slm: ¿Por qué no basta con tocar el archivo? ¿En qué se diferencia la recreación del archivo desde la reinstalación del paquete de solo tocar el archivo en este caso?
Sree
1
@Sree: hay contenido dentro del archivo. Hay una variedad de formas de reconstruir este archivo, es simplemente un archivo de texto con la versión de CentOS. Sin embargo, este método garantizará que el archivo se vuelva a crear como estaba antes de ser eliminado. Piense en propiedad, permisos, etc., además de los contenidos también.
slm
4

Debería estar bien. Puedes volver a crear el archivo. El contenido del archivo es:

[root@server ~]# cat /etc/centos-release
CentOS Linux release 7.0.1406 (Core)
[root@server ~]#

Este archivo pertenece al paquete centos-release-7-0.1406.el7.centos.2.5.x86_64, por lo tanto, siempre que no haya eliminado ese paquete, solo tocar este archivo manualmente debería estar bien.

[root@server ~]# rpm -qf /etc/redhat-release
centos-release-7-0.1406.el7.centos.2.5.x86_64
Sree
fuente