Centos

httpd-devel 在 CentOS 6.3 上需要過時版本的 glibc-common

  • May 29, 2016

httpd-devel 在 CentOS 6.3 x86_64 和 Apache/2.2.15 上需要一個過時的 glibc-common 版本。它需要 2.12-1.80.el6 而我安裝了 2.12-1.80.el6_3.3.x86_64(通過 CentOS @update repo)

這是我執行“yum install httpd-devel.x86_64”時的錯誤

錯誤:包:glibc-2.12-1.80.el6.i686(基礎):

  Requires: glibc-common = 2.12-1.80.el6
  Installed: glibc-common-2.12-1.80.el6_3.3.x86_64 (@updates)
      glibc-common = 2.12-1.80.el6_3.3
  Available: glibc-common-2.12-1.80.el6.x86_64 (base)
      glibc-common = 2.12-1.80.el6

使用“yum install httpd-devel.x86_64 –skip-broken”,我得到:

由於依賴問題而跳過的包:

> apr-1.3.9-3.el6_1.2.i686 from base apr-devel-1.3.9-3.el6_1.2.x86_64
> from base apr-util-devel-1.3.9-3.el6_0.1.x86_64 from base
> cyrus-sasl-devel-2.1.23-13.el6.x86_64 from base
> db4-cxx-4.7.25-17.el6.x86_64 from base db4-devel-4.7.25-17.el6.x86_64
> from base glibc-2.12-1.80.el6.i686 from base
> 1:httpd-devel-2.2.15-15.el6.vm.1.x86_64 from virtualmin
> libuuid-2.17.2-12.7.el6.i686 from base
> nss-softokn-freebl-3.12.9-11.el6.i686 from base
> openldap-devel-2.4.23-26.el6.x86_64 from base

最重要的是,我無法安裝 httpd-devel。

這可能是一個優先問題嗎?

priority = 1 [asl-3.0]
priority = 1 [base]
priority = 1 [virtualmin]
priority = 1 [virtualmin-universal]
priority = 50 [epel]

repo id | repo name | status
C6.0-base |  CentOS-6.0 - Base | disabled
C6.0-centosplus | CentOS-6.0 - CentOSPlus | disabled
C6.0-contrib | CentOS-6.0 - Contrib |  disabled
C6.0-extras |  CentOS-6.0 - Extras |  disabled
C6.0-updates | CentOS-6.0 - Updates |  disabled
C6.1-base |  CentOS-6.1 - Base | disabled
C6.1-centosplus | CentOS-6.1 - CentOSPlus | disabled
C6.1-contrib | CentOS-6.1 - Contrib |  disabled
C6.1-extras |  CentOS-6.1 - Extras |  disabled
C6.1-updates | CentOS-6.1 - Updates |  disabled
C6.2-base |  CentOS-6.2 - Base | disabled
C6.2-centosplus | CentOS-6.2 - CentOSPlus | disabled
C6.2-contrib | CentOS-6.2 - Contrib |  disabled
C6.2-extras |  CentOS-6.2 - Extras |  disabled
C6.2-updates | CentOS-6.2 - Updates |  disabled
asl-3.0 | Atomicorp - - Atomic Secured Linux 3.0 | enabled: | 623
asl-3.0-testing | Atomicorp - - Atomic Secured Linux 3.0 (TESTING) | disabled
base | CentOS-6 - Base | enabled: | 6,346
c6-media |  CentOS-6 - Media | disabled
centosplus |  CentOS-6 - Plus | disabled
contrib | CentOS-6 - Contrib | disabled
debug | CentOS-6 - Debuginfo |  disabled
epel | Extra Packages for Enterprise Linux 6 - x86_64 |  enabled: 7,627+125
epel-debuginfo | Extra Packages for Enterprise Linux 6 - x86_64 - Debug |  disabled
epel-source |  Extra Packages for Enterprise Linux 6 - x86_64 - Source | disabled
epel-testing | Extra Packages for Enterprise Linux 6 - Testing - x86_64 | disabled
epel-testing-debuginfo | Extra Packages for Enterprise Linux 6 - Testing - x86_64 - Debug | disabled
epel-testing-source |  Extra Packages for Enterprise Linux 6 - Testing - x86_64 - Source | disabled
extras | CentOS-6 - Extras | enabled: |  4
updates | CentOS-6 - Updates | enabled: | 0+523
virtualmin |  RHEL/CentOS/Scientific 6 - x86_64 - Virtualmin |  enabled: | 73
virtualmin-universal | Virtualmin Distribution Neutral Packages | enabled: | 187+1

阿帕奇來自:

rpm -qi httpd
Name        : httpd                        Relocations: (not relocatable)
Version     : 2.2.15                            Vendor: (none)
Release     : 15.el6.vm.1                   Build Date: Thu 17 May 2012 03:35:08 AM UTC
Install Date: Thu 28 Jun 2012 05:13:47 AM UTC      Build Host: srv1.cloud.virtualmin.com
Group       : System Environment/Daemons    Source RPM: httpd-2.2.15-15.el6.vm.1.src.rpm
Size        : 3067984                          License: ASL 2.0
Signature   : DSA/SHA1, Thu 17 May 2012 03:09:42 PM UTC, Key ID e8dd3fa0a0bdbcf9
URL         : http://httpd.apache.org/
Summary     : Apache HTTP Server

禁用優先級允許“yum install httpd-devel”工作。

PS:我現在有優先事項

priority = 10 [asl-3.0]
priority = 10 [asl-3.0-testing]
priority = 20 [virtualmin]
priority = 20 [virtualmin-universal]
priority = 30 [base]
priority = 30 [updates]
priority = 40 [extras]
priority = 50 [epel]

這看起來可以嗎?

恭喜:你遇到了 Dependeny Hell

$$ tm $$. 好消息:總是自己造成的;沒有例外。 Virtualmin - 在離開 SCONJ 之前,我曾與 Jamie 合作過一個項目;這不像他 - 提供的 httpd-devel 違反了 Fedora 指南規定的命名約定,該指南反過來也規範了圍繞 CentOS 的企業 linux 打包。這不應該發生 —— 像 Virtualmin 這樣的第三方儲存庫不應該重載上游傳遞的軟體包的名稱(如 CentOS 本身中的那些。

所以,簡而言之,你使用了一個糟糕的回購。不要難過:他們中的很多人都有這個問題,沒有辦法知道。Evan Dag 曾經在他的 RPM 中這樣做。

我從來不需要使用優先級設置,而且我從 98 年左右就開始使用 RedHat/derivs。我無法評論您的解決方案是否有效,而且整個事情似乎是解決 regs 現在避免的問題的黑客行為。

禁用 virtualmin 儲存庫。

sed -i '/^enabled/r\enabled=0' /etc/yum.repos.d/name-of-virtualmin.repo-file

僅在命令行上為一次性的事情啟用它,並在他們修復它之前了解它會導致依賴性問題。

yum --enablerepo virtualmin [command]

Jamie 是一個非常聰明和有能力的開發人員,他的產品和 repos 應該會更好。這只能是短期的事情。

引用自:https://unix.stackexchange.com/questions/47287