質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

yum

yumコマンドは、UNIX系OSのRPMパッケージのインストールなどを行うためのプログラムのことです。

Q&A

解決済

1回答

1626閲覧

centos7でyumがで動きません

Kazuya.M

総合スコア16

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

yum

yumコマンドは、UNIX系OSのRPMパッケージのインストールなどを行うためのプログラムのことです。

0グッド

0クリップ

投稿2017/08/30 05:26

編集2017/08/30 05:33

###前提・実現したいこと
cent0s7でパッケージ削除後に再インストールをしようとしたところ、
yumが動きません。

yumを再び使いたいのですが、ご教示お願い致します。

###発生している問題・エラーメッセージ

rpm -qa | grep ldap で表示されたパッケージを順にremoveしていき、 yum remove openldap-2.4.40-13.el7.x86_64 で削除した際に エラー: "yum" を削除しようとしています、保護されています というメッセージが出ましたが特に気にしませんでした。 その後rpm -ql ldapで表示される残った設定ファイルを削除していきました yum install openldap-servers openldap-clientsで再インストールをしたところyumが動きません。

###該当のソースコード

yum install openldap-servers openldap-clients There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: iblber-2.4.so.2: cannot open shared object file: No such file or directory Please install a package which provides this module, or verify that the module is installed correctly. It's possible that the above module doesn't match the current version of Python, which is: 2.7.5 (default, Nov 6 2016, 00:28:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] If you cannot solve this problem yourself, please go to the yum faq at: http://yum.baseurl.org/wiki/Faq

###試したこと
remove前に戻そうと思いましたがundoもrollbackもyumで使うため
出来ませんでした。
https://www.centos.org/forums/viewtopic.php?t=6086を参考に
rpm -Uhv --replacepkgs cyrus-sasl-lib-2.1.23-13.el6_3.1.x86_64.rpmを実行しましたがオープンに失敗: そのようなファイルやディレクトリはありませんという結果でした

###補足情報(言語/FW/ツール等のバージョンなど)
centos7です

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

yum を実行するために必要なライブラリ openldap を削除したためのようですね。

rpm で復旧させてみては如何でしょうか?以下のURLでパッケージを確認
http://mirror.centos.org/centos/7/os/x86_64/Packages/

wget http://mirror.centos.org/centos/7/os/x86_64/Packages/openldap-2.4.40-13.el7.x86_64.rpm rpm -Uhv openldap-2.4.40-13.el7.x86_64.rpm

投稿2017/08/30 06:02

toytax

総合スコア104

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Kazuya.M

2017/08/30 06:46

いつもお世話になっております。 ご教示頂いたコマンドを実行したところ、指定したパッケージのインストールに成功できました。 ただyumはまだ使えない状況であります。 yum実行時のエラー文をみると The error leading to this problem was: iblber-2.4.so.2: cannot open shared object file: No such file or directory とありましたのでiblber-2.4.so.2をrpmでインストールすればよいのではないかと考えました。 iblber-2.4.so.2の所在を確認するとサイトが複数ありましたので wget https://pkgs.org/download/liblber-2.4.so.2/openldap-2.4.40 -13.el7.i686.rpm 実行後rpm -Uhv openldap-2.4.40-13.el7.i686.rpmを実行すると エラー: openldap-2.4.40-13.el7.i686.rpm: RPM パッケージ(またはパッケージのリスト )ではありません: という結果でした。 iblber-2.4.so.2のインストール方法についても教えていただけますでしょうか。よろしくお願いします。
toytax

2017/08/30 07:08 編集

手元の環境ですが、 locate iblber-2.4.so.2 /usr/lib64/liblber-2.4.so.2 /usr/lib64/liblber-2.4.so.2.10.3 rpm -qf /usr/lib64/liblber-2.4.so.2 openldap-2.4.40-13.el7.x86_64 で、openldap をインストールすればOKのはずです。 アーキテクチャ 32bit or 64bit はあってますでしょうか?自分は 64bit として x86_64 で記載していますが、32bit だと.i686 パッケージになります。 アーキテクチャの確認はuname -m で確認できます。 長々書いてますが、openldap-2.4.40-13.el7.i686.rpm とopenldap-2.4.40-13.el7.x86_64.rpm は違うので注意してくださいということです。
Kazuya.M

2017/08/30 07:34

ご返信ありがとうございます。 私の環境ですが uname -m x86_64ですので64bit版になります。 locateはパッケージを入れておらず、確認できていません。 rpm -qf /usr/lib64/liblber-2.4.so.2 openldap-2.4.40-13.el7.x86_64とありました。 そのため再度rpm -Uhv openldap-2.4.40-13.el7.x86_64.rpmを実行しましてインストール済みの結果になりました。 しかし現在下記のようにyumが使えない状況です yum --help There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: liblber-2.4.so.2: cannot open shared object file: No such file or directory Please install a package which provides this module, or verify that the module is installed correctly. verify that the module is installed correctlyとあるのでインストール済みであることをyumに教える方法を確認すればよろしいのでしょうか?
toytax

2017/08/30 08:06

ls -l /usr/lib64/liblber-2.4.so.2 としてみてください。 実体のliblber-2.4.so.2.10.3 はありますでしょうか。リンクのはずなのでなければ赤字で表示されます。 ls -l /usr/lib64/liblber-2.4.so.2.10.3 なければ強制的(手動で削除されたファイルを)にインストールするために、rpm --force オプションを試してみてください。それでもダメなら rpm2cpio openldap-2.4.40-13.el7.x86_64.rpm | cpio -id で中のファイルを展開できますので、削除したファイル liblber-2.4.so.2.10.3 を取得できると思います。 もし実体が存在するなら。。。ゴメンなさいわかりません。
Kazuya.M

2017/08/30 08:10

--forceオプションを付けてopenldap-2.4.40-13.el7.x86_64をインストールしたらyumが使えるようになりました!ご親切に回答して頂き本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問