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

Print Friendly, PDF & Email

Задача:

Обновить в операционной системе FreeBSD версию PHP 7.3 до версии PHP 7.4

---------------------------------------------------------------

Я уже касался темы PHP в одной из статей: “Установка PHP 7.3 в ОС FreeBSD 11.2“. Вернуться к ней пришлось из-за ошибки обновления одного из приложений в облаке NextCloud.

После того как я получил сообщение:

Для приложения “Passwords” доступно обновление до версии 2021

почитал о том какие обновления содержит “Passwords”

Removed
Nextcloud 17, 18 and 19 support
PHP 7.2 and PHP 7.3 support

Попытался обновить через веб-интерфейс и получил ошибку всего сервера nextcloud. Обновление в консоли болы более информативно.

root@cloud:/ # sudo -u www php occ app:enable passwords
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php
App "Passwords" cannot be installed because the following dependencies are not fulfilled: PHP 7.4 or higher is required.
root@cloud:/ #

Решение обновиться до версии PHP 7.4, пришло само собой. Есть пользователи которые пользуются облаком и приложением для хранения паролей. В совокупности с плагином для браузера, получается аналог похожий на менеджер паролей в chrome.

Информация о системе:

root@cloud:/ # uname -a
FreeBSD cloud 12.0-RELEASE FreeBSD 12.0-RELEASE r341666 GENERIC  amd64
root@cloud:/ # nginx -v
nginx version: nginx/1.18.0
root@cloud:/ # mysql -V
mysql  Ver 15.1 Distrib 10.3.27-MariaDB, for FreeBSD12.1 (amd64) using readline 5.1
root@cloud:/ # php-fpm -v
PHP 7.3.25 (fpm-fcgi) (built: Dec 10 2020 01:31:51)
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.25, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.25, Copyright (c) 1999-2018, by Zend Technologies
root@cloud:/ # sudo -u www php occ status
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php
  - installed: true
  - version: 20.0.4.0
  - versionstring: 20.0.4
  - edition:
root@cloud:/ # sudo -u www php occ upgrade
The process control (PCNTL) extensions are required in case you want to interrupt long running commands - see http://php.net/manual/en/book.pcntl.php
Nextcloud is already latest version
root@cloud:/ # cat /usr/local/etc/php.conf
PHP_VER=73
PHP_VERSION=7.3.25
PHP_SAPI=cli cgi fpm embed
PHP_EXT_INC=pcre spl
PHP_EXT_DIR=20180731
root@cloud:/ # 

Получаем информацию об установленных пакетах PHP

root@cloud:/ # pkg info | grep php | awk '{print $1}'
php73-7.3.25
php73-bcmath-7.3.25
php73-bz2-7.3.25
php73-ctype-7.3.25
php73-curl-7.3.25
php73-dom-7.3.25
php73-exif-7.3.25
php73-extensions-1.0
php73-fileinfo-7.3.25
php73-filter-7.3.25
php73-ftp-7.3.25
php73-gd-7.3.25
php73-gmp-7.3.25
php73-hash-7.3.25
php73-iconv-7.3.25
php73-imap-7.3.25
php73-intl-7.3.25
php73-json-7.3.25
php73-mbstring-7.3.25
php73-opcache-7.3.25
php73-openssl-7.3.25
php73-pdo-7.3.25
php73-pdo_mysql-7.3.25
php73-pdo_sqlite-7.3.25
php73-pecl-APCu-5.1.18
php73-pecl-imagick-im7-3.4.4
php73-pecl-memcached-3.1.5
php73-pecl-redis-5.3.1
php73-phar-7.3.25
php73-posix-7.3.25
php73-session-7.3.25
php73-simplexml-7.3.25
php73-sqlite3-7.3.25
php73-tokenizer-7.3.25
php73-xml-7.3.25
php73-xmlreader-7.3.25
php73-xmlwriter-7.3.25
php73-zip-7.3.25
php73-zlib-7.3.25
root@cloud:/ #

Сохраним на всякий случай собранную информацию в файл и проверим содержимое полученного файла

root@cloud:/ # pkg info php73\* > /root/php73_packages.txt
root@cloud:/ # cat /root/php73_packages.txt
php73-7.3.25
php73-bcmath-7.3.25
php73-bz2-7.3.25
php73-ctype-7.3.25
php73-curl-7.3.25
php73-dom-7.3.25
php73-exif-7.3.25
php73-extensions-1.0
php73-fileinfo-7.3.25
php73-filter-7.3.25
php73-ftp-7.3.25
php73-gd-7.3.25
php73-gmp-7.3.25
php73-hash-7.3.25
php73-iconv-7.3.25
php73-imap-7.3.25
php73-intl-7.3.25
php73-json-7.3.25
php73-mbstring-7.3.25
php73-opcache-7.3.25
php73-openssl-7.3.25
php73-pdo-7.3.25
php73-pdo_mysql-7.3.25
php73-pdo_sqlite-7.3.25
php73-pecl-APCu-5.1.18
php73-pecl-imagick-im7-3.4.4
php73-pecl-memcached-3.1.5
php73-pecl-redis-5.3.1
php73-phar-7.3.25
php73-posix-7.3.25
php73-session-7.3.25
php73-simplexml-7.3.25
php73-sqlite3-7.3.25
php73-tokenizer-7.3.25
php73-xml-7.3.25
php73-xmlreader-7.3.25
php73-xmlwriter-7.3.25
php73-zip-7.3.25
php73-zlib-7.3.25
root@cloud:/ #

Создадим список, который необходимо будет установить. Командами консоли я сформировал список пакетов PHP версии 7.3, которые уже установлены. Затем в названиях заменили 73 на 74 и убрал окончания с информацией содержащей версии. И последним шагом я заменил переносы на следующую строку пробелами и записал вывод в файл

root@cloud:/ # pkg info \*php7\* | sed 's/73/74/' | sed 's/-[0-9].*//' | tr '\n' ' ' > ~/php74_packages_install.txt
root@cloud:/ # cat ~/php74_packages_install.txt
php74 php74-bcmath php74-bz2 php74-ctype php74-curl php74-dom php74-exif php74-extensions php74-fileinfo php74-filter php74-ftp php74-gd php74-gmp php74-hash php74-iconv php74-imap php74-intl php74-json php74-mbstring php74-opcache php74-openssl php74-pdo php74-pdo_mysql php74-pdo_sqlite php74-pecl-APCu php74-pecl-imagick-im7 php74-pecl-memcached php74-pecl-redis php74-phar php74-posix php74-session php74-simplexml php74-sqlite3 php74-tokenizer php74-xml php74-xmlreader php74-xmlwriter php74-zip php74-zlib 
root@cloud:/ #

Останавливаем сервис php-fpm

root@cloud:/ # service php-fpm stop
Stopping php_fpm.
Waiting for PIDS: 14766.
root@cloud:/ #

Удаляем пакеты PHP при помощи сформированного файла

root@cloud:/ # cat /root/php73_packages.txt | xargs pkg delete -fy
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 39 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        php73: 7.3.25
        php73-bcmath: 7.3.25
        php73-bz2: 7.3.25
        php73-ctype: 7.3.25
        php73-curl: 7.3.25
        php73-dom: 7.3.25
        php73-exif: 7.3.25
        php73-extensions: 1.0
        php73-fileinfo: 7.3.25
        php73-filter: 7.3.25
        php73-ftp: 7.3.25
        php73-gd: 7.3.25
        php73-gmp: 7.3.25
        php73-hash: 7.3.25
        php73-iconv: 7.3.25
        php73-imap: 7.3.25
        php73-intl: 7.3.25
        php73-json: 7.3.25
        php73-mbstring: 7.3.25
        php73-opcache: 7.3.25
        php73-openssl: 7.3.25
        php73-pdo: 7.3.25
        php73-pdo_mysql: 7.3.25
        php73-pdo_sqlite: 7.3.25
        php73-pecl-APCu: 5.1.18
        php73-pecl-imagick-im7: 3.4.4
        php73-pecl-memcached: 3.1.5
        php73-pecl-redis: 5.3.1
        php73-phar: 7.3.25
        php73-posix: 7.3.25
        php73-session: 7.3.25
        php73-simplexml: 7.3.25
        php73-sqlite3: 7.3.25
        php73-tokenizer: 7.3.25
        php73-xml: 7.3.25
        php73-xmlreader: 7.3.25
        php73-xmlwriter: 7.3.25
        php73-zip: 7.3.25
        php73-zlib: 7.3.25

Number of packages to be removed: 39

The operation will free 38 MiB.
[1/39] Deinstalling php73-extensions-1.0...
[2/39] Deinstalling php73-pdo_mysql-7.3.25...
[2/39] Deleting files for php73-pdo_mysql-7.3.25: 100%
[3/39] Deinstalling php73-pdo_sqlite-7.3.25...
[3/39] Deleting files for php73-pdo_sqlite-7.3.25: 100%
[4/39] Deinstalling php73-pecl-memcached-3.1.5...
[4/39] Deleting files for php73-pecl-memcached-3.1.5: 100%
[5/39] Deinstalling php73-pecl-redis-5.3.1...
[5/39] Deleting files for php73-pecl-redis-5.3.1: 100%
[6/39] Deinstalling php73-phar-7.3.25...
[6/39] Deleting files for php73-phar-7.3.25: 100%
[7/39] Deinstalling php73-xmlreader-7.3.25...
[7/39] Deleting files for php73-xmlreader-7.3.25: 100%
[8/39] Deinstalling php73-bcmath-7.3.25...
[8/39] Deleting files for php73-bcmath-7.3.25: 100%
[9/39] Deinstalling php73-bz2-7.3.25...
[9/39] Deleting files for php73-bz2-7.3.25: 100%
[10/39] Deinstalling php73-ctype-7.3.25...
[10/39] Deleting files for php73-ctype-7.3.25: 100%
[11/39] Deinstalling php73-curl-7.3.25...
[11/39] Deleting files for php73-curl-7.3.25: 100%
[12/39] Deinstalling php73-dom-7.3.25...
[12/39] Deleting files for php73-dom-7.3.25: 100%
[13/39] Deinstalling php73-exif-7.3.25...
[13/39] Deleting files for php73-exif-7.3.25: 100%
[14/39] Deinstalling php73-fileinfo-7.3.25...
[14/39] Deleting files for php73-fileinfo-7.3.25: 100%
[15/39] Deinstalling php73-filter-7.3.25...
[15/39] Deleting files for php73-filter-7.3.25: 100%
[16/39] Deinstalling php73-ftp-7.3.25...
[16/39] Deleting files for php73-ftp-7.3.25: 100%
[17/39] Deinstalling php73-gd-7.3.25...
[17/39] Deleting files for php73-gd-7.3.25: 100%
[18/39] Deinstalling php73-gmp-7.3.25...
[18/39] Deleting files for php73-gmp-7.3.25: 100%
[19/39] Deinstalling php73-hash-7.3.25...
[19/39] Deleting files for php73-hash-7.3.25: 100%
[20/39] Deinstalling php73-iconv-7.3.25...
[20/39] Deleting files for php73-iconv-7.3.25: 100%
[21/39] Deinstalling php73-imap-7.3.25...
[21/39] Deleting files for php73-imap-7.3.25: 100%
[22/39] Deinstalling php73-intl-7.3.25...
[22/39] Deleting files for php73-intl-7.3.25: 100%
[23/39] Deinstalling php73-json-7.3.25...
[23/39] Deleting files for php73-json-7.3.25: 100%
[24/39] Deinstalling php73-mbstring-7.3.25...
[24/39] Deleting files for php73-mbstring-7.3.25: 100%
[25/39] Deinstalling php73-opcache-7.3.25...
[25/39] Deleting files for php73-opcache-7.3.25: 100%
[26/39] Deinstalling php73-openssl-7.3.25...
[26/39] Deleting files for php73-openssl-7.3.25: 100%
[27/39] Deinstalling php73-pdo-7.3.25...
[27/39] Deleting files for php73-pdo-7.3.25: 100%
[28/39] Deinstalling php73-pecl-APCu-5.1.18...
[28/39] Deleting files for php73-pecl-APCu-5.1.18: 100%
[29/39] Deinstalling php73-pecl-imagick-im7-3.4.4...
[29/39] Deleting files for php73-pecl-imagick-im7-3.4.4: 100%
[30/39] Deinstalling php73-posix-7.3.25...
[30/39] Deleting files for php73-posix-7.3.25: 100%
[31/39] Deinstalling php73-session-7.3.25...
[31/39] Deleting files for php73-session-7.3.25: 100%
[32/39] Deinstalling php73-simplexml-7.3.25...
[32/39] Deleting files for php73-simplexml-7.3.25: 100%
[33/39] Deinstalling php73-sqlite3-7.3.25...
[33/39] Deleting files for php73-sqlite3-7.3.25: 100%
[34/39] Deinstalling php73-tokenizer-7.3.25...
[34/39] Deleting files for php73-tokenizer-7.3.25: 100%
[35/39] Deinstalling php73-xml-7.3.25...
[35/39] Deleting files for php73-xml-7.3.25: 100%
[36/39] Deinstalling php73-xmlwriter-7.3.25...
[36/39] Deleting files for php73-xmlwriter-7.3.25: 100%
[37/39] Deinstalling php73-zip-7.3.25...
[37/39] Deleting files for php73-zip-7.3.25: 100%
[38/39] Deinstalling php73-zlib-7.3.25...
[38/39] Deleting files for php73-zlib-7.3.25: 100%
[39/39] Deinstalling php73-7.3.25...
You may need to manually remove /usr/local/etc/php-fpm.d/www.conf if it is no longer needed.
[39/39] Deleting files for php73-7.3.25: 100%
root@cloud:/ #

Или можно удалить всё касающееся PHP без списка (кому лень возится со списками)

pkg delete -fy \*php7\*

Проверяем наличие PHP пакетов.

root@cloud:/ # pkg info php73\*
pkg: No package(s) matching php73*
root@cloud:/ #

Устанавливаем пакеты из сформированного ранее файла

root@cloud:/ # pkg install -y 'cat ~/php74_packages_install.txt'
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'cat ~/php74_packages_install.txt' have been found in the repositories
root@cloud:/ # 

Меняем кавычки и проверяем ещё раз. Эти кавычки, в данном случае, означают подстановку команды

root@cloud:/ # pkg install -y `cat ~/php74_packages_install.txt`                                                                                                                                          Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
pkg: No packages available to install matching 'php74-hash' have been found in the repositories
root@cloud:/ #

Формируем новый файл без php74-hash

root@cloud:/ # sed 's/php74-hash //g' ~/php74_packages_install.txt > ~/php74_packages_install_v2.txt
root@cloud:/ #

Пробуем установить используя новый файл

root@cloud:/ # pkg install -y `cat ~/php74_packages_install_v2.txt`    
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
The following 38 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
        php74: 7.4.13
        php74-bcmath: 7.4.13
        php74-bz2: 7.4.13
        php74-ctype: 7.4.13
        php74-curl: 7.4.13
        php74-dom: 7.4.13
        php74-exif: 7.4.13
        php74-extensions: 1.0
        php74-fileinfo: 7.4.13
        php74-filter: 7.4.13
        php74-ftp: 7.4.13
        php74-gd: 7.4.13
        php74-gmp: 7.4.13
        php74-iconv: 7.4.13
        php74-imap: 7.4.13
        php74-intl: 7.4.13
        php74-json: 7.4.13
        php74-mbstring: 7.4.13
        php74-opcache: 7.4.13
        php74-openssl: 7.4.13
        php74-pdo: 7.4.13
        php74-pdo_mysql: 7.4.13
        php74-pdo_sqlite: 7.4.13
        php74-pecl-APCu: 5.1.18
        php74-pecl-imagick-im7: 3.4.4
        php74-pecl-memcached: 3.1.5
        php74-pecl-redis: 5.3.1
        php74-phar: 7.4.13
        php74-posix: 7.4.13
        php74-session: 7.4.13
        php74-simplexml: 7.4.13
        php74-sqlite3: 7.4.13
        php74-tokenizer: 7.4.13
        php74-xml: 7.4.13
        php74-xmlreader: 7.4.13
        php74-xmlwriter: 7.4.13
        php74-zip: 7.4.13
        php74-zlib: 7.4.13

Number of packages to be installed: 38

The process will require 42 MiB more space.
6 MiB to be downloaded.
[1/38] Fetching php74-7.4.13.txz: 100%    4 MiB   2.1MB/s    00:02
[2/38] Fetching php74-bcmath-7.4.13.txz: 100%   20 KiB  20.0kB/s    00:01
[3/38] Fetching php74-bz2-7.4.13.txz: 100%   11 KiB  10.8kB/s    00:01
[4/38] Fetching php74-ctype-7.4.13.txz: 100%    6 KiB   6.0kB/s    00:01
[5/38] Fetching php74-curl-7.4.13.txz: 100%   31 KiB  31.8kB/s    00:01
[6/38] Fetching php74-dom-7.4.13.txz: 100%   54 KiB  55.4kB/s    00:01
[7/38] Fetching php74-exif-7.4.13.txz: 100%   29 KiB  29.8kB/s    00:01
[8/38] Fetching php74-extensions-1.0.txz: 100%    1 KiB   1.1kB/s    00:01
[9/38] Fetching php74-fileinfo-7.4.13.txz: 100%  268 KiB 274.5kB/s    00:01
[10/38] Fetching php74-filter-7.4.13.txz: 100%   19 KiB  19.7kB/s    00:01
[11/38] Fetching php74-ftp-7.4.13.txz: 100%   24 KiB  24.4kB/s    00:01
[12/38] Fetching php74-gd-7.4.13.txz: 100%   30 KiB  30.6kB/s    00:01
[13/38] Fetching php74-gmp-7.4.13.txz: 100%   19 KiB  19.8kB/s    00:01
[14/38] Fetching php74-iconv-7.4.13.txz: 100%   17 KiB  17.8kB/s    00:01
[15/38] Fetching php74-imap-7.4.13.txz: 100%   31 KiB  31.6kB/s    00:01
[16/38] Fetching php74-intl-7.4.13.txz: 100%  123 KiB 126.0kB/s    00:01
[17/38] Fetching php74-json-7.4.13.txz: 100%   21 KiB  21.5kB/s    00:01
[18/38] Fetching php74-mbstring-7.4.13.txz: 100%  745 KiB 762.9kB/s    00:01
[19/38] Fetching php74-opcache-7.4.13.txz: 100%  200 KiB 205.0kB/s    00:01
[20/38] Fetching php74-openssl-7.4.13.txz: 100%   57 KiB  57.9kB/s    00:01
[21/38] Fetching php74-pdo-7.4.13.txz: 100%   45 KiB  46.5kB/s    00:01
[22/38] Fetching php74-pdo_mysql-7.4.13.txz: 100%   17 KiB  17.0kB/s    00:01
[23/38] Fetching php74-pdo_sqlite-7.4.13.txz: 100%   13 KiB  13.0kB/s    00:01
[24/38] Fetching php74-pecl-APCu-5.1.18.txz: 100%   49 KiB  49.7kB/s    00:01
[25/38] Fetching php74-pecl-imagick-im7-3.4.4.txz: 100%   87 KiB  89.6kB/s    00:01
[26/38] Fetching php74-pecl-memcached-3.1.5.txz: 100%   38 KiB  39.0kB/s    00:01
[27/38] Fetching php74-pecl-redis-5.3.1.txz: 100%  150 KiB 153.9kB/s    00:01
[28/38] Fetching php74-phar-7.4.13.txz: 100%  104 KiB 106.6kB/s    00:01
[29/38] Fetching php74-posix-7.4.13.txz: 100%   12 KiB  12.3kB/s    00:01
[30/38] Fetching php74-session-7.4.13.txz: 100%   35 KiB  36.0kB/s    00:01
[31/38] Fetching php74-simplexml-7.4.13.txz: 100%   23 KiB  23.1kB/s    00:01
[32/38] Fetching php74-sqlite3-7.4.13.txz: 100%   19 KiB  19.6kB/s    00:01
[33/38] Fetching php74-tokenizer-7.4.13.txz: 100%    9 KiB   9.3kB/s    00:01
[34/38] Fetching php74-xml-7.4.13.txz: 100%   19 KiB  19.8kB/s    00:01
[35/38] Fetching php74-xmlreader-7.4.13.txz: 100%   12 KiB  12.5kB/s    00:01
[36/38] Fetching php74-xmlwriter-7.4.13.txz: 100%   13 KiB  12.9kB/s    00:01
[37/38] Fetching php74-zip-7.4.13.txz: 100%   21 KiB  21.1kB/s    00:01
[38/38] Fetching php74-zlib-7.4.13.txz: 100%   18 KiB  18.0kB/s    00:01
Checking integrity... done (0 conflicting)
[1/38] Installing php74-7.4.13...
[1/38] Extracting php74-7.4.13: 100%
[2/38] Installing php74-dom-7.4.13...
[2/38] Extracting php74-dom-7.4.13: 100%
[3/38] Installing php74-pdo-7.4.13...
[3/38] Extracting php74-pdo-7.4.13: 100%
[4/38] Installing php74-ctype-7.4.13...
[4/38] Extracting php74-ctype-7.4.13: 100%
[5/38] Installing php74-filter-7.4.13...
[5/38] Extracting php74-filter-7.4.13: 100%
[6/38] Installing php74-iconv-7.4.13...
[6/38] Extracting php74-iconv-7.4.13: 100%
[7/38] Installing php74-json-7.4.13...
[7/38] Extracting php74-json-7.4.13: 100%
[8/38] Installing php74-opcache-7.4.13...
[8/38] Extracting php74-opcache-7.4.13: 100%
[9/38] Installing php74-pdo_sqlite-7.4.13...
[9/38] Extracting php74-pdo_sqlite-7.4.13: 100%
[10/38] Installing php74-phar-7.4.13...
[10/38] Extracting php74-phar-7.4.13: 100%
[11/38] Installing php74-posix-7.4.13...
[11/38] Extracting php74-posix-7.4.13: 100%
[12/38] Installing php74-session-7.4.13...
[12/38] Extracting php74-session-7.4.13: 100%
[13/38] Installing php74-simplexml-7.4.13...
[13/38] Extracting php74-simplexml-7.4.13: 100%
[14/38] Installing php74-sqlite3-7.4.13...
[14/38] Extracting php74-sqlite3-7.4.13: 100%
[15/38] Installing php74-tokenizer-7.4.13...
[15/38] Extracting php74-tokenizer-7.4.13: 100%
[16/38] Installing php74-xml-7.4.13...
[16/38] Extracting php74-xml-7.4.13: 100%
[17/38] Installing php74-xmlreader-7.4.13...
[17/38] Extracting php74-xmlreader-7.4.13: 100%
[18/38] Installing php74-xmlwriter-7.4.13...
[18/38] Extracting php74-xmlwriter-7.4.13: 100%
[19/38] Installing php74-bcmath-7.4.13...
[19/38] Extracting php74-bcmath-7.4.13: 100%
[20/38] Installing php74-bz2-7.4.13...
[20/38] Extracting php74-bz2-7.4.13: 100%
[21/38] Installing php74-curl-7.4.13...
[21/38] Extracting php74-curl-7.4.13: 100%
[22/38] Installing php74-exif-7.4.13...
[22/38] Extracting php74-exif-7.4.13: 100%
[23/38] Installing php74-extensions-1.0...
[24/38] Installing php74-fileinfo-7.4.13...
[24/38] Extracting php74-fileinfo-7.4.13: 100%
[25/38] Installing php74-ftp-7.4.13...
[25/38] Extracting php74-ftp-7.4.13: 100%
[26/38] Installing php74-gd-7.4.13...
[26/38] Extracting php74-gd-7.4.13: 100%
[27/38] Installing php74-gmp-7.4.13...
[27/38] Extracting php74-gmp-7.4.13: 100%
[28/38] Installing php74-imap-7.4.13...
[28/38] Extracting php74-imap-7.4.13: 100%
[29/38] Installing php74-intl-7.4.13...
[29/38] Extracting php74-intl-7.4.13: 100%
[30/38] Installing php74-mbstring-7.4.13...
[30/38] Extracting php74-mbstring-7.4.13: 100%
[31/38] Installing php74-openssl-7.4.13...
[31/38] Extracting php74-openssl-7.4.13: 100%
[32/38] Installing php74-pdo_mysql-7.4.13...
[32/38] Extracting php74-pdo_mysql-7.4.13: 100%
[33/38] Installing php74-pecl-APCu-5.1.18...
[33/38] Extracting php74-pecl-APCu-5.1.18: 100%
[34/38] Installing php74-pecl-imagick-im7-3.4.4...
[34/38] Extracting php74-pecl-imagick-im7-3.4.4: 100%
[35/38] Installing php74-pecl-memcached-3.1.5...
[35/38] Extracting php74-pecl-memcached-3.1.5: 100%
[36/38] Installing php74-pecl-redis-5.3.1...
[36/38] Extracting php74-pecl-redis-5.3.1: 100%
[37/38] Installing php74-zip-7.4.13...
[37/38] Extracting php74-zip-7.4.13: 100%
[38/38] Installing php74-zlib-7.4.13...
[38/38] Extracting php74-zlib-7.4.13: 100%
=====
Message from php74-dom-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-dom.ini
=====
Message from php74-pdo-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-pdo.ini
=====
Message from php74-ctype-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-ctype.ini
=====
Message from php74-filter-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-filter.ini
=====
Message from php74-iconv-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-iconv.ini
=====
Message from php74-json-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-json.ini
=====
Message from php74-opcache-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-10-opcache.ini
=====
Message from php74-pdo_sqlite-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-pdo_sqlite.ini
=====
Message from php74-phar-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-phar.ini
=====
Message from php74-posix-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-posix.ini
=====
Message from php74-session-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-18-session.ini
=====
Message from php74-simplexml-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-simplexml.ini
=====
Message from php74-sqlite3-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-sqlite3.ini
=====
Message from php74-tokenizer-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-tokenizer.ini
=====
Message from php74-xml-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-xml.ini
=====
Message from php74-xmlreader-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-xmlreader.ini
=====
Message from php74-xmlwriter-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-xmlwriter.ini
=====
Message from php74-bcmath-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-bcmath.ini
=====
Message from php74-bz2-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-bz2.ini
=====
Message from php74-curl-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-curl.ini
=====
Message from php74-exif-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-exif.ini
=====
Message from php74-fileinfo-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-fileinfo.ini
=====
Message from php74-ftp-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-ftp.ini
=====
Message from php74-gd-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-gd.ini
=====
Message from php74-gmp-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-gmp.ini
=====
Message from php74-imap-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-imap.ini
=====
Message from php74-intl-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-intl.ini
=====
Message from php74-mbstring-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-mbstring.ini
=====
Message from php74-openssl-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-openssl.ini
=====
Message from php74-pdo_mysql-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-pdo_mysql.ini
=====
Message from php74-pecl-APCu-5.1.18:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-apcu.ini
=====
Message from php74-pecl-imagick-im7-3.4.4:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-imagick.ini
=====
Message from php74-pecl-memcached-3.1.5:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-memcached.ini
=====
Message from php74-pecl-redis-5.3.1:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-30-redis.ini
=====
Message from php74-zip-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-zip.ini
=====
Message from php74-zlib-7.4.13:

--
This file has been added to automatically load the installed extension:
/usr/local/etc/php/ext-20-zlib.ini
root@cloud:/ #

Запускаем сервис php-fpm

root@cloud:/ # service php-fpm start
Performing sanity check on php-fpm configuration:
[03-Jan-2021 23:51:31] NOTICE: configuration file /usr/local/etc/php-fpm.conf test is successful

Starting php_fpm.
root@cloud:/ #

Обновляем приложение в nextcloud и проверяем работу. Всё работает )

Причину установки пакета php74-hash я не нашёл, поэтому устанавливать его не стал.

Помогла статья? Есть возможность отблагодарить автора

QR Link:

QR Code

Читайте также:

комментария 2

  1. Саня:

    Спасибо, очень круто описали все

  2. Роман:

    pkg info php73\*
    можно заменить на
    pkg query -a %n | grep ^php72

    Тогда не потребуется потом отрезать версии.

    Примерно так обновляю php*:

    #!/bin/sh

    pkg query -a %n | grep ^php74 > installed-php.txt
    cat installed-php.txt | xargs pkg upgrade -y

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *