Это старая версия документа!
GLPI — аббревиатура Gestionnaire Libre de Parc Informatique
Система учёта компьютерной и оргтехники.
Проект предназначен для работы с базой данных IT и телекоммуникационного оборудования, установленного на предприятии.
Также имеется возможность ведения учета расходных материалов и организации службы технической поддержки по расписанию и по заявкам пользователей. GLPI русифицирована, создана на PHP и использует СУБД MySQL, лицензия GPL.
При использовании совместно с продуктом OCS Inventory NG возможно создание максимально автоматизированной системы инвентаризации. OCS-Inventory основан на распределяемых модулях, устанавливаемых на инвентаризируемые машины, которые отсылают подробную информацию о системе и подключенных устройствах в выделенную базу данных.
Есть система заявок.
https://github.com/glpi-project/glpi/releases
GLPI installation — Документация GLPI 9.3
http://glpi-project.org/telemetry/
Актуально для GLPI версии 9.3 и Debian 9 (stretch).
Для этой нужна MariaDB, иначе будет ошибка:
Версия Вашей СУБД слишком старая: 5.5.60
/opt/glpi/
#!/bin/bash apt install\ mariadb-server\ mariadb-client\ apache2 libapache2-mod-php\ php\ php-apcu\ php-cas\ php-cgi\ php-cli\ php-common\ php-curl\ php-fileinfo\ php-fpm\ php-gd\ php-imap\ php-json\ php-ldap\ php-mbstring\ php-mysql\ php-simplexml\ php-xml\ php-xmlrpc\ php-zip
Распаковка дистрибутива в нужную папку:
tar -zxvf glpi-9.3.tgz -C /opt/
#!/bin/bash ROOT_PATH=/opt/glpi chown -R root:root $ROOT_PATH find $ROOT_PATH -type d -exec chmod u=rwx,g=rwx,o=rx {} \; find $ROOT_PATH -type f -exec chmod u=rw,g=rw,o=r {} \; chown -R www-data:www-data $ROOT_PATH/files find $ROOT_PATH/files -type d -exec chmod u=rwx,g=rwx,o= {} \; find $ROOT_PATH/files -type f -exec chmod u=rw,g=rw,o= {} \; chown -R www-data:www-data $ROOT_PATH/config chmod -R u=rw,g=rw,o= $ROOT_PATH/config/*.php
1. Нужно создать файл:
Alias /glpi /opt/glpi <VirtualHost glpi> NameVirtualHost glpi ServerName glpi ServerAlias glpi ServerAlias glpi.domain.ru ServerAdmin glpi@domain.ru DocumentRoot /opt/glpi <Directory /opt/glpi> DirectoryIndex index.php Options FollowSymLinks AllowOverride Limit Options FileInfo Require all granted </Directory> </VirtualHost>
2. Выполнить следующие действия:
#!/bin/bash # Создаем символическую ссылку ln -s /opt/glpi/apache.conf /etc/apache2/sites-available/glpi.conf # Разрешаем сайт a2ensite glpi # Перезапуск service apache2 reload
После выполнения установки на главной странице будет сообщение:
В целях безопасности удалите файл: install/install.php
Нужно удалить файл, выполнив команду:
rm /opt/glpi/install/install.php
После выполнения установки на главной странице будет сообщение:
355 таблиц не перенесено в InnoDB
или
355 tables not migrated to InnoDB engine.
необходимо выполнить преобразование таблиц БД путём запуска скрипта по URL:
http://glpi/scripts/innodb_migration.php
Необходимо при восстановлении БД.
1. Создать файл:
DROP DATABASE glpi;
2. Выполнить:
mysql -uroot -p < /opt/glpi/MySQL_glpi_Drop.sql
Ввести пароль пользователя root
1. Создать файл:
CREATE DATABASE glpi; GRANT ALL PRIVILEGES ON glpi.* TO glpi IDENTIFIED BY 'ПАРОЛЬ'; FLUSH PRIVILEGES;
2. Выполнить:
mysql -uroot -p < /opt/glpi/MySQL_glpi_Init.sql
Ввести пароль пользователя root
После завершения установки нужно удалить файл: install/install.php
Имя | Пароль | Описание |
---|---|---|
glpi | glpi | for the administrator account |
tech | tech | for the technician account |
normal | normal | for the normal account |
post-only | post-only | for the postonly account |
Язык | Путь настройки |
---|---|
Английский | Settings\Select Language |
Русский | Настройки\Язык |
Язык | Путь настройки |
---|---|
Английский | Меню Setup\General\Default values , раздел Personalization , поле Default language |
Русский | Меню Настройки\Общие\Значения по умолчанию , раздел Внешний вид , поле Язык по умолчанию |
Резервное копирование БД:
mysqldump glpi -uglpi -hСЕРВЕР_БД -pПАРОЛЬ > glpi_backup.sql
Ввести пароль пользователя glpi
Пример восстановления БД (использовать только по необходимости):
3. Выполнить восстановление:
mysql -uglpi -hСЕРВЕР_БД -pПАРОЛЬ glpi < glpi_backup.sql
Ввести пароль пользователя glpi
Нужно попробовать следующий URL:
http://glpi/logout.php?noAUTO=1
ln -s /usr/share/tinymce/www /usr/share/glpi/lib/tiny_mce
При прикреплении к заявке файла с длинным русским именем, появляется сообщение «Возможная загрузочная атака или слишком большой файл. Ошибка перемещения временного файла.»
В файле /usr/share/glpi/inc/document.function.php
Нужно поставить комментарий на строки:
if (function_exists('mb_convert_encoding')) { $name = mb_convert_encoding($name, 'HTML-ENTITIES','UTF-8'); }
Ошибка: Превышен размер прикрепляемого файла (File too large to be added)
В файле /etc/php5/apache2/php.ini
нужно изменить значение переменной upload_max_filesize
.
Пример:
upload_max_filesize="10M"
Чтобы изменения вступили в силу нужно перечитать настройки Apache:
service apache2 reload
В меню Настройки\Общие
, вкладка Значения по-умолчанию
, раздел Внешний вид
, пункт Шрифт экспорта в PDF
нужно изменить шрифт на DejaVuSans
Сохранить настройки, выйти из GLPI и зайти снова.
Для того, чтобы стандартный экспорт в PDF работал правильно нужно:
1. В файле glpi/inc/search.class.php
заменить windows-1252
на windows-1251
2. Заменить шрифты в папке glpi/lib/ezpdf/fonts/
на файлы из fonts.tar.gz
При использовании Print to PDF русские буквы отображаются, как вопросительные знаки.
Чтобы это исправить нужно:
В папке плагина в файле /inc/simplepdf.class.php
заменить windows-1252
на 'windows-1251''
Заменить шрифты в папке плагина /fonts на отредактированные
При попытке открыть поставщика он не открывается, в лог apache ошибка.
PHP Fatal error: Call to a member function fetch_assoc() on a non-object in /opt/glpi/inc/dbmysql.class.php on line 298
Ошибка замечена на GLPI 0.84.8 (plugin: Domains 1.6.0)
Ошибка присутствует и на GLPI 9.1 (plugin: Domains 1.8.0)
Решение: нужно заменить
"glpi_suppliers"=>array("glpi_plugin_domains_domains"=>"glpi_suppliers"),
на:
"glpi_suppliers"=>array("glpi_plugin_domains_domains"=>"suppliers_id"),