FreeBSD: Обновляем PHP на новую версию

Рано или поздно приходится обновлять устаревшие версии программного обеспечения.
PHP не является исключением.
Я пользователь nextcloud и после обновления его до версии 19, получил сообщение, что использую версию PHP 7.2.
Для следующей версии nextcloud 20 требуется PHP версии не ниже 7.3.

Предупреждения о текущей конфигурации. На этом сервере используется PHP версии 7.2.31.
Рекомендуется обновить PHP чтобы воспользоваться улучшениями производительности и безопасности, внедрёнными PHP Group сразу, как только новая версия будет доступна в используемом дистрибутиве.
Nextcloud версии 19 — последний выпуск, поддерживающий PHP версии 7.2.
Для работы Nextcloud версии 20 потребуется PHP версии не ниже 7.3.

Решил не ждать, а обновить заранее.

Для обновления будет использовать pkg.
Напрямую поднять версию PHP не получится, нам придется удалить PHP и его модули и установить их заново нужной нам версии.

Посмотрим, что у нас установлено:

# pkg info | grep php | awk '{print $1}'
nextcloud-php72-19.0.0
php72-7.2.31
php72-bcmath-7.2.31
php72-bz2-7.2.31
php72-ctype-7.2.31
php72-curl-7.2.31
php72-dom-7.2.31
php72-exif-7.2.31
php72-fileinfo-7.2.31
php72-filter-7.2.31
php72-gd-7.2.31
php72-gmp-7.2.31
php72-hash-7.2.31
php72-iconv-7.2.31
php72-intl-7.2.31
php72-json-7.2.31
php72-mbstring-7.2.31
php72-opcache-7.2.31
php72-openssl-7.2.31
php72-pcntl-7.2.31
php72-pdo-7.2.31
php72-pdo_mysql-7.2.31
php72-pecl-APCu-5.1.18
php72-pecl-imagick-3.4.4
php72-pecl-smbclient-1.0.0_1
php72-posix-7.2.31
php72-session-7.2.31
php72-simplexml-7.2.31
php72-soap-7.2.31
php72-xml-7.2.31
php72-xmlreader-7.2.31
php72-xmlwriter-7.2.31
php72-xsl-7.2.31
php72-zip-7.2.31
php72-zlib-7.2.31

Создадим список, что мы будем обновлять:

pkg info \*php7\* | sed 's/72/73/' | sed 's/-[0-9].*//' | tr '\n' ' ' > ~/phplist

Посмотрим, что у нас в ~/phplist:

less ~/phplist
nextcloud-php73 php73 php73-bcmath php73-bz2 php73-ctype php73-curl php73-dom php73-exif php73-fileinfo php73-filter php73-gd php73-gmp php73-hash php73-iconv php73-intl php73-json php73-mbstring php73-opcache php73-openssl php73-pcntl php73-pdo php73-pdo_mysql php73-pecl-APCu php73-pecl-imagick php73-pecl-smbclient php73-posix php73-session php73-simplexml php73-soap php73-xml php73-xmlreader php73-xmlwriter php73-xsl php73-zip php73-zlib

Видим, что мы получили список PHP и все что с ним связано с версией 7.3
Удаляем PHP:

pkg delete -fy \*php7\*

Установим PHP 7.3 и все нужные нам модули из списка phplist:

pkg install -y `cat ~/phplist` && rm ~/phplist

Рестартуем затронутые сервисы, к примеру php-fpm:

service php-fpm restart

На этом все.

Рейтинг
( 1 оценка, среднее 5 из 5 )
Понравилась статья? Поделиться с друзьями:
Добавить комментарий

:) :D :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.