File / etc / redhat rilasciato accidentalmente


12

Ho accidentalmente cancellato il file / etc / redhat-release. Come posso ripristinarne o crearne uno nuovo? Ho CentOS Linux versione 7.0.1406 (Core).


1
Facile: ripristino da backup
Anthon,

Risposte:


23

Puoi usare RPM per vedere a quale RPM appartiene quel file:

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

È quindi possibile risolverlo utilizzando yum:

$ yum reinstall centos-release

Potrebbe non funzionare

Se l'RPM utilizzato per eseguire questa installazione non è più disponibile, non funzionerà quanto sopra:

$ 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.

In questo caso puoi cercare quel RPM nel CentOS Vault (lo cerco tramite Google), per esempio. NOTA: il pacchetto specifico desiderato è qui .

È quindi possibile scaricare direttamente RPM ed eseguire la reinstallazione utilizzando 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
Utilizzando 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!

Perché la reinstallazione non ha funzionato?

Questo è uno snafu che è stato creato quando gli RPM personalizzati per versioni specifiche di CentOS sono stati deprecati.

Questa directory (e versione di CentOS) è obsoleta. Per gli utenti normali, dovresti usare / 7 / e non /7.0.1406/ nel tuo percorso. Si prega di consultare queste FAQ relative allo schema di rilascio di CentOS:

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

Se sai cosa stai facendo e vuoi assolutamente rimanere al livello 7.0.1406, vai su http://vault.centos.org/ per i pacchetti.

Tieni presente che 7.0.0406 non riceve più aggiornamenti né correzioni di sicurezza.

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

Quindi in genere devi raggiungere CentOS Vault per i pacchetti che rientrano in questo stato.


Una buona risposta, sebbene generalmente il -iflag a rpm dovrebbe essere evitato in quanto è quasi sempre meno utile del -Uflag (e, sì, -Upuò installare pacchetti completamente nuovi).
Etan Reisner,

@EtanReisner - buon punto, cambiato.
slm

@slm - Perché toccare il file non è sufficiente? In che modo la ri-creazione del file dalla reinstallazione del pacchetto differisce dal semplice tocco del file in questo caso?
Sree,

1
@Sree - c'è del contenuto all'interno del file. Esistono diversi modi per ricostruire questo file, è semplicemente un file di testo con la versione di CentOS al suo interno. Tuttavia, questo metodo garantirà che il file viene ricreato com'era prima di essere eliminato. Pensa alla proprietà, alle autorizzazioni, ecc. Oltre ai contenuti.
slm

4

Dovrebbe essere a posto. Puoi ricreare il file. Il contenuto del file è:

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

Questo file appartiene al pacchetto centos-release-7-0.1406.el7.centos.2.5.x86_64, quindi fintanto che non lo hai rimosso, basta toccare manualmente questo file dovrebbe andare bene.

[root@server ~]# rpm -qf /etc/redhat-release
centos-release-7-0.1406.el7.centos.2.5.x86_64
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.