私のCentOS-Base.repoファイルからepelを実行します。

私のCentOS-Base.repoファイルからepelを実行します。

epel repoがPythonの更新された依存関係を読む場所を理解していないようです。たとえば、実行すると、sudo yum update次のメッセージが表示され、正常に実行され、リストされた依存関係を満たしますが、依然としてpip install requests依存pip install six関係に対して同じメッセージが表示されます。また、私のフォルダにリクエストと6つのパッケージを表示し/usr/lib/python2.6/site-packages、問題なくPythonにインポートすることもできます。

私のCentOS-Base.repoファイルからepelを実行します。

[epel]
name = none
baseurl = http://mirror.rightscale.com/epel/6/x86_64/archive/20140514/
  http://ec2-us-east-mirror.rightscale.com/epel/6/x86_64/archive/20140514/
  http://ec2-us-west-mirror.rightscale.com/epel/6/x86_64/archive/20140514/
failovermethod=priority
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

# yum repolist
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: mirror.rightscale.com
 * centosplus: mirror.rightscale.com
 * epel: mirror.symnds.com
 * extras: mirror.rightscale.com
 * rightscale-epel: mirror.rightscale.com
 * updates: mirror.rightscale.com
rightscale-epel                                                                                                                                                                                                        |  951 B     00:00
repo id                                                                                               repo name                                                                                                                         status
base                                                                                                  none                                                                                                                               6,367
centosplus                                                                                            none                                                                                                                                  48
epel                                                                                                  Extra Packages for Enterprise Linux 6 - x86_64                                                                                    11,830
extras                                                                                                none                                                                                                                                  14
jenkins                                                                                               Jenkins                                                                                                                              314
percona                                                                                               CentOS 6 - Percona                                                                                                                   671
puppetlabs-deps                                                                                       Puppet Labs Dependencies El 6 - x86_64                                                                                                77
puppetlabs-products                                                                                   Puppet Labs Products El 6 - x86_64                                                                                                   538
rightscale-epel                                                                                       none                                                                                                                                 285
updates                                                                                               none                                                                                                                                 909
repolist: 21,053

手動で試しても、次のようにrpm -ivh python-boto-2.38.0-1.el6.noarch.rpmなります。

error: Failed dependencies:
    python-requests is needed by python-boto-2.38.0-1.el6.noarch
    python-rsa is needed by python-boto-2.38.0-1.el6.noarch
    python-six is needed by python-boto-2.38.0-1.el6.noarch

# sudo yum update
Loaded plugins: fastestmirror, security
Loading mirror speeds from cached hostfile
 * base: ec2-us-west-mirror.rightscale.com
 * centosplus: ec2-us-west-mirror.rightscale.com
 * epel: mirror.symnds.com
 * extras: ec2-us-west-mirror.rightscale.com
 * rightscale-epel: ec2-us-west-mirror.rightscale.com
 * updates: ec2-us-west-mirror.rightscale.com
rightscale-epel                                                                                |  951 B     00:00
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package libunwind.x86_64 0:1.1-2.el6 will be updated
---> Package libunwind.x86_64 0:1.1-3.el6 will be an update
---> Package python-boto.noarch 0:2.27.0-1.el6 will be updated
---> Package python-boto.noarch 0:2.38.0-1.el6 will be an update
--> Processing Dependency: python-six for package: python-boto-2.38.0-1.el6.noarch
--> Processing Dependency: python-rsa for package: python-boto-2.38.0-1.el6.noarch
--> Processing Dependency: python-requests for package: python-boto-2.38.0-1.el6.noarch
---> Package python-pip.noarch 0:1.3.1-4.el6 will be updated
---> Package python-pip.noarch 0:7.1.0-1.el6 will be an update
---> Package ssmtp.x86_64 0:2.61-21.el6 will be updated
---> Package ssmtp.x86_64 0:2.61-22.el6 will be an update
--> Running transaction check
---> Package python-boto.noarch 0:2.38.0-1.el6 will be an update
--> Processing Dependency: python-six for package: python-boto-2.38.0-1.el6.noarch
--> Processing Dependency: python-requests for package: python-boto-2.38.0-1.el6.noarch
---> Package python-rsa.noarch 0:3.1.1-5.el6 will be installed
--> Finished Dependency Resolution
Error: Package: python-boto-2.38.0-1.el6.noarch (epel)
           Requires: python-requests
Error: Package: python-boto-2.38.0-1.el6.noarch (epel)
           Requires: python-six
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

ベストアンサー1

手動pipインストールはRPM依存関係を満たさず、インストール場所によっては実際にベンダーまたはリポジトリ提供パッケージ(RPMの意味ではなくファイルが存在するという意味)と競合する可能性があります。依存関係はRPMパッケージの一部であり、通常はyum次のデータベースで構成されています。

Aはyum install python-boto私のRHEL6 + EPELテストシステムでうまく動作するので、リストされたエラーの原因が何であるかわかりません。 EPEL以外にパッケージリポジトリを使用しますか? EPELと他のパッケージストアの両方がアクティブなホストとの間でパッケージ間で競合が発生することを確認しました。として削除して再インストールする必要がありますインストールの競合が発生します。エラーが発生し、これに対してrpmfusionを実行します)。

手動pipインストールも状況を複雑にします。インストールする場合はpipホームディレクトリにインストールし、それ以外の場合はRPMが使用するベンダースペースにインストールしません。

おすすめ記事