这里是普通文章模块栏目内容页
OCS Inventory 主从系统
OCS Inventory 主从系统

OCS Inventory 是一个协助你盘点 Linux 及 Windows 服务器、桌上计算机、笔记本等设备的主从工具。OCS Inventory 可以在 Linux 或 Windows 上安装为服务器,但这份指引假设是 CentOS。被称为「代理程序」的客户端通过在服务器上登录来取得关於该主机的数据。
这份指引将会为你示范如何把 OCS Inventory 与负盛名的 GLPI 网络库存软件集,好让你l能取得更详尽的记录。GLPI 除了能处理仪器外,更包括软件及合约,用来输入 OCS Inventory 最适合不过。
有数个必须的 Perl 模块是以 RPM 包装的,它们来自其它软件库,因此务请参考 wiki 内的适当部份来设置第三方软件库。
现时 OCS 有两个版本,分别是 1.01 和 1.02 RC2。我尝试安装后者,但应用它时遇上了些问题。这份指引的余下部份将会假设你在安装 1.01 版的服务器和代理程序。

系统
CentOS 5.1/5.2

安装服务器
服务器的安装涉及设置一台 MySQL、Apache 及 PHP 的服务器。当中某些软件或许已经安装了。

设置 MySQL 与 Apache
假如仍你未运用 MySQL 及 Apache,请安装它们的服务器:
# yum install mysql-server mysql httpd
最低限度设置 Apache 的 ServerName 指令并启用 httpd 服务。
# vim /etc/httpd/conf/httpd.conf
ServerName: ocs-inventory:80

# service httpd start; chkconfig httpd on
浏览你的主机来确定网页服务器正在运作中。接著,启用 mysql 服务,好让它能完成初次设置,然后更改口令来保障 MySQL,免得你的服务器上载著一个公共的 MySQL。
# service mysqld start; chkconfig mysqld on
设置一个 MySQL 数据库的 root 口令:
# mysqladmin -u root password '自选口令'

设置 Perl 及 PHP
接著,安装一些来自 RPMForge 软件库的必备 Perl 模块组件。
# yum install perl-XML-Simple perl-Compress-Zlib perl-DBI perl-DBD-MySQL perl-Apache-DBI perl-Net-IP perl-SOAP-Lite
然后,为 OCS 的管理台安装数个 PHP 所需及具依赖性的组件。
# yum install php-pecl-zip php-mysql php-devel zlib-devel php-pear php-gd gcc
在你完成安装后,你须要将 zip 的支持加到你的 PHP 安装内。这牵涉到把以下内容加进配置文件内。
# pecl install zip
# vim /etc/php.ini
;加入 zip 支持
extension=zip.so
重新引导 apache 让改动能生效。
# service httpd restart
这样做便应该在安装 OCS 库存服务器前达成所有先决条件。假如你缺乏任何 Perl 模块而又不能通过 RPMForge 来解决,请在 RPMForge 的邮件列表上徵求所需的组件。
某些人或许因为在其它地方使用 perl,而得悉管理员可以安装 CPAN 上的 perl 模块(见:有关 CPAN 及编译源代码)。这虽然正确,但如此做只会绕过检查互依赖性及先决条件带来的保护;不能通过组件系统进行更新;亦不能通知组件系统关於新增的模块。

话虽如此,你仍可以选择运用 CPAN,但这样做将会把你的机器由 CentOS 变成一台只有你能支持及维护的东西:
# perl -MCPAN -e 'install PERL::PACKAGE'
这样做的确会有结果,但系统肯定已不再是 CentOS 了。

安装 OCS 服务器

OCS 的安装脚本

下一步是安装 OCS 软件。你可以从下列连结取得更多文档及组件本身。
OCS 支持页
OCS 1.01 版下载页
安装管理服务器只时需回答数个问题。它有一个不错的脚本可以为代办一切事情。请下载压缩档并将它解压。接著你便可以执行脚本进行安装。
# tar -xzvf OCSNG_LINUX_SERVER_1.01.tar.gz
# cd OCSNG_LINUX_SERVER_1.01
# sh setup.sh
大致上一切都不言自明,而且在多数时间,你可以选用缺省值。假如服务器上已安装了一个较旧版本的 OCS,那么首个画面对你才会是重要。
+----------------------------------------------------------+
|                                                          |
| Welcome to OCS Inventory NG Management server setup !    |
|                                                          |
+----------------------------------------------------------+

CAUTION: If upgrading Communication server from OCS Inventory NG 1.0 RC2 and
previous, please remove any Apache configuration for Communication Server!

Do you wish to continue ([y]/n)?
接下来的问题你都可以沿用缺省答案,除非你想做作出修改,故此我不会解释各个设置。下一条问题是关於你想把文件放在那里。我的文件的根目录在 /var/www/html,因此请输入你设置 Apache 取文件的路径。
+----------------------------------------------------------+
| Checking for Apache root document directory...           |
+----------------------------------------------------------+

Where is Apache root document directory [] ?/var/www/html/
OCS 现在已经被安装在 /var/www/html,而主配置文件已放在网页服务器的 httpd 目录,/etc/httpd/conf.d/ocsinventory.conf,还有日志目录已被设置为 /var/log/ocsinventory-NG/。

设置 OCS 网页
下一步是利用 OCS 网页设置工具来连接到你的 MySQL,创建一个数据库,并进驻它。请打开浏览器并进到你的服务器。http://your_ocs_server/ocsreports
若然你碰上任何错误或警告,务请修正它们,重新引导 Apache,然后重新装入该页。如果你不这样做,你将会不能继续下去。现在你应该看见一个登录方块,询问你有关 MySQL 的登录数据。
MySQL login: root
MySQL Password: 你所设置的值
MySQL HostName: localhost
假如一切顺利的话,你将会看到一个冗长的清单列出安装程序已完成的步骤。要不然,请修正问题然后重试。成功完成后,请点击页面最底部的 submit query 按钮。现在你可以利用 admin 作为用户名称和口令来登录网页界面。你可以在浏览器窗口的右上方更改这个缺省的口令。

安装代理程序/客户端

Perl/PHP 依赖的组件
接著,请安装一些代理程序执行时所需的 Perl 及 PHP 组件。代理程序的安装器其实已包括一切所需的,但我比较喜欢用 RPM 来安装它们。你可随你的首选选择。
# yum install perl-XML-Simple perl-Compress-Zlib perl-Net-IP perl-Net-SSLeay
perl-LWP 及 perl-Digest-MD5 这两个组件的 RPM 并没有收藏在 CentOS 的主软件库内,'但它们却是收藏在 RPMforge 软件库内。
一如以上有关 CPAN 的讨论,假若你选择将 CentOS 计算机转变成一台由你个人支持的系统,你可以选用上述的代理程序安装器,或者从 CPAN 安装它们。同样地,这是你的选择。要通过 CPAN 进行安装,请执行以下指令。
# perl -MCPAN -e shell
cpan> install LWP Digest::MD5
安装代理程序

当你下载完代理程序的压缩档后,请解压并进入它的目录,然后执行安装用的却本。
# tar -xzvf OCSNG_LINUX_AGENT_1.01_with_require.tar.gz
# cd OCSNG_LINUX_AGENT_1.01
# sh setup.sh
代理程序的安装脚本与服务器的看起来很相似。你可以通过两个方法来安装代理程序:本地、或 http 安装。若你选用本地安装,OCS 代理程序将会创建一个文件让你输入服务器内。若你采用 http,代理程序将会自动联络 OCS 服务器。当然后者是首选,但本地安装在你的机器没有网络的情况下就大派用场。
请输入 OCS 服务器的名程或 IP 地址。80 号端口是缺省端口,因此在这条问题你只需按 enter,除非你的 Apache 是在另一个端口上运行。
+----------------------------------------------------------+
| Checking for OCS Inventory NG Communication Server...    |
+----------------------------------------------------------+

Which host is running OCS Inventory NG Communication Server [] ? 你的服务器
On which port is running OCS Inventory NG Communication Server [80] ?
余下问题的缺省值都可以接纳。安装程序接著会检查你的所有 Perl 及 PHP 组件,然后创建一项 cron.d 的工作来执行与服务器联络用的脚本。


Windows 代理程序
Windows 计算机上的安装并不需要你太大的参与。你只需下载 Windows 版的客户端,然后执行 .exe 安装程序。将它指向你的 OCS 服务器主机或 IP 地址,然后便大功告成。这个组件内包含有 OCS 代理程序执行时所需的一切。你多数会想将它安装为一个服务,好让它在开机时被执行。请找寻组件内 OcsAgentService.exe 这个文件用作安装之用。

整合 GLPI
这部份假设你已经拥有一个运作中的 GLPI 系统。假若不是的话,请遵照 GLPI 网页上的 安装指引。一旦你拥有可用的 GLPI,请v以管理员的身份登录网页界面。请浏览以下画面:
General -> Restrictions
你必须在这个画面启用 OCSNG 的设置,然后才能与 GLPI 进行任何型式的整合。请更改设置并存储它们。
接著,请进到以下画面:
Setup -> OCSNG
你须要在这个画面内设置数据库的连接。如果你的 GLPI 与 OCS 是安装在同一台服务器上,那样你应该选择 localhost 作为所需的连接。如果 OCS 并不是在同一台服务器上,请点击页面上的加号来创建新的设置。这样做便会打开一个空白的范本,让你填入数据告诉 GLPI 如何与你的 OCS 服务器连接。
当你存储了设置后,你便会看见一大堆选项。这些选项让你指定如何将 OCS 的数据输入 GLPI。这一切都是随你的个人首选而定,因此没有单一个方法来进行设置。如何你想显示所有计算机与组件的一般数据,请将这一切设置改为 yes。请确定你存储了所有设置。
当你设置好输入首选时,你便可以进入以下选单将数据库输入。
Tools -> OCSNG
在这里你有四个选择。
第一就将已经输入的计算机进行同步化。这个动作会将 OCS 的一切数据更新至 GLPI 现存的项目里。
第二个选择就是输入新的计算机,这个不言自明。
第三个选择就是将新的 OCS 计算机连结到现存的 GLPI 计算机上。
第四个选择就是清除 GLPI 与 OCS 之间的连结。
第三个选择是最重要的。如果你采用 GLPI 已经有一段时间,而当中有手动式加入的项目,这个选择便最适合了。利用这个选择,你可以将不同之处合并起来,而不必盖过任何你手动式加入的修改。
这大致上是将项目输入 GLPI 的程序。现在你可以用 GLPI 的选单系统浏览或寻找清单,但是你将会看见很多额外信息关於你的仪器。请记住你仍然可以用 OCS 的网页界面,它提供了列表及报告。请享用你的新库存软件。