我正在尝试在 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,并跳过依赖项进行安装。