我不小心删除了 /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 不再获得任何更新,也不再获得任何安全修复。
所以你通常必须进入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