articlesdebian:glpi:updateglpi10

Обновление GLPI с версии 9.5 до версии 10.0.0

После обновления до версии 10.0.0 можете обновиться до версии 10.0.3 из данной статьи - Обновление GLPI с версии 10.0.0 до версии 10.0.3

Для обновления нам будет необходимо обновить версию php и mariadb

Системные требования:

PHP >= 7.4

MySQL >= 5.6 or MariaDB >= 10.2

Исходные данные:

  • сервер Ubuntu 18.4 bionic
  • GLPI Установлен в /var/www/html/glpi
  • PHP версии 7.2
  • СУБД: MariaDB - 10.1
  • Имя БД: glpidb

Узнаем версию СУБД:

mysqld --version

Подключаемся в MySQL:

mysql -u root -p

Вводим пароль администратора

Отключаем InnoDB:

SET GLOBAL innodb_fast_shutdown = 0;

Показать список всех баз данных на сервере MySQL:

show databases;

Сделаем дамп необходимой базы данных:

mysqldump -u root -p --databases glpidb > /tmp/glpidb.sql

Для восстановления мы используем команду:

mysql -u root -p glpidb < /tmp/glpidb.sql

Останавливаем службу mariadb

sudo systemctl stop mariadb.service

Удаляем Mariadb

sudo apt remove mariadb-server

Новые версии лежат тут: https://github.com/glpi-project/glpi/releases/

Мы ставим версию 10.0.0

wget https://github.com/glpi-project/glpi/releases/download/10.0.0/glpi-10.0.0.tgz
tar -xvzf glpi-*.tgz -C /var/www/html/glpi --strip-components 1

После этого при переходе на основную страницу glpi мы получим следующую ошибку:

PHP 7.4.0 – 8.2.0 (exclusive) required

Данная ошибка сообщает нам о том, что необходимо обновить php

Узнаем версию php командой:

php -v

Устанавливаем необходимые зависимости:

apt install -y lsb-release ca-certificates apt-transport-https software-properties-common

Добавляем APT-репозиторий пакетов PHP на свой сервер Debian:

echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/sury-php.list

Импортируем открытый ключ репозитория:

wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add -

apt update

apt upgrade -y

Проверяем установленные версии php:

apt list --installed | grep php

Удаляем старые версии php:

apt purge -y php7.2-*

Переключаем сервер apache на новую версию php, предварительно отключив старую

a2dismod php7.2

Включаем новую:

a2enmod php8.1

Перезапускаем apache:

sudo systemctl restart apache2

Если возникает ошибка «failed to start apache2.service code=exited status=139»

То необходимо отключить предыдущую версию php

a2dismod php7.2

Обновление mariadb

добавляем репозиторий:

sudo apt-get install apt-transport-https curl
sudo curl -o /etc/apt/trusted.gpg.d/mariadb_release_signing_key.asc 'https://mariadb.org/mariadb_release_signing_key.asc'
sudo sh -c "echo 'deb https://mirror.docker.ru/mariadb/repo/10.3/ubuntu bionic main' >>/etc/apt/sources.list"
sudo apt-get update
sudo apt-get install mariadb-server

После всех манипуляций переходим на страницу с GLPI и получаем список, что осталось обновить

Правим разрешения для обновленных файлов:

sudo chown -R www-data:www-data /var/www/html/glpi

Нажимаем обновить базу данных и получаем данное сообщение:

Далее переходим в GLPI и видим

Для устранения данной ошибки необходимо почистить кеш и закрыть браузер

Открываем снова GLPI и видим баннер с рекомендациями:

Удаляем страницу с инсталляцией:

sudo rm /var/www/html/glpi/install/install.php
cd /var/www/html/glpi

Команда

php bin/console glpi:migration:utf8mb4 

нам выдаст такой ответ:

Вводим

sudo php bin/console glpi:migration:dynamic_row_format

и соглашаемся, нажав Y


Совершаем миграцию столбцов:

cd /var/www/html/glpi

sudo php bin/console glpi:migration:timestamps

sudo php bin/console glpi:migration:unsigned_keys

Обновить плагин можно по информации из данной статьи:

Обновление плагина FusionInventory

  • articlesdebian/glpi/updateglpi10.txt
  • Последнее изменение: 2022/11/24 14:49
  • 127.0.0.1