Назад | Перейти на главную страницу

Как исправить проблему «yum update» в CentOS?

Когда я это сделаю, я получаю следующую ошибку sudo yum update. Единственное, что я сделал до появления ошибки, - это установил Python 2.7 в каталог, отличный от Python 2.4. По умолчанию на сервере по-прежнему установлен Python 2.4:

 Error: Missing Dependency: php-common = 5.2.4-el5.centos is needed by package php-mhash
 Error: Missing Dependency: libnss3.so(NSS_3.12) is needed by package libcurl
 Error: Missing Dependency: libnssutil3.so is needed by package libcurl

Вот вся команда:

sudo yum update
Loading "installonlyn" plugin
Setting up Update Process
Setting up repositories
rightscale                100% |=========================|  951 B    00:00     
Reading repository metadata in from local files
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package php-xml.i386 0:5.3.2-1 set to be updated
---> Package git.i386 0:1.6.4.2-1 set to be updated
---> Package perl-Git.i386 0:1.6.4.2-1 set to be updated
---> Package php-mysql.i386 0:5.3.2-1 set to be updated
---> Package mysql.i386 0:5.0.89-1 set to be updated
---> Package mysql-devel.i386 0:5.0.89-1 set to be updated
---> Package php-pdo.i386 0:5.3.2-1 set to be updated
---> Package GeoIP.i386 0:1.4.7-0.1.20090931cvs set to be updated
---> Package autoconf.noarch 0:2.63-2 set to be updated
---> Package sqlite.i386 0:3.6.17-1 set to be updated
---> Package php-mcrypt.i386 0:5.3.2-1 set to be updated
---> Package php-pear.noarch 1:1.9.0-1 set to be updated
---> Package GeoIP-devel.i386 0:1.4.7-0.1.20090931cvs set to be updated
---> Package php-pecl-memcache.i386 0:3.0.4-3 set to be updated
---> Package php-devel.i386 0:5.3.2-1 set to be updated
---> Package mysql-server.i386 0:5.0.89-1 set to be updated
---> Package php-cli.i386 0:5.3.2-1 set to be updated
---> Package m4.i386 0:1.4.12-2 set to be updated
---> Package php-gd.i386 0:5.3.2-1 set to be updated
---> Package php.i386 0:5.3.2-1 set to be updated
---> Package php-common.i386 0:5.3.2-1 set to be updated
--> Running transaction check
--> Processing Dependency: libedit.so.0 for package: php-cli
--> Processing Dependency: libltdl.so.3 for package: php-mcrypt
--> Processing Dependency: php-common = 5.2.4-el5.centos for package: php-mhash
--> Processing Dependency: libt1.so.5 for package: php-gd
--> Processing Dependency: libcurl.so.4 for package: php-common
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package t1lib.i386 0:5.1.1-7.el5 set to be updated
---> Package libedit.i386 0:2.11-1.20080712cvs.el5 set to be updated
---> Package libcurl.i386 0:7.19.6-5 set to be updated
---> Package libtool-ltdl.i386 0:1.5.22-6.1 set to be updated
--> Running transaction check
--> Processing Dependency: libnss3.so(NSS_3.12) for package: libcurl
--> Processing Dependency: libssh2.so.1 for package: libcurl
--> Processing Dependency: php-common = 5.2.4-el5.centos for package: php-mhash
--> Processing Dependency: libnssutil3.so for package: libcurl
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package libssh2.i386 0:0.18-9.el5 set to be updated
--> Running transaction check
--> Processing Dependency: libnss3.so(NSS_3.12) for package: libcurl
--> Processing Dependency: php-common = 5.2.4-el5.centos for package: php-mhash
--> Processing Dependency: libnssutil3.so for package: libcurl
--> Finished Dependency Resolution
Error: Missing Dependency: php-common = 5.2.4-el5.centos is needed by package php-mhash
Error: Missing Dependency: libnss3.so(NSS_3.12) is needed by package libcurl
Error: Missing Dependency: libnssutil3.so is needed by package libcurl

Проблема исходит из репозитория "шкалы прав". Вы, вероятно, установили php-5.2 и php-mhash из этого репозитория, и похоже, что теперь они хотят обновить вашу систему до php-5.3, но они не обновили все модули правильно.

Предлагаю вам запустить:

yum --disablerepo rightscale update

И посмотрите, что происходит. Чтобы обновить свои пакеты php, вам следует либо связаться с rightscale и сообщить им о проблеме, либо использовать только пакеты из Centos / Redhat / ScientificLinux (независимо от вашего базового дистрибутива, доступны php-5.1 и php53) или другого стороннего производителя например "ius", чтобы получить дополнительные пакеты, такие как php-5.2