실수로 / etc / redhat-release 파일을 삭제했습니다


12

실수로 / etc / redhat-release 파일을 삭제했습니다. 새로운 것을 어떻게 복원하거나 만들 수 있습니까? CentOS Linux 릴리스 7.0.1406 (Core)이 있습니다.


1
쉬움 : 백업에서 복원
Anthon

답변:


23

RPM을 사용하여 해당 파일이 속한 RPM을 확인할 수 있습니다.

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

그런 다음 다음을 사용하여 수정할 수 있습니다 yum.

$ yum reinstall centos-release

작동하지 않을 수 있습니다

이 설치에 사용 된 RPM을 더 이상 사용할 수없는 경우 위의 작동하지 않습니다.

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

이 경우 CentOS Vault에서 해당 RPM을 찾을 수 있습니다 (예 : Google을 통해 검색). 참고 : 원하는 특정 패키지는 여기에 있습니다 .

그런 다음 RPM을 직접 다운로드하고 rpm또는을 사용하여 다시 설치하십시오 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 사용
$ 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 사용
$ 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!

왜 다시 설치하지 않았습니까?

이것은 특정 버전의 CentOS에 대한 개별화 된 RPM이 더 이상 사용되지 않을 때 작성된 snafu입니다.

이 디렉토리 (및 CentOS 버전)는 더 이상 사용되지 않습니다. 일반 사용자의 경우 경로에 /7.0.1406/이 아닌 / 7 /을 사용해야합니다. CentOS 릴리스 체계에 관한이 FAQ를 참조하십시오.

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

현재 수행중인 작업을 알고 있고 7.0.1406 레벨을 유지하려면 http://vault.centos.org/ 로 이동하여 패키지 를 찾으십시오 .

7.0.1406은 더 이상 업데이트 나 보안 수정을받지 않습니다.

--- 출처 : http://mirror.centos.org/centos/7.0.1406/readme

따라서 일반적 으로이 상태에 해당하는 패키지 는 CentOS Vault에 접속 해야합니다.


좋은 대답이지만 일반적으로 -irpm에 대한 플래그 는 플래그보다 거의 항상 유용하지 않으므로 피해야합니다 -U(예, -U완전히 새로운 패키지를 설치할 수 있음 ).
Etan Reisner 2016 년

@EtanReisner-좋은 지적, 변경되었습니다.
slm

@slm-파일을 터치하는 것만으로는 충분하지 않은 이유는 무엇입니까? 패키지 재설치에서 파일을 다시 작성하는 것은이 경우 파일을 터치하는 것과 어떻게 다릅니 까?
Sree

1
@Sree-파일 안에 내용이 있습니다. 이 파일을 재구성하는 방법에는 여러 가지가 있으며 CentOS 버전이 포함 된 텍스트 파일 일뿐입니다. 그러나이 방법을 사용하면 파일을 삭제하기 전에 파일을 다시 만들 수 있습니다. 내용 이외에도 소유권, 권한 등을 생각하십시오.
slm

4

괜찮습니다. 파일을 다시 만들 수 있습니다. 파일 내용은 다음과 같습니다.

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

이 파일은 package에 속해 centos-release-7-0.1406.el7.centos.2.5.x86_64있으므로 해당 패키지를 제거하지 않은 경우이 파일을 수동으로 터치하면됩니다.

[root@server ~]# rpm -qf /etc/redhat-release
centos-release-7-0.1406.el7.centos.2.5.x86_64
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.