Обновлено до 18.04 с 16.04 сегодня do-release-upgrade -d
Во время обновления мне сообщили, что некоторые пакеты будут удалены, в том числе:
Удалить: libperl5.22 lxc-common perl-modules-5.22 php-imagick
php7.1-curl php7.2-curl python3-certbot-nginx
Я мог бы переустановить imagick и certbot без проблем, но если я попытаюсь установить php7.2-curl, я получу сообщение:
# apt install php7.2-curl -y
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
php7.2-curl : Depends: php7.2-common (= 7.2.3-1ubuntu1) but 7.2.4-1+ubuntu16.04.1+deb.sury.org+1 is to be installed
E: Unable to correct problems, you have held broken packages.
Как я могу исправить ситуацию?
Это может спасти вас:
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.2-fpm php7.2-gd php7.2-curl php7.2-mysql php7.2-dev php7.2-cli php7.2-common php7.2-mbstring php7.2-intl php7.2-zip php7.2-bcmath
затем sudo service apache2 restart
Вам не нужно добавлять новый репо. Просто сделайте это, и версия 7.2 будет установлена. Не забудьте перезапустить php и apache после. Также убедитесь, что (вы, вероятно, уже сделали это), чтобы включить новый мод после:
sudo apt install php-curl
sudo a2enmod php7.2
Вы также заметите, вероятно, что в конце установки php-curl
(который устанавливает php-curl
а также php7.2-curl
) следующее (обратите внимание, что у меня есть настройка FPM, может выглядеть иначе, если вы не используете FPM):
NOTICE: Not enabling PHP 7.2 FPM by default.
NOTICE: To enable PHP 7.2 FPM in Apache2 do:
NOTICE: a2enmod proxy_fcgi setenvif
NOTICE: a2enconf php7.2-fpm
NOTICE: You are seeing this message because you have apache2 package installed.
Так что делай, что написано:
sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php7.2-fpm
sudo systemctl restart apache2.service