-
Notifications
You must be signed in to change notification settings - Fork 8
20170923_how to fix glibc yum dependencies at centos 7.html
CI edited this page Jun 5, 2018
·
1 revision
title: "如何在 CentOS 7 解決 glibc 的 yum 套件相依性問題" date: 2017-09-23 type: blog author: 凍仁翔 link: http://note.drx.tw/2017/09/how-to-fix-glibc-yum-dependencies-at-centos-7.html layout: post comments: true
這週凍仁接到一個需要幫 CentOS 7 部署 OpenLDAP client 的任務。過程中,總是有一兩台 server 會遇到 glibc 相依性問題,並為此煩惱。如果是所有的 server 都有同樣的問題還好解決,最麻煩的就是遇上這種時好時壞的情形。
[ jonny@centos7]
$ sudo yum install nss-pam-ldapd [Enter]...
1 --> Finished Dependency Resolution
2 Error: Package: glibc-2.17-157.el7_3.1.i686 (internel-upadte)
3 Requires: glibc-common = 2.17-157.el7_3.1
4 Installed: glibc-common-2.17-157.el7_3.2.x86_64 (@updates)
5 glibc-common = 2.17-157.el7_3.2
5 Available: glibc-common-2.17-105.el7.x86_64 (internel-base)
6 glibc-common = 2.17-105.el7
7 Available: glibc-common-2.17-106.el7_2.1.x86_64 (internel-upadte)
8 glibc-common = 2.17-106.el7_2.1
9 Available: glibc-common-2.17-106.el7_2.4.x86_64 (internel-upadte)
10 glibc-common = 2.17-106.el7_2.4
11 Available: glibc-common-2.17-106.el7_2.6.x86_64 (internel-upadte)
12 glibc-common = 2.17-106.el7_2.6
13 Available: glibc-common-2.17-106.el7_2.8.x86_64 (internel-upadte)
14 glibc-common = 2.17-106.el7_2.8
15 Available: glibc-common-2.17-157.el7.x86_64 (internel-base)
16 glibc-common = 2.17-157.el7
17 Available: glibc-common-2.17-157.el7_3.1.x86_64 (internel-upadte)
18 glibc-common = 2.17-157.el7_3.1
19 You could try using --skip-broken to work around the problem
20 You could try running: rpm -Va --nofiles --nodigest
▲ 安裝 nss-pam-ldapd 出現了 glibc 的套件相依性問題。
上網查了一下資料,發現前人在 2016 年就遇上同樣的問題,其解法也很簡單,只需先降級 glibc 即可。
1. 降級 glibc 的相關套件。
[ jonny@centos7 ]
$ sudo yum downgrade glibc glibc-common glibc-devel glibc-headers [Enter]
2. 接著重新安裝 nss-pam-ldapd 就不會遇到相依性問題了。
$ sudo yum install nss-pam-ldapd [Enter]
現在回過頭來看,其實在錯誤訊息的第 3 行的 glibc-common = 2.17-157.el7_3.1 就提到需安裝 2.17-157.el7_3.1 版本的 glibc-common,可出問題的 server 上雖已裝了 2.17-157.el7_3.2 但在降級的過程中失敗。
這問題會發生在已安裝某些服務後,才改用內部 Yum mirror repo 的 server 上。而這個結論是在嘗試升級已降級 glibc 和切換內部 Yum mirror repo 的 server,卻無任何變更後得知。
題外話,現在的凍仁很幸運地得到前人分享的知識,並擁有 Ansible 和 Vagrant 兩大利器,才能在不到一週內解決環境不一的問題。甚至還在最後發現 Ansible Playbooks 漏掉了要安裝 authconfig 這個必要套件呢!
相關連結:
★ 2.2. Using authconfig | redhat customer portal
資料來源:
★ [SOLVED] Yum Dependencies resolution fail (glibc-common) | LinuxQuestions.org