Я хочу добавить поддержку командной строки для PHP5 на моем сервере. При запуске aptitude install php5-cli
я получаю сообщение о том, что мои модули/пакеты PHP имеют неудовлетворенные зависимости.
Вот список пакетов, которые страдают от этих «неудовлетворенных зависимостей», а также потребностей и обновлений:
- php5-gd
- php5-curl
- php5-mysql
- php5-cgi
Все они зависят от php5-common.
Могу ли я обновить пакеты так, как предлагает aptitude, не вызывая при этом сбоев в работе сайта?
Выход из способности
Reading package lists... Done
Building dependency tree
Reading state information... Done
Reading extended state information
Initialising package states... Done
The following packages are BROKEN:
libapache2-mod-php5 php5-cgi php5-curl php5-gd php5-mysql
The following NEW packages will be installed:
php5-cli
The following packages will be upgraded:
php5-common
1 packages upgraded, 1 newly installed, 0 to remove and 123 not upgraded.
Need to get 3,511kB of archives. After unpacking 7,803kB will be used.
The following packages have unmet dependencies:
php5-gd: Depends: php5-common (= 5.3.3-1ubuntu12~lucid) but 5.3.5-1ubuntu7.2ppa1~lucid is to be installed.
php5-curl: Depends: php5-common (= 5.3.3-1ubuntu12~lucid) but 5.3.5-1ubuntu7.2ppa1~lucid is to be installed.
php5-mysql: Depends: php5-common (= 5.3.3-1ubuntu12~lucid) but 5.3.5-1ubuntu7.2ppa1~lucid is to be installed.
php5-cgi: Depends: php5-common (= 5.3.3-1ubuntu12~lucid) but 5.3.5-1ubuntu7.2ppa1~lucid is to be installed.
libapache2-mod-php5: Depends: php5-common (= 5.3.3-1ubuntu12~lucid) but 5.3.5-1ubuntu7.2ppa1~lucid is to be installed.
The following actions will resolve these dependencies:
Upgrade the following packages:
libapache2-mod-php5 [5.3.3-1ubuntu12~lucid (now) -> 5.3.5-1ubuntu7.2ppa1~lucid (lucid)]
php5-cgi [5.3.3-1ubuntu12~lucid (now) -> 5.3.5-1ubuntu7.2ppa1~lucid (lucid)]
php5-curl [5.3.3-1ubuntu12~lucid (now) -> 5.3.5-1ubuntu7.2ppa1~lucid (lucid)]
php5-gd [5.3.3-1ubuntu12~lucid (now) -> 5.3.5-1ubuntu7.2ppa1~lucid (lucid)]
php5-mysql [5.3.3-1ubuntu12~lucid (now) -> 5.3.5-1ubuntu7.2ppa1~lucid (lucid)]
Score is 340
решение1
Мой ответ:может быть! ;-)
PHP 5.3.3 до 5.3.5 не должны иметь значения. Конечно, если только Ubuntu/Debian не сделают что-то еще более безумное. Но точечные релизы (например, 5.3.x до 5.3.y) никогда не должны ломать набор функций.
То есть, надеюсь, вы не делали безумных хаков и, например, не полагались на ошибки в 5.3.3, которые были исправлены в 5.3.5, и поэтому не вызвали регрессию. Самый простой способ проверить это — запустить тестовую виртуальную машину и посмотреть, работает ли ваш сайт (или, что еще лучше: работает ли ваш тестовый набор).
Еще один трюк — попробовать установить 5.3.3 — вот идея (обратите внимание, что моя версия отличается):
# apt-cache showpkg php5-cli
Package: php5-cli
Versions:
5.2.10.dfsg.1-2ubuntu6.10
...
(Я обрезал вывод.)
Затем установите с помощью:
# apt-get install php5-cli=5.2.10.dfsg.1-2ubuntu6.10
...
НТН
решение2
Вы используете Nginx PPA и Aptitude пытается обновить пакеты для более новых версий. Если вы хотите установить php5-cli из репозитория Ubuntu, вы должны использовать aptitude install php5-cli=5.3.3-1ubuntu12~lucid
.