CentOS yum 缺少依赖内核 >= 但内核已经 >=

CentOS yum 缺少依赖内核 >= 但内核已经 >=

我正在尝试在 CentoOS 服务器上安装 Nginx,但遇到了困难。

我对 CentOS 基本不熟悉,但我熟悉 Debian(但这个服务器必须是 CentOS)

添加 EPEL 仓库后我运行:

yum install nginx

到目前为止,它一直在做它的事情:

--> Finished Dependency Resolution
nginx-0.8.55-1.el5.x86_64 from epel has depsolving problems
--> Missing Dependency: kernel >= 2.6.18-181 is needed by package nginx-0.8.55-1.el5.x86_64 (epel)
Error: Missing Dependency: kernel >= 2.6.18-181 is needed by package nginx-0.8.55-1.el5.x86_64 (epel)
 You could try using --skip-broken to work around the problem
 You could try running: package-cleanup --problems
                        package-cleanup --dupes
                        rpm -Va --nofiles --nodigest

以下是 uname -a 的输出:

Linux FQDN 2.6.38.2-grsec-xxxx-grs-ipv6-64 #2 SMP Thu Aug 25 16:40:22 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

有什么想法可以修复此问题吗?

谢谢。

亮度

答案1

您的 rpmdb 中没有符合该要求的名为“kernel”的软件包。由于某种原因(可能是由于您的服务器存在某些限制),内核软件包已在 Yum 配置中被排除,从而无法安装。除非您弄清楚内核软件包被排除的原因,否则无法通过 Yum 解决此问题。

当然,您也可以直接通过源代码安装 nginx。

答案2

你可以从 CentOS 存储库安装内核(这个存储库与 OVH 或 BurstNet 安装的存储库类似),首先从 rpmdb 中清除这个内核

例如:rpm -e kernel --justdb

将从 RPM 数据库中删除内核信息,但不会删除内核文件。之后,您可以尝试安装 nginx 之后编辑 grub 文件,以确保您仍在加载相同的内核。

可能更好的方法是:

yum 安装 yum-utils yumdownloader nginx rpm -ivh nginx*rpm --nodeps

这将在本地下载 RPM,并跳过依赖项进行安装。

相关内容