Добавление альтернативной версии PHP 8.2 на ISPmanager 5 Lite

baltun

Администратор
Сообщения
10.874
Реакции
2.584
Баллы
2.003
Чтобы добавить собственную альтернативную версию PHP в ISPmanager, нужно создать два XML-файла в кодировки UTF-8.

Первый файл добавляет в Настройки → Возможности новый пункт и описывает для него форму Настройки → Возможности → Изменить. Например:
/usr/local/mgr5/etc/xml/ispmgr_mod_my2php.xml
HTML:
<mgrdata>
    <lang name="ru">
        <messages name="feature">
            <msg name="dname_altphp82">Альтернативная версия PHP 8.2</msg>
        </messages>
        <messages name="feature.edit">
            <msg name="package_ispphp82">My PHP 8.2</msg>
            <msg name="hint_package_ispphp82">Использовать PHP 8.2 в режиме CGI</msg>
            <msg name="package_ispphp82_mod_apache">Модуль PHP для Apache версии 8.2</msg>
            <msg name="hint_package_ispphp82_mod_apache">Возможность использовать PHP 8.2 в режиме модуля Apache</msg>
            <msg name="package_ispphp82_fpm">PHP 8.2 для PHP-FPM</msg>
            <msg name="hint_package_ispphp82_fpm">Возможность использования PHP 8.2 сервисом PHP-FPM</msg>
            <msg name="packagegroup_altphp82gr">PHP версии 8.2</msg>
            <msg name="hint_packagegroup_altphp82gr">Возможность использовать PHP версии 8.2</msg>
        </messages>
    </lang>
</mgrdata>

Второй файл описывает пакет добавляемой версии PHP. Например:
/usr/local/mgr5/etc/xml/ispmgr_features.d/my2_php.xml
HTML:
<features>
    <feature name="altphp82" featuregroup="altphp">
        <packagegroup name="altphp82gr" type="select">
            <package name="ispphp82" dispname="PHP 8.2 CGI" primary="yes" recommended="yes">
                <systemname>isp-php82</systemname>
            </package>
            <if value="turn_off" hide="package_ispphp82_mod_apache" shadow="yes"/>
            <if value="turn_off" hide="package_ispphp82_fpm" shadow="yes"/>
        </packagegroup>
        <package name="ispphp82_fpm" dispname="PHP 8.2 PHP-FPM" recommended="yes">
            <systemname>isp-php82-fpm</systemname>
        </package>
        <package name="ispphp82_mod_apache" dispname="PHP 8.2 Apache module">
            <systemname>isp-php82-mod-apache</systemname>
        </package>
    </feature>
</features>
Инструкция немного изменена именно так, что у вас уже настроена альтернативная PHP 8.1 и вы добавляете PHP 8.2

После добавления XML-файлов, перезапустите ISPmanager:
Код:
/usr/local/mgr5/sbin/mgrctl -m ispmgr exit

Далее изменяем репозиторий, переходим по пути /etc/yum.repos.d находим файл ispsystem-base.repo и приводим его к такому виду:
HTML:
[ispsystem-base]
name=ispsystem-base
#failovermethod=priority
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ISPsystem
enabled=1
#baseurl=http://download.ispsystem.com/repo/centos/base/$releasever/$basearch
#mirrorlist=http://mirrors.download.ispsystem.com/repo/centos/base/mirrorlist.txt
mirrorlist=http://mirrors.download.ispmanager.com/repo/centos/base/mirrorlist.txt
gpgcheck=1

Выполняем команду:
Код:
dnf update

Все делалось по проверено все работает, единственное в моем случае пришлось вынести службу для мониторинга и ее перезапуска. Все выкачивает из репозитория ISP поэтому предварительно альтернативная версия должна появиться у них в репозитории. На момент написания статьи вы уже можете PHP 8.2 установить.
 
Последнее редактирование:
А что делает команда dnf update и как её выполнить? Если в консоли, то мой Centos пишет, что команда не найдена
 
Последнее редактирование модератором:
У вас точно Centos 8, если нет сделайте так:
Код:
yum update
Если не хватает прав тогда так:
Код:
su
yum update
Посмотреть версию linux:
Код:
cat /proc/version
 
У меня Centos 7.9.2009 (Core)

И еще техподдержка ответила по поводу смены путей в репозиториях:
У меня есть файлы ispsystem, ispsystem-base, но нет файла exosoft. Нормально ли это?
yum update выполнять боюсь, чтобы не слетели настройки сервера текущие.
[root@russianpaintings ~]# cat /proc/version
Linux version 3.10.0-1160.42.2.el7.x86_64 (gcc version 4.8.5 20150623 (Red Hat 4.8.5-44) (GCC) ) #1 SMP Tue Sep 7 14:49:57 UTC 2021
 
Последнее редактирование модератором:
Этот файл как правило у кого стоит ISPsystem 6 версии
Нормально ли это?
Да вполне нормально, зависит от того насколько вы много устанавливаете сторонние репозитории. Кому то хватает например nginx из стандартного репозитория, кто то подключает офф репозиторий и оттуда тянет обновления и т.д.
 
Пока что остановился на выполнении команды dnf update - для чего она и как мне её выполнить на моей системе?
 
Пока что остановился на выполнении команды dnf update - для чего она и как мне её выполнить на моей системе?
Эта команда не для вашей системы, она для Centos 8,9 для вашей системы Centos 7 аналогичная команда будет такой:
Код:
yum update
 
yum update - я опасаюсь выполнять эту команду, чтобы не обновились какие-то другие программы на сервере, которые используются в текущей конфигурации. Эта команда же обновляет всё без разбора?
Пробую установить php из меню Возможности панели управления.
Пока что установить php из меню Возможности не удалось. Где я могу посмотреть логи ошибки этой попытки установки от isp manager?
 
yum update - я опасаюсь выполнять эту команду, чтобы не обновились какие-то другие программы на сервере, которые используются в текущей конфигурации. Эта команда же обновляет всё без разбора?
Пробую установить php из меню Возможности панели управления.
Нет она прочитает репозитории все и покажет что будет обновляться, после этого она от вас потребует согласия y/n, без согласия эта команда выглядит так:
Код:
yum -y update
Тогда меняйте репозиторий ISP и через панель устанавливайте php, будет то что нужно.
 
Пришло письмо после неудачной попытки:
"При настройке возможностей возникла ошибка: не удалось установить пакет 'isp-php80-fpm'. Подробная информация доступна в журнале var/pkg.log"
Где найти этот лог, какой должен быть полный серверный путь до этого файла?
Выполнил yum update, выдало длинный список с "помечен как обновление", y/n нигде не спросило, просто завершило выполнение, ничего не обновив.
Пока что установить php из меню Возможности не удалось. Где я могу посмотреть логи ошибки этой попытки установки от isp manager?
 
Последнее редактирование модератором:
По зависимостям пакеты не прошли поэтому нечего и вывелось.
Тут все находится /usr/local/mgr5/var/pkg.log
Поменяйте репозиторий и установите через панель так будет проще.
 
Посмотрите, пожалуйста, лог. Что можно сделать дальше?

Лог:
*** Вт янв 10 22:56:00 +04 2023
*** removing isp-php81
Загружены модули: fastestmirror
Совпадений с isp-php81 не найдено.
Пакетов, отмеченных для удаления, нет.

*** Вт янв 10 22:56:00 +04 2023
*** removing isp-php81-fpm
Загружены модули: fastestmirror
Совпадений с isp-php81-fpm не найдено.
Пакетов, отмеченных для удаления, нет.

*** Вт янв 10 22:56:30 +04 2023
*** UPGRADING PACKAGE coremanager
Загружены модули: fastestmirror
Сброс источников:base epel extras ispsystem-5.283 ispsystem-base
               : mysql57-community remi remi-safe updates
Cleaning up list of fastest mirrors
Other repos take up 484 k of disk space (use --verbose for details)
Загружены модули: fastestmirror
Determining fastest mirrors
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
No packages marked for update
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
No packages marked for update
Repo ispsystem-5.283 used
Repo ispsystem-base used

*** Вт янв 10 22:57:10 +04 2023
*** installing isp-php80
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
Пакета с названием isp-php80 не найдено.
Ошибка: Выполнять нечего

*** Вт янв 10 22:57:11 +04 2023
*** installing isp-php80-fpm
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
Пакета с названием isp-php80-fpm не найдено.
Ошибка: Выполнять нечего

*** Вт янв 10 22:57:25 +04 2023
*** installing isp-php81
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
Пакета с названием isp-php81 не найдено.
Ошибка: Выполнять нечего

*** Вт янв 10 22:57:29 +04 2023
*** installing isp-php81-fpm
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirror.sale-dedic.com
 * epel: ru.download.ispsystem.com
 * extras: mirrors.datahouse.ru
 * ispsystem-5.283: ru.download.ispmanager.com
 * ispsystem-base: ru.download.ispmanager.com
 * remi: mirror.docker.ru
 * remi-safe: mirror.docker.ru
 * updates: mirror.sale-dedic.com
Пакета с названием isp-php81-fpm не найдено.
Ошибка: Выполнять нечего
 
Покажите содержимое файла /etc/yum.repos.d/ispsystem-base.repo
 
Скриншот.
 

Вложения

  • 8e65ae8ab5.jpg
    8e65ae8ab5.jpg
    188.2 КБ · Просмотры: 3
Последнее редактирование модератором:
Странно в репозитории он есть, а если вот так прописать:
Код:
yum install isp-php81-fpm-8.1.6-1203.el7.x86_64.rpm
В идеале я бы отключил все репозитории remi провел бы обновление нормально, скорее всего изменения в репозитории Centos не увидел поэтому и написал, что пакет не найден, хотя он есть в нем.
 
Последнее редактирование:
Есть подозрения, что не сработала команда /usr/local/mgr5/sbin/mgrctl -m ispmgr exit из мануала. Сделал reboot.
В меню Возможности запустил установку php 8.0:

*** Вт янв 10 23:35:46 +04 2023
*** installing isp-php80-fpm
Загружены модули: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.datahouse.ru
* epel: ru.download.ispsystem.com
* extras: mirrors.datahouse.ru
* ispsystem-5.283: ru.download.ispmanager.com
* ispsystem-base: ru.download.ispmanager.com
* remi: mirror.docker.ru
* remi-safe: mirror.docker.ru
* updates: centos-mirror.rbc.ru
Пакета с названием isp-php80-fpm не найдено.
Ошибка: Выполнять нечего

Затем выполнил: yum install isp-php81-fpm-8.1.6-1203.el7.x86_64.rpm
Результат:
0f4c95277a.jpg
 
Последнее редактирование модератором:
Я неверно команду написал посмотри выше, но лучше из панели попробуй поставить php 8.1
 
В идеале я бы отключил все репозитории remi провел бы обновление нормально, скорее всего изменения в репозитории Centos не увидел поэтому и написал, что пакет не найден, хотя он есть в нем.

Так это проблема Centos или репозитария ISP? Как можно действовать дальше, чтобы
отключил все репозитории remi провел бы обновление нормально
Какие еще могут быть варианты проверить, где возникает проблема?
 
Поведения с php 8.1 проблемы репозитория ISP, а то что команда yum update не может быть выполнена проблема левых установленных репозиториев.
 
Не удалось установить по мануалу выше на Centos 7: не находит пакеты. Администратор baltun подсказал решение. Названия и версии пакетов можно посмотреть здесь:

Удалось установить так:

1. Выполнить инструкции из первого сообщения этой темы.

2. Выполнить в консоли следующие команды:

Код:
sudo yum makecache
sudo yum -y install libsodium
wget http://mirrors.download.ispmanager.com/repo/centos/base/7/x86_64/isp-php82-8.2.0-1252.el7.x86_64.rpm
wget http://mirrors.download.ispmanager.com/repo/centos/base/7/x86_64/isp-php82-fpm-8.2.0-1252.el7.x86_64.rpm
wget http://mirrors.download.ispmanager.com/repo/centos/base/7/x86_64/isp-php82-lsapi-8.2.0-1252.el7.x86_64.rpm
wget http://mirrors.download.ispmanager.com/repo/centos/base/7/x86_64/isp-php82-mod-apache-8.2.0-1252.el7.x86_64.rpm
rpm -i isp-php82-8.2.0-1252.el7.x86_64.rpm
rpm -i isp-php82-fpm-8.2.0-1252.el7.x86_64.rpm
rpm -i isp-php82-lsapi-8.2.0-1252.el7.x86_64.rpm
rpm -i isp-php82-mod-apache-8.2.0-1252.el7.x86_64.rpm

3. Перейти в панели ISP в разел Настройки → Возможности → Альтернативная версия PHP 8.2 → справа выбрать в меню Обновить → поставить галку Обновить список доступного ПО → Ок.
 
Последнее редактирование модератором:
Назад
Верх Низ