私はCentOS6.4を使用しており、PHPをv5.3.3からv5.4.19にアップグレードするために このチュートリアル をフォローしていましたが、次のエラーが発生しました:
エラー:php54w-commonがphp-common-5.3.3-23.el6_4.i686と競合します
。この問題を解決するにはどうすればよいですか?
[my_profile@localhost gplus-quickstart-php]$ Sudo rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
[Sudo] password for my_profile:
Retrieving http://mirror.webtatic.com/yum/el6/latest.rpm
warning: /var/tmp/rpm-tmp.S0yqSL: Header V4 DSA/SHA1 Signature, key ID cf4c4ff9: NOKEY
Preparing... ########################################### [100%]
1:webtatic-release ########################################### [100%]
[my_profile@localhost gplus-quickstart-php]$ Sudo yum install php54w
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
* base: mirror.netglobalis.net
* extras: mirror.netglobalis.net
* rpmforge: mirror.nexcess.net
* updates: mirror.netglobalis.net
* webtatic: us-east.repo.webtatic.com
webtatic | 2.9 kB 00:00
webtatic/primary_db | 98 kB 00:00
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package php54w.i386 0:5.4.19-1.w6 will be installed
--> Processing Dependency: php54w-common = 5.4.19-1.w6 for package: php54w-5.4.19-1.w6.i386
--> Processing Dependency: php54w-cli = 5.4.19-1.w6 for package: php54w-5.4.19-1.w6.i386
--> Running transaction check
---> Package php54w-cli.i386 0:5.4.19-1.w6 will be installed
---> Package php54w-common.i386 0:5.4.19-1.w6 will be installed
--> Processing Conflict: php54w-common-5.4.19-1.w6.i386 conflicts php-common < 5.4.0
--> Finished Dependency Resolution
Error: php54w-common conflicts with php-common-5.3.3-23.el6_4.i686
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
[my_profile@localhost gplus-quickstart-php]$ ^C
[my_profile@localhost gplus-quickstart-php]$ ^C
[my_profile@localhost gplus-quickstart-php]$ Error: php54w-common conflicts with php-common-5.3.3-23.el6_4.i686
bash: Error:: command not found
[my_profile@localhost gplus-quickstart-php]$
引用したチュートリアルでは、インストールされているパッケージとの競合を回避できる新しいシステムでこのWebtaticリポジトリを使用することを推奨していますが、(rootとしてまたはSudoを使用して)現在インストールされているphpをアップグレードできることを示しています。
yum install yum-plugin-replace
yum replace php-common --replace-with=php54w-common
次に、Sudo yum install php54w
再び。
余談ですが、おそらく、アウトオブバンドパッケージへの更新を要求しているベンダーに確認して、PHPのこのディストリビューションの変更が絶対に必要な機能を確認する必要があります。
通常、修正と(いくつかの)機能は、確立された認定リリースバージョンにバックポートされます。一部のベンダーは、「5.4は5.3よりも大きいので、より良く、より輝いている必要がある」と誤って信じており、多くの場合、それは本当に危険なことです。丁寧に管理されたバージョンを、ダース以上の専門家のチームによってOSに対してテストされた自動のささいな更新と入れ替えると、「誰か」によって1回ロールされ、ファイルサーバーにドロップされます。彼のためにテストする世界では、今週のリリースで得られるよりも、ダウンタイム、エラー、そのリリースでは修正されないセキュリティバグ、および不整合にもう少しお金を払っています。
注意してください。最近ベンダーに尋ねたところ、このレポとEPELの違いすら知らないと判断されました。これは2つのまったく異なることです。