Yanlışlıkla silinen / etc / redhat-release dosyası


12

/ Etc / redhat-release dosyasını yanlışlıkla sildim. Yenisini nasıl geri yükleyebilir veya oluşturabilirim? CentOS Linux 7.0.1406 (Core) sürümüne sahibim.


1
Kolay: yedeklemeden geri yükleme
Anthon

Yanıtlar:


23

Dosyanın hangi RPM'ye ait olduğunu görmek için RPM'yi kullanabilirsiniz:

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

Daha sonra kullanarak düzeltebilirsiniz yum:

$ yum reinstall centos-release

Çalışmayabilir

Bu yüklemeyi yapmak için kullanılan RPM artık mevcut değilse, yukarıdakiler çalışmaz:

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

Bu durumda , örneğin, bu RPM'yi CentOS Kasası'nda (Google aracılığıyla ararım) arayabilirsiniz. NOT: İstediğiniz belirli paket burada .

Daha sonra RPM'yi doğrudan indirebilir rpmveya veya tuşunu kullanarak yeniden yükleyebilirsiniz 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
RPM kullanma
$ 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%]
YUM kullanma
$ 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!

Yeniden yükleme neden çalışmadı?

Bu, CentOS'un belirli sürümlerine yönelik bireyselleştirilmiş RPM'ler kullanımdan kaldırıldığında oluşturulan bir engeldir.

Bu dizin (ve CentOS sürümü) kullanımdan kaldırıldı. Normal kullanıcılar için yolunuzda /7.0.1406/ yerine / 7 / kullanmalısınız. Lütfen CentOS sürüm planıyla ilgili bu SSS'ye bakın:

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

Ne yaptığınızı biliyorsanız ve kesinlikle 7.0.1406 düzeyinde kalmak istiyorsanız, paketler için http://vault.centos.org/ adresine gidin .

7.0.1406'nın artık herhangi bir güncelleme veya güvenlik düzeltmesi almadığını unutmayın.

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

Bu nedenle , bu duruma düşen paketler için genellikle CentOS Kasası'na ulaşmanız gerekir .


İyi bir yanıt olsa da, genellikle -irpm bayrağı kaçınılmalıdır, çünkü -Ubayraktan neredeyse her zaman daha az yararlıdır (ve evet, -Utamamen yeni paketler kurabilir).
Etan Reisner

@EtanReisner - iyi nokta, değişti.
slm

Neden sadece dosyaya dokunmak yeterli değil? Dosyayı paket yeniden yüklemesinden yeniden oluşturmak, bu durumda dosyaya dokunmaktan nasıl farklıdır?
Sree

1
@Sree - dosyanın içinde içerik var. Bu dosyayı yeniden yapılandırmanın çeşitli yolları vardır, sadece içinde CentOS sürümü olan bir metin dosyasıdır. Ancak bu yöntem, dosyanın silinmeden önce yeniden oluşturulduğunu garanti eder. İçeriklere ek olarak sahiplik, izinler vb. Düşünün.
slm

4

Tamam olmalı. Dosyayı yeniden oluşturabilirsiniz. Dosyanın içeriği:

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

Bu dosya pakete aittir, bu paketi centos-release-7-0.1406.el7.centos.2.5.x86_64kaldırmadıkça, bu dosyaya manuel olarak dokunmanız yeterli olacaktır.

[root@server ~]# rpm -qf /etc/redhat-release
centos-release-7-0.1406.el7.centos.2.5.x86_64
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.