実行すると、以下のエラーが発生します:Sudo yum update
Downloading packages:
No Presto metadata available for base
python-augeas-0.5.0-2.el7.noarch.rpm | 25 kB 00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Updating : python-augeas-0.5.0-2.el7.noarch 1/2
Error unpacking rpm package python-augeas-0.5.0-2.el7.noarch
error: unpacking of archive failed on file /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info: cpio: rename
Verifying : python-augeas-0.5.0-2.el7.noarch 1/2
python-augeas-0.4.1-5.el7.noarch was supposed to be removed but is not!
Verifying : python-augeas-0.4.1-5.el7.noarch 2/2
Failed:
python-augeas.noarch 0:0.4.1-5.el7 python-augeas.noarch 0:0.5.0-2.el7
Complete!
アップデートではファイルが削除されることを想定しているようです。私の計画は、それを見つけて削除してから、更新を再試行することでした。ただし、find -iname "python-augeas-0.4.1-5.el7.noarch"
は何も返さないので、そのファイルを削除することが最善の方法であるかどうか疑問があります。
確かに、私はシステム管理者ではなく、このようなことに関しては非常に有能でもありません。どんな助けでも大歓迎です。ありがとう。
編集1:
Michael Hamptonが提案したように、権限と属性は次のとおりです。
$ ls -ld /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
drwxr-xr-x. 2 root root 4096 Jun 29 2015 /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
$ lsattr -d /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
---------------- /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
編集2:
Sudo yum remove python-augeas
でパッケージをアンインストールしました。次に、次のエラーで再インストールしました。
$ Sudo yum install python-augeas
Loaded plugins: fastestmirror, langpacks, remove-with-leaves
Loading mirror speeds from cached hostfile
* base: mirrors.rit.edu
* epel: mirror.steadfast.net
* extras: centos.chi.Host-engine.com
* nux-dextop: mirror.li.nux.ro
* updates: mirrors.rit.edu
Resolving Dependencies
--> Running transaction check
---> Package python-augeas.noarch 0:0.5.0-2.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================================================================
Package Arch Version Repository Size
======================================================================================================================================================
Installing:
python-augeas noarch 0.5.0-2.el7 base 25 k
Transaction Summary
======================================================================================================================================================
Install 1 Package
Total download size: 25 k
Installed size: 71 k
Is this ok [y/d/N]: y
Downloading packages:
python-augeas-0.5.0-2.el7.noarch.rpm | 25 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : python-augeas-0.5.0-2.el7.noarch 1/1
Error unpacking rpm package python-augeas-0.5.0-2.el7.noarch
error: unpacking of archive failed on file /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info: cpio: rename
Verifying : python-augeas-0.5.0-2.el7.noarch 1/1
Failed:
python-augeas.noarch 0:0.5.0-2.el7
Complete!
編集3:
Michael Hamptonは、私のディレクトリのアクセス許可について正しかった:
$ ls -ld /usr/lib/python2.7/site-packages/
drwxr-xr-x. 161 root root 12288 Jan 14 12:47 /usr/lib/python2.7/site-packages/
解決:
Sudo chmod 777 /usr/lib/python2.7/site-packages/
Sudo yum install -y python-augeas
これは、yumが名前付きファイルの古いコピーを削除できなかったために発生します。/usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
。
これは、権限が正しく設定されていないか、不変の属性が設定されていることが原因である可能性があります。
指定されたファイル/ディレクトリおよび含まれているディレクトリの権限と属性を確認し、問題があれば修正します。その後、更新を再試行してください。
ls -ld /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
lsattr -d /usr/lib/python2.7/site-packages/python_augeas-0.5.0-py2.7.Egg-info
ls -ld /usr/lib/python2.7/site-packages
lsattr -d /usr/lib/python2.7/site-packages
/usr/lib/python2.7/site-packages/
をperms777に設定することは、良い解決策ではありません。また、Sudo
を使用するとスーパーユーザーとして実行され、何があってもそのディレクトリに対するアクセス許可が必要になるため(より複雑なACLを除く)、これが修正されたのではないかと疑っています。
このエラーは、pythonモジュールが別の方法でインストールされた場合にも発生する可能性があります。モジュールはpip list
にありますか?はいの場合、Sudo pip uninstall augeas
を実行してからyum
で問題が解決するはずです。
あなたがそれを助けることができるならば、あなたはパッケージマネージャーを混ぜたくありません。