GLPI 9.3.3 & FusionInventory 9.3+1.3
环境配置
在CentOS7最小化安装的基础上,按照此教程进行配置。如果你不是采用最小化安装,有些步骤可能会显得多余。
本环境采用的是CentOS7 + apache + php7.2 + mysql。
网络设置
首先,VMware需要选择桥接方式,然后更改本服务器的IP地址,此IP地址即配置完成后登录GLPI时在浏览器输入的IP地址。
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改你的IP地址、网关、DNS。修改完成后,保存退出。
关闭网络限制
关闭SELINUX:
vi /etc/selinux/config
将SELINUX的值修改为disabled,保存退出。
关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
setenforce 0
配置LAMP
LAMP是Linux,Apache,MySQL,PHP的缩写,即把Apache、MySQL以及PHP安装在Linux系统上,组成一个环境来运行PHP的脚本语言。Apache是最常用的Web服务软件,而MySQL是比较小型的数据库软件。
配置yum源
yum install epel-release
wget http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
rpm -Uvh remi-release-7.rpm
安装编译环境和PHP环境
yum -y install --enablerepo=remi --enablerepo=remi-php72 gcc gcc-c++ glibc-devel glibc-headers autoconf automake bzip2-devel
zlib-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel openssl-devel libXpm libX11 libxml2-devel gettext-devel
pcre-devel php php-fpm php-devel php-gd php-pecl-zip php-mysql php-devel php-pear php-imap php-ldap php-odbc php-xml php-xmlrpc php-imap
php-ldap php-soap perl mod_perl perl-XML-Simple perl-Compress-Zlib perl-DBI perl-DBD-MySQL perl-Net-IP perl-Apache-DBI perl-SOAP-Lite
perl-XML-Entities perl-ModPerl-MM perl-Apache2-SOAP httpd php72-php-mbstring
注意,如果copy这段指令,保证每个文件名的完整。
安装数据库MYSQL
首先是安装:
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
yum install mysql-server -y
启动之:
systemctl start mysqld
systemctl enable mysqld
进入MYSQL:
mysql
修改当前用户密码,注意,这里的密码在后面安装GLPI时会用到,里面的分号不要漏:
use mysql;
update user set password=PASSWORD(“你的密码”)where user=“root”;
然后,创建GLPI所用的数据库:
create database glpi;
退出:
\q
退出后,在终端设置MYSQL开机启动:
chkconfig --levels 235 mysqld on
安装GLPI
服务器端准备
从github上拉取GLPI安装包:
curl -O -L https://github.com/glpi-project/glpi/releases/download/9.3.3/glpi-9.3.3.tgz
解压到 /html 目录:
tar xvf glpi-9.3.3.tgz -C /var/www/html
修改目录权限:
chown -R apache:apache /var/www/html
更改网络设置,重启Apache:
chkconfig --level 2345 httpd on
systemctl start httpd
systemctl enable httpd
客户端安装
在浏览器输入 IP/glpi,如:
192.168.1.76/glpi
安装插件FusionInventory9.3+1.3
获取安装包:
将其解压至GLPI目录下的插件目录:
tar -jxvf fusioninventory-9.3+1.3.tar.bz2 -C /var/www/html/glpi/plugins/
如果提示无法解压,则需要安装bzip2:
yum install -y bzip2
然后设置定时任务,这一步需要转为root用户:
crontab -e
在打开的文件里键入:
* * * * * /usr/bin/php /var/www/glpi/front/cron.php &>/dev/null
保存退出。
浏览器打开GLPI,在插件栏找到下载的插件,安装,启用。之后在管理菜单栏下找到插件界面。插件栏和安装后的效果如下图:
可能遇到的问题
服务器无法连接:
-
SELINUX未关闭
-
IPTABLES未禁用
-
httpd.conf中设置了禁止访问请求
-
读取权限未开启
-
服务器里旧版本的GLPI存在删除残余,若安装新版直接覆盖会出现权限问题
GLPI里打开FusionInventory插件界面,显示无法运行:
原因:没有添加计划任务。
有时候插件的这个错误莫名其妙地突然出现,比如在导入数据库之后,而且设置定时任务没有效果。针对于此,笔者想到即使是定时任务,其中的指令也只是普通指令,所以我们可以手动执行之,即在终端直接执行:
# /usr/bin/php /var/www/html/glpi/front/cron.php
关于路径中是否有“html”,实验测试下来和它关系并不大,正常时即使没有也可以执行定时任务,异常时加上也没有什么用,这一点暂且存疑,回过头再做测试。建议加上。
文中如有错误,欢迎指出。欢迎提问交流。