不小心删除了 /etc/redhat-release 文件

不小心删除了 /etc/redhat-release 文件

我不小心删除了 /etc/redhat-release 文件。如何恢复或创建新的?我有 CentOS Linux 版本 7.0.1406(核心)。

答案1

您可以使用 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(我通过谷歌搜索),例如。 笔记:您想要的具体包是这里

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
使用转速
$ 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%]
使用百胜
$ 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 被弃用时造成的混乱。

此目录(以及 CentOS 版本)已弃用。对于普通用户,您应该在路径中使用 /7/ 而不是 /7.0.1406/ 。请参阅有关 CentOS 发布方案的常见问题解答:

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 保管库对于处于这种状态的包。

答案2

应该没问题。您可以重新创建该文件。该文件的内容是:

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

该文件属于该软件包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

相关内容