Найти в Дзене
IT blog

Установка GLPI на ubuntu 22.04

1. Первым делом нам необходимо сделать обновление системы apt update && apt upgrade 2. Установка необходимых компонентов для установки GLPI apt install -y apache2 php php-{apcu,cli,common,curl,gd,imap,ldap,mysql,xmlrpc,xml,mbstring,bcmath,intl,zip,redis,bz2} libapache2-mod-php php-soap php-cas apt install -y mariadb-server 3. Настройка MariaDB под GLPI mysql_secure_installation Так же необходимо настроить считывание информации о часовом поясе из базы данных: mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql mysql 4. Создание пользователя и базы данных для GLPI mysql -uroot -pmysql CREATE DATABASE glpi; CREATE USER 'glpi'@'localhost' IDENTIFIED BY 'yourstrongpassword'; GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost'; GRANT SELECT ON `mysql`.`time_zone_name` TO 'glpi'@'localhost'; FLUSH PRIVILEGES; Где glpi@localhost - имя пользователя, а yourstrongpassword - пароль. 5. Скачиваем репозитории GLPI с официального сайта cd /var/www/html wget https://github.com/glpi-project/glpi/rele

1. Первым делом нам необходимо сделать обновление системы

apt update && apt upgrade

2. Установка необходимых компонентов для установки GLPI

apt install -y apache2 php php-{apcu,cli,common,curl,gd,imap,ldap,mysql,xmlrpc,xml,mbstring,bcmath,intl,zip,redis,bz2} libapache2-mod-php php-soap php-cas

apt install -y mariadb-server

3. Настройка MariaDB под GLPI

mysql_secure_installation

Так же необходимо настроить считывание информации о часовом поясе из базы данных:

mysql_tzinfo_to_sql /usr/share/zoneinfo | mysql mysql

4. Создание пользователя и базы данных для GLPI

mysql -uroot -pmysql

CREATE DATABASE glpi;

CREATE USER 'glpi'@'localhost' IDENTIFIED BY 'yourstrongpassword';

GRANT ALL PRIVILEGES ON glpi.* TO 'glpi'@'localhost';

GRANT SELECT ON `mysql`.`time_zone_name` TO 'glpi'@'localhost';

FLUSH PRIVILEGES;

Где glpi@localhost - имя пользователя, а yourstrongpassword - пароль.

5. Скачиваем репозитории GLPI с официального сайта

cd /var/www/html

wget https://github.com/glpi-project/glpi/releases/download/10.0.19/glpi-10.0.19.tgz
tar -xvzf glpi-10.0.19.tgz

6. Создаем файл downstream.php для разбиения файлов в разные папки и прописываем пути к ним

nano /var/www/html/glpi/inc/downstream.php

В этот файл нам необходимо вписать следующие данные

<?php

define('GLPI_CONFIG_DIR', '/etc/glpi/');

if (file_exists(GLPI_CONFIG_DIR . '/local_define.php')) {

require_once GLPI_CONFIG_DIR . '/local_define.php';

}

7. Перемещаем файлы в необходимые папки

mv /var/www/html/glpi/config /etc/glpi

mv /var/www/html/glpi/files /var/lib/glpi

mv /var/lib/glpi/_log /var/log/glpi

8. Мы переносим папку с документами ( files ) и папку с журналами ( files/_log ) в новый каталог

vim /etc/glpi/local_define.php

В него необходимо прописать:

<?php

define('GLPI_VAR_DIR', '/var/lib/glpi');

define('GLPI_DOC_DIR', GLPI_VAR_DIR);

define('GLPI_CACHE_DIR', GLPI_VAR_DIR . '/_cache');

define('GLPI_CRON_DIR', GLPI_VAR_DIR . '/_cron');

define('GLPI_GRAPH_DIR', GLPI_VAR_DIR . '/_graphs');

define('GLPI_LOCAL_I18N_DIR', GLPI_VAR_DIR . '/_locales');

define('GLPI_LOCK_DIR', GLPI_VAR_DIR . '/_lock');

define('GLPI_PICTURE_DIR', GLPI_VAR_DIR . '/_pictures');

define('GLPI_PLUGIN_DOC_DIR', GLPI_VAR_DIR . '/_plugins');

define('GLPI_RSS_DIR', GLPI_VAR_DIR . '/_rss');

define('GLPI_SESSION_DIR', GLPI_VAR_DIR . '/_sessions');

define('GLPI_TMP_DIR', GLPI_VAR_DIR . '/_tmp');

define('GLPI_UPLOAD_DIR', GLPI_VAR_DIR . '/_uploads');

define('GLPI_INVENTORY_DIR', GLPI_VAR_DIR . '/_inventories');

define('GLPI_THEMES_DIR', GLPI_VAR_DIR . '/_themes');

define('GLPI_LOG_DIR', '/var/log/glpi');

9. Выдаем необходимые права доступа на файлы, для их изменений:

chown root:root /var/www/html/glpi/ -R

chown www-data:www-data /etc/glpi -R

chown www-data:www-data /var/lib/glpi -R

chown www-data:www-data /var/log/glpi -R

chown www-data:www-data /var/www/html/glpi/marketplace -Rf

find /var/www/html/glpi/ -type f -exec chmod 0644 {} \;

find /var/www/html/glpi/ -type d -exec chmod 0755 {} \;

find /etc/glpi -type f -exec chmod 0644 {} \;

find /etc/glpi -type d -exec chmod 0755 {} \;

find /var/lib/glpi -type f -exec chmod 0644 {} \;

find /var/lib/glpi -type d -exec chmod 0755 {} \;

find /var/log/glpi -type f -exec chmod 0644 {} \;

find /var/log/glpi -type d -exec chmod 0755 {} \;

10. Для корректной работы GLPI рекомендуется изменить следующие параметры в файле php.ini:

nano /etc/php/8.1/apache2/php.ini

  • upload_max_filesize = 20M Максимальный размер загружаемых файлов составляет 20 мегабайт.
  • post_max_size = 20M Максимальный размер данных POST (например, при отправке формы) также составляет 20 мегабайт.
  • max_execution_time = 60 Максимальное время выполнения PHP-скрипта составляет 60 секунд.
  • max_input_vars = 5000 Максимальное количество входных переменных (например, полей формы), которые может принять скрипт, составляет 5000.
  • memory_limit = 256M Максимальный объём памяти, который может использовать один PHP-скрипт, составляет 256 мегабайт.
  • session.cookie_httponly = On Устанавливает атрибут HttpOnly для файлов cookie сеанса
  • date.timezone = America/Sao_Paulo Устанавливает часовой пояс по умолчанию для PHP.

На этом первоначальная установка GLPI закончена, дальше необходимо будет перейти по ip-адресу и подключить, но это уже в следующей статье. Спасибо, за внимание.