OCS Inventory-NG(Open Computer and Software Inventory Next Generation)是一款开源的用于帮助网络或系统管理员来跟踪网络中计算机配置与软件安装情况的应用程序。收集到硬件和系统信息请查看:
http://www.ocsinventory-ng.org/index.php?page=features
。
OCS Inventory 也可以用来发现在您网络中所有的活动设备,例如,交换机、路由器、网络打印机,这其中的每一个,您都可以通过 MAC 或者 IP地址来对它们进行分类。当OCS Inventory 管理控制台是运行在LINUX 上时,如果 nmap 和 nmblookup 服务是可用的,您将可以通过扫描IP和子网络来了解那些未被列入清单主机的详细信息。另外,您还可以通过 OCS Inventory 部署安装包到客户端计算机上。
OCS Inventory NG 支持的系统
Agent has been henged on the following operating systems:
Windows 系统:
Windows 95 with DCOM95 (or IE 4 or higher)
Windows 98
Windows 98 Second Edition
Windows NT4 Workstation with IE 4 or higher
Windows NT4 Server with IE 4 or higher
Windows 2000 Professional
Windows 2000 Server/Advanced Server
Windows XP Home Edition
Windows XP Professional Edition
Windows Server 2003
Windows Vista
Linux 系统:
Centos Linux
Debian Linux
Fedora Core Linux
Gentoo Linux
Knoppix Linux
Mandriva Linux
RedHat Linux
Slackware Linux
SuSE Linux
Trustix Linux
Ubuntu Linux
There is also agents for MacOS X, Sun Solaris, *BSD and IBM AIX (see section Active Contributions)
OCS Inventory NG Server
Management server has been henged on the following platforms:
Windows 2000 Professional
Windows 2000 Server
Windows XP Professional Edition
Windows Server 2003
Centos Linux
Debian Linux
Fedora Core Linux
Mandriva Linux
RedHat Linux
SuSE Linux
Ubuntu Linux
Some users reports that it works fine on
Gentoo Linux
Knoppix Linux
Slackware Linux
Ubuntu Linux
Sun Solaris
FreeBSD
OCS Inventory NG 架构组件
OCS Inventory NG 通过在客户端上运行一个代理程序(agent)来收集所有的硬件的信息和软件安装信息。使用管理服务器(Management Server)来集中处理、查看库存清单结果和创建部署包。在管理服务器(Management Server)与代理程序(agent)之间通过 http/https 来进行通信,所有的通信数据都使用 zlib 压缩成 xml 格式,以便减小网络的平均流量。
代理程序(agent)需要安装在客户端计算机上,在 Windwos 系统下,OCS Inventory NG 提供了一个工具,使您可以通过Active Directory GPO 或登录脚本来轻松部署代理程序(agent)。在 Linux 系统下,只能通过手工来安装代理程序(agent)。
管理服务器包含了4个组件:
Data Server 用于储存收集到的客户端的软硬件信息。
Communication server 用于支持数据库服务器与代理之间的http 通信。
Deployment server 用于储存所有的包部署配置信息(需要https 支持!)
Administration console 允许管理员通过喜爱的浏览器来查询数据库服务器的库存信息。
这4个组件可以安装在一台计算机上,也可以安装在不同的计算机以便可以实现负载。如果网络中的客户端数量超过10000的话,那么最好使用两个或更多的不同服务器,一个用来做数据库服务器+通信服务器,另一个用来做数据库复制服务器+管理服务器+部署服务器。
安装管理服务器
安装管理服务器,请确保你的系统满足以下条件,以下所有的条件都为必须条件:
Requirements:
You have to meet the following requirements.
Apache version 1.3.33or higher/ Apache version 2.0.46 or higher.
Mod_perl version 1.29 or higher.
Mod_php version 4.3.2 or higher.
PHP 4.3.2 or higher, with ZIP and GD support enabled.
PERL 5.6 or higher.
Perl module XML::Simple version 2.12 or higher.
Perl module Compress::Zlib version 1.33 or higher.
Perl module DBI version 1.40 or higher.
Perl module DBD::Mysql version 2.9004 or higher.
Perl module Apache::DBI version 0.93 or higher.
Perl module Net::IP version 1.21 or higher.
Perl module SOAP::Lite version 0.66 or higher (not mandatory)
MySQL version 4.1.0 or higher with InnoDB engine active.
Make utility like GNU make.
本文的约定:
1、默认所有的安装包都放在 /root 下面
开始安装
安装mysql
[root @heng ~] # cd /usr/local
[root @heng local] # tar xzvf /root/mysql-5.0.51a-linux-i686.tar.gz
[root @heng local] # groupadd mysql
[root @heng local] # useradd -g mysql mysql
[root @heng local] # ln -s /usr/local/mysql-5.0.51a-linux-i686 /usr/local/mysql
[root @heng local] # cd mysql
[root @heng mysql] # chown -R mysql .
[root @heng mysql] # chgrp -R mysql .
[root @heng mysql] # ./scripts/mysql_install_db --user=mysql &
[root @heng mysql] # chown -R root .
[root @heng mysql] # chown -R mysql data
[root @heng mysql] # ./bin/mysqld_safe —user=mysql &
查看3306 端口是否处于监听状态
[root @heng mysql] # netstat -tlunp
[root @heng mysql] #cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root @heng mysql] #chmod 755 /etc/init.d/mysqld
[root @heng mysql] #chkconfig —add mysqld
[root @heng mysql] #chkconfig —level 35 mysqld on
[root @heng mysql] # mkdir /usr/local/mysql/lib/mysql
[root @heng mysql] # chown root.mysql /usr/local/mysql/lib/mysql
[root @heng mysql] # chwon root.mysql /usr/local/mysql/include/mysql
[root @heng mysql] # ln –s /usr/local/mysql/lib/* /usr/local/mysql/lib/mysql
[root @heng mysql] # ln –s /usr/local/mysql/include/* /usr/local/mysql/include/mysql
[root @ heng local] # echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf
[root @ heng local] # ldconfig
安装APACHE
[root @heng mysql] # cd /usr/local
[root @heng local] # tar xzvf /root/httpd-2.2.4.tar.gz
[root @heng local] # cd httpd-2.2.4
[root @heng httpd-2.2.4] # ./configure —prefix=/usr/lcoal/apache --enable-so —enable-rewrite
[root @heng httpd-2.2.4] # make
[root @heng httpd-2.2.4] # make install
[root @heng httpd-2.2.4] # echo “/usr/local/apache/bin/apachectl start” >> /etc/rc.local
[root @heng httpd-2.2.4] # cd /usr/lo cal
[root @heng local] # tar xzvf /root/mod_perl-2.0.4.tar.gz
[root @heng local] # cd mod_perl-2.0.4
[root @heng mod_perl-2.0.4] # perl Makefile.PL MP_APXS=/usr/local/apache/bin/apsx
[root @heng mod_perl-2.0.4] # make
[root @heng mod_perl-2.0.4] # make install
安装 PHP
[root @heng httpd-2.2.4] # cd /usr/local
[root @heng local] # tar xzvf /root/php-5.2.3.tar.gz
[root @heng local] # mkdir -p /usr/local/php
[root @heng local] # cd php-5.2.3
[root @heng php-5.2.3] # ./configure —prefix=/usr/local/php —with-apxs2=/usr/local/apache/bin/apxs —with-mysql=/usr/local/mysql
--with-mysqli=/usr/local/mysql/bin/mysql_config —with-png-dir —with-jpeg-dir —with-zlib-dir —with-freetype-dir —with-gd —enable-zip
[root @heng php-5.2.3] # make
[root @heng php-5.2.3] # make install
[root @ heng php-5.2.3] # cp php.ini-dist /usr/local/php/lib/php.ini
编辑apache配置文件httpd.conf,以apache支持php
[root @ heng php-5.2.3] # vi /usr/local/apache/conf/httpd.conf
# 添加如下二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
# 定位至DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
[root @heng mod_perl-2.0.4] # cd
//***********红帽5.0 不用装 perl-xml-simple, 系统自带有,用 rpm -qa | grep perl 查看
[root @heng ~] # rpm -ivh perl-XML-Simple-2.18-1.el4.rf.noarch.rpm
***************************************************\\\\\\\\\\\\\\
[root @heng ~] # tar xzvf XML-SAX-Expat-0.38.tar.gz
[root @heng ~] # cd XML-SAX-Expat-0.38
[root @heng XML-SAX-Expat-0.38] # perl Makefile.PL
[root @heng XML-SAX-Expat-0.38] # make
[root @heng XML-SAX-Expat-0.38] # make install
[root @heng XML-SAX-Expat-0.38] # cd
[root @heng ~] # tar XML-Simple-2.18.tar .gz
[root @heng ~] # cd XML-Simple-2.18
[root @heng XML-Simple-2.18] # perl Makefile.PL
[root @heng XML-Simple-2.18] # make
[root @heng XML-Simple-2.18] # make install
[root @heng XML-Simple-2.18] # cd
[root @heng ~] # tar xzvf Compress-Raw-Zlib-2.011.tar.gz
[root @heng ~] # cd Compress-Raw-Zlib-2.011
[root @heng Compress-Raw-Zlib-2.011] # perl Makefile.PL
[root @heng Compress-Raw-Zlib-2.011] # make
[root @heng Compress-Raw-Zlib-2.011] # make install
[root @heng Compress-Raw-Zlib-2.011] # cd
[root @heng ~] # tar xzvf IO-Compress-Base-2.011.tar.gz
[root @heng ~] # cd IO-Compress-Base-2.011
[root @heng IO-Compress-Base-2.011] # perl Makefile.PL
[root @heng IO-Compress-Base-2.011] # make
[root @heng IO-Compress-Base-2.011] # make install
[root @heng IO-Compress-Base-2.011] # cd
[root @heng ~] # tar xvzf IO-Compress-Zlib-2.011.tar.gz
[root @heng ~] # cd IO-Compress-Zlib-2.011
[root @heng IO-Compress-Zlib-2.011] # perl Makefile.PL
[root @heng IO-Compress-Zlib-2.011] # make
[root @heng IO-Compress-Zlib-2.011] # make install
[root @heng IO-Compress-Zlib-2.011] # cd
[root @heng ~] # tar xzvf DBI-1.604.tar.gz
[root @heng ~] # cd DBI-1.604
[root @heng DBI-1.604] # perl Makefile.PL
[root @heng DBI-1.604] # make
[root @heng DBI-1.604] # make install
[root @heng DBI-1.604] # cd
[root @heng ~] # tar xzvf DBD-mysql-4.007.tar.gz
[root @heng ~] # cd DBD-mysql-4.007
[root @heng DBD-mysql-4.007] # perl Makefile.PL --libs=”-L/usr/local/mysql/lib/mysql -lmysqlclient -lz” --cflags=-I/usr/local/mysql/include/mysql
[root @heng DBD-mysql-4.007] # make
[root @heng DBD-mysql-4.007] # make install
[root @heng DBD-mysql-4.007] # cd
[root @heng ~] # tar xzvf Digest-SHA1-2.11.tar.gz
[root @heng ~] # cd Digest-SHA1-2.11
[root @heng Digest-SHA1-2.11] # perl Makefile.PL
[root @heng Digest-SHA1-2.11] # make
[root @heng Digest-SHA1-2.11] # make install
[root @heng Digest-SHA1-2.11] # cd
[root @heng ~] # tar xzvf Apache-DBI-1.07.tar.gz
[root @heng ~] # cd Apache-DBI-1.07
[root @heng Apache-DBI-1.07] # perl Makefile.PL
[root @heng Apache-DBI-1.07] # make
[root @heng Apache-DBI-1.07] # make install
[root @heng Apache-DBI-1.07] # cd
[root @heng ~] # tar xzvf Net-IP-1.25.tar.gz
[root @heng ~] # cd Net-IP-1.25
[root @heng Net-IP-1.25] # perl Makefile.PL
[root @heng Net-IP-1.25] # make
[root @heng Net-IP-1.25] # make install
[root @heng Net-IP-1.25] # cd
[root @heng ~] # tar xzvf IO-Zlib-1.09.tar.gz
[root @heng ~] # cd IO-Zlib-1.09
[root @heng IO-Zlib-1.09] # perl Makefile.PL
[root @heng IO-Zlib-1.09] # make
[root @heng IO-Zlib-1.09] # make install
[root @heng IO-Zlib-1.09] # cd
[root @heng ~] # tar xzvf Algorithm-Diff-1.1902.tar.gz
[root @heng ~] # cd Algorithm-Diff-1.1902
[root @heng Algorithm-Diff-1.1902] # perl Makefile.PL
[root @heng Algorithm-Diff-1.1902] # make
[root @heng Algorithm-Diff-1.1902] # make install
[root @heng Algorithm-Diff-1.1902] # cd
[root @heng ~] # tar xzvf Text-Diff-0.35.tar.gz
[root @heng ~] # cd Text-Diff-0.35
[root @heng Text-Diff-0.35] # perl Makefile.PL
[root @heng Text-Diff-0.35] # make
[root @heng Text-Diff-0.35] # make install
[root @heng Text-Diff-0.35] # cd
[root @heng ~] # tar xzvf Archive-Tar-1.38.tar.gz
[root @heng ~] # cd Archive-Tar-1.38
[root @heng Archive-Tar-1.38] # perl Makefile.PL
[root @heng Archive-Tar-1.38] # make
[root @heng Archive-Tar-1.38] # make install
[root @heng Archive-Tar-1.38] # cd
[root @heng ~] # tar xzvf ExtUtils-Install-1.50.tar.gz
[root @heng ~] # cd ExUtils-Install-1.50
[root @heng ExUtils-Install-1.50] # perl Makefile.PL
[root @heng ExUtils-Install-1.50] # make
[root @heng ExUtils-Install-1.50] # make install
[root @heng ExUtils-Install-1.50] # cd
[root @heng ~] # tar xzvf ExtUtils-CBuilder-0.23.tar.gz
[root @heng ~] # cd ExtUtils-CBuilder-0.23
[root @heng ExtUtils-CBuilder-0.23] # perl Makefile.PL
[root @heng ExtUtils-CBuilder-0.23] # make
[root @heng ExtUtils-CBuilder-0.23] # make install
[root @heng ExtUtils-CBuilder-0.23] # cd
[root @heng ~] # tar xzvf ExtUtils-ParseXS-2.19.tar.gz
[root @heng ~] # cd ExtUtils-ParseXS-2.19
[root @heng ExtUtils-ParseXS-2.19] # perl Makefile.PL
[root @heng ExtUtils-ParseXS-2.19] # make
[root @heng ExtUtils-ParseXS-2.19] # make install
[root @heng ExtUtils-ParseXS-2.19] # cd
[root @heng ~] # tar xzvf File-Remove-1.41.tar.gz
[root @heng ~] # cd File-Remove-1.41
[root @heng File-Remove-1.41] # perl Makefile.PL
[root @heng File-Remove-1.41] # make
[root @heng File-Remove-1.41] # make install
[root @heng File-Remove-1.41] # cd
[root @heng ~] # tar xzvf Crypt-CapnMidNite-1.00.tar.gz
[root @heng ~] # cd Crypt-CapnMidNite-1.00
[root @heng Crypt-CapnMidNite-1.00] # perl Makefile.PL
[root @heng Crypt-CapnMidNite-1.00] # make
[root @heng Crypt-CapnMidNite-1.00] # make install
[root @heng Crypt-CapnMidNite-1.00] # cd
[root @heng ~] # tar xzvf Crypt-License-2.04.tar.gz
[root @heng ~] # cd Crypt-License-2.04
[root @heng Crypt-License-2.04] # perl Makefile.PL
[root @heng Crypt-License-2.04] # make
[root @heng Crypt-License-2.04] # make install
[root @heng Crypt-License-2.04] # cd
[root @heng ~] # tar xzvf Module-CoreList-2.15.tar.gz
[root @heng ~] # cd Module-CoreList-2.15
[root @heng Module-CoreList-2.15] # perl Makefile.PL
[root @heng Module-CoreList-2.15] # make
[root @heng Module-CoreList-2.15] # make install
[root @heng Module-CoreList-2.15] # cd
[root @heng ~] # tar xzvf Digest-SHA-5.47.tar.gz
[root @heng ~] # cd Digest-SHA-5.47
[root @heng Digest-SHA-5.47] # perl Makefile.PL
[root @heng Digest-SHA-5.47] # make
[root @heng Digest-SHA-5.47] # make install
[root @heng Digest-SHA-5.47] # cd
[root @heng ~] # tar xzvf Module-Signature-0.55.tar.gz
[root @heng ~] # cd Module-Signature-0.55
[root @heng Module-Signature-0.55] # perl Makefile.PL
Looking for GNU Privacy Guard (gpg), a cryptographic signature tool...
GnuPG found (/usr/bin/gpg).
Import PAUSE and author keys to GnuPG? [y] 直接回车
Importing... done.
Locating required external dependency bin:gpg... found at /usr/bin/gpg.
*** Module::AutoInstall version 1.02
*** Checking for Perl dependencies...
[Core Features]
- heng::More ...loaded. (0.62)
- IO::Socket::INET ...loaded. (1.29)
==> Auto-install the 1 mandatory module(s) from CPAN? [y] n
//这里选择NO,不从CPAN 网站上自动安装
==> The module(s) are mandatory! Really skip? [n] y
*** Module::AutoInstall configuration finished.
Checking if your kit is complete...
Looks good
Writing Makefile for Module::Signature
[root @heng Module-Signature-0.55] # make
[root @heng Module-Signature-0.55] # make install
[root @heng Module-Signature-0.55] # cd
[root @heng ~] # tar xzvf Pod-Escapes-1.04.tar.gz
[root @heng ~] # cd Pod-Escapes-1.04
[root @heng Pod-Escapes-1.04] # perl Makefile.PL
[root @heng Pod-Escapes-1.04] # make
[root @heng Pod-Escapes-1.04] # make install
[root @heng Pod-Escapes-1.04] # cd
[root @heng ~] # tar xzvf Pod-Simple-3.07.tar.gz
[root @heng ~] # cd Pod-Simple-3.07
[root @heng Pod-Simple-3.07] # perl Makefile.PL
[root @heng Pod-Simple-3.07] # make
[root @heng Pod-Simple-3.07] # make install
[root @heng Pod-Simple-3.07] # cd
[root @heng ~] # tar xzvf podlators-2.1.1.tar.gz
[root @heng ~] # cd podlators-2.1.1
[root @heng podlators-2.1.1] # perl Makefile.PL
[root @heng podlators-2.1.1] # make
[root @heng podlators-2.1.1] # make install
[root @heng podlators-2.1.1] # cd
[root @heng ~] # tar xzvf Regexp-Common-2.122.tar.gz
[root @heng ~] # cd Regexp-Common-2.122
[root @heng Regexp-Common-2.122] # perl Makefile.PL
[root @heng Regexp-Common-2.122] # make
[root @heng Regexp-Common-2.122] # make install
[root @heng Regexp-Common-2.122] # cd
[root @heng ~] # tar xzvf Pod-Readme-0.09.tar.gz
[root @heng ~] # cd Pod-Readme-0.09
[root @heng Pod-Readme-0.09] # perl Makefile.PL
[root @heng Pod-Readme-0.09] # make
[root @heng Pod-Readme-0.09] # make install
[root @heng Pod-Readme-0.09] # cd
[root @heng ~] # tar xzvf version-0.7501.tar.gz
[root @heng ~] # cd version-0.7501
[root @heng version-0.7501] # perl Makefile.PL
[root @heng version-0.7501] # make
[root @heng version-0.7501] # make install
[root @heng version-0.7501] # cd
[root @heng ~] # tar xzvf Module-Build-0.2808.tar.gz
[root @heng ~] # cd Module-Build-0.2808
[root @heng Module-Build-0.2808] # perl Makefile.PL
[root @heng Module-Build-0.2808] # make
[root @heng Module-Build-0.2808] # make install
[root @heng Module-Build-0.2808] # cd
[root @heng ~] # tar xzvf Module-ScanDeps-0.84.tar.gz
[root @heng ~] # cd Module-ScanDeps-0.84
[root @heng Module-ScanDeps-0.84] # perl Makefile.PL
[root @heng Module-ScanDeps-0.84] # make
[root @heng Module-ScanDeps-0.84] # make install
[root @heng Module-ScanDeps-0.84] # cd
[root @heng ~] # tar xzvf PAR-Dist-0.31.tar.gz
[root @heng ~] # cd PAR-Dist-0.31
[root @heng PAR-Dist-0.31] # perl Makefile.PL
[root @heng PAR-Dist-0.31] # make
[root @heng PAR-Dist-0.31] # make install
[root @heng PAR-Dist-0.31] # cd
[root @heng ~] # tar xzvf YAML-Tiny-1.32.tar.gz
[root @heng ~] # cd YAML-Tiny-1.32
[root @heng YAML-Tiny-1.32] # perl Makefile.PL
[root @heng YAML-Tiny-1.32] # make
[root @heng YAML-Tiny-1.32] # make install
[root @heng YAML-Tiny-1.32] # cd
[root @heng ~] # tar xzvf Module-Install-0.75.tar.gz
[root @heng ~] # cd Module-Install-0.75
[root @heng Module-Install-0.75] # perl Makefile.PL
[root @heng Module-Install-0.75] # make
[root @heng Module-Install-0.75] # make install
[root @heng Module-Install-0.75] # cd
[root @heng ~] # tar xzvf Digest-MD5-2.36.tar.gz
[root @heng ~] # cd Digest-MD5-2.36
[root @heng Digest-MD5-2.36] # perl Makefile.PL
[root @heng Digest-MD5-2.36] # make
[root @heng Digest-MD5-2.36] # make install
[root @heng Digest-MD5-2.36] # cd
[root @heng ~] # tar xzvf Digest-HMAC-1.01.tar.gz
[root @heng ~] # cd Digest-HMAC-1.01
[root @heng Digest-HMAC-1.01] # perl Makefile.PL
[root @heng Digest-HMAC-1.01] # make
[root @heng Digest-HMAC-1.01] # make install
[root @heng Digest-HMAC-1.01] # cd
[root @heng ~] # tar xzvf Authen-SASL-2.11.tar.gz
[root @heng ~] # cd Authen-SASL-2.11
[root @heng Authen-SASL-2.11] # perl Makefile.PL
[root @heng Authen-SASL-2.11] # make
[root @heng Authen-SASL-2.11] # make install
[root @heng Authen-SASL-2.11] # cd
[root @heng ~] # tar xzvf XML-Stream-1.22.tar.gz
[root @heng ~] # cd XML-Stream-1.22
[root @heng XML-Stream-1.22] # perl Makefile.PL
[root @heng XML-Stream-1.22] # make
[root @heng XML-Stream-1.22] # make install
[root @heng XML-Stream-1.22] # cd
[root @heng ~] # tar xzvf Net-XMPP-1.02.tar.gz
[root @heng ~] # cd Net-XMPP-1.02
[root @heng Net-XMPP-1.02] # perl Makefile.PL
[root @heng Net-XMPP-1.02] # make
[root @heng Net-XMPP-1.02] # make install
[root @heng Net-XMPP-1.02] # cd
[root @heng ~] # tar xzvf Net-Jabber-2.0.tar.gz
[root @heng ~] # cd Net-Jabber-2.0
[root @heng Net-Jabber-2.0] # perl Makefile.PL
[root @heng Net-Jabber-2.0] # make
[root @heng Net-Jabber-2.0] # make install
[root @heng Net-Jabber-2.0] # cd
[root @heng ~] # tar xzvf SOAP-Lite-0.710.06.tar.gz
[root @heng ~] # cd SOAP-Lite-0.710.06
[root @heng SOAP-Lite-0.710.06] # perl Makefile.PL
We are about to install SOAP::Lite and for your convenience will provide
you with list of modules and prerequisites, so you'll be able to choose
only modules you need for your configuration.
XMLRPC::Lite, UDDI::Lite, and XML::Parser::Lite are included by default.
Installed transports can be used for both SOAP::Lite and XMLRPC::Lite.
Press to see the detailed list. #按回车键
Feature Prerequisites Install?
----------------------------- ---------------------------- --------
Core Package
OCS Inventory 也可以用来发现在您网络中所有的活动设备,例如,交换机、路由器、网络打印机,这其中的每一个,您都可以通过 MAC 或者 IP地址来对它们进行分类。当OCS Inventory 管理控制台是运行在LINUX 上时,如果 nmap 和 nmblookup 服务是可用的,您将可以通过扫描IP和子网络来了解那些未被列入清单主机的详细信息。另外,您还可以通过 OCS Inventory 部署安装包到客户端计算机上。
OCS Inventory NG 支持的系统
Agent has been henged on the following operating systems:
Windows 系统:
Windows 95 with DCOM95 (or IE 4 or higher)
Windows 98
Windows 98 Second Edition
Windows NT4 Workstation with IE 4 or higher
Windows NT4 Server with IE 4 or higher
Windows 2000 Professional
Windows 2000 Server/Advanced Server
Windows XP Home Edition
Windows XP Professional Edition
Windows Server 2003
Windows Vista
Linux 系统:
Centos Linux
Debian Linux
Fedora Core Linux
Gentoo Linux
Knoppix Linux
Mandriva Linux
RedHat Linux
Slackware Linux
SuSE Linux
Trustix Linux
Ubuntu Linux
There is also agents for MacOS X, Sun Solaris, *BSD and IBM AIX (see section Active Contributions)
OCS Inventory NG Server
Management server has been henged on the following platforms:
Windows 2000 Professional
Windows 2000 Server
Windows XP Professional Edition
Windows Server 2003
Centos Linux
Debian Linux
Fedora Core Linux
Mandriva Linux
RedHat Linux
SuSE Linux
Ubuntu Linux
Some users reports that it works fine on
Gentoo Linux
Knoppix Linux
Slackware Linux
Ubuntu Linux
Sun Solaris
FreeBSD
OCS Inventory NG 架构组件
OCS Inventory NG 通过在客户端上运行一个代理程序(agent)来收集所有的硬件的信息和软件安装信息。使用管理服务器(Management Server)来集中处理、查看库存清单结果和创建部署包。在管理服务器(Management Server)与代理程序(agent)之间通过 http/https 来进行通信,所有的通信数据都使用 zlib 压缩成 xml 格式,以便减小网络的平均流量。
代理程序(agent)需要安装在客户端计算机上,在 Windwos 系统下,OCS Inventory NG 提供了一个工具,使您可以通过Active Directory GPO 或登录脚本来轻松部署代理程序(agent)。在 Linux 系统下,只能通过手工来安装代理程序(agent)。
管理服务器包含了4个组件:
Data Server 用于储存收集到的客户端的软硬件信息。
Communication server 用于支持数据库服务器与代理之间的http 通信。
Deployment server 用于储存所有的包部署配置信息(需要https 支持!)
Administration console 允许管理员通过喜爱的浏览器来查询数据库服务器的库存信息。
这4个组件可以安装在一台计算机上,也可以安装在不同的计算机以便可以实现负载。如果网络中的客户端数量超过10000的话,那么最好使用两个或更多的不同服务器,一个用来做数据库服务器+通信服务器,另一个用来做数据库复制服务器+管理服务器+部署服务器。
安装管理服务器
安装管理服务器,请确保你的系统满足以下条件,以下所有的条件都为必须条件:
Requirements:
You have to meet the following requirements.
Apache version 1.3.33or higher/ Apache version 2.0.46 or higher.
Mod_perl version 1.29 or higher.
Mod_php version 4.3.2 or higher.
PHP 4.3.2 or higher, with ZIP and GD support enabled.
PERL 5.6 or higher.
Perl module XML::Simple version 2.12 or higher.
Perl module Compress::Zlib version 1.33 or higher.
Perl module DBI version 1.40 or higher.
Perl module DBD::Mysql version 2.9004 or higher.
Perl module Apache::DBI version 0.93 or higher.
Perl module Net::IP version 1.21 or higher.
Perl module SOAP::Lite version 0.66 or higher (not mandatory)
MySQL version 4.1.0 or higher with InnoDB engine active.
Make utility like GNU make.
本文的约定:
1、默认所有的安装包都放在 /root 下面
开始安装
安装mysql
[root @heng ~] # cd /usr/local
[root @heng local] # tar xzvf /root/mysql-5.0.51a-linux-i686.tar.gz
[root @heng local] # groupadd mysql
[root @heng local] # useradd -g mysql mysql
[root @heng local] # ln -s /usr/local/mysql-5.0.51a-linux-i686 /usr/local/mysql
[root @heng local] # cd mysql
[root @heng mysql] # chown -R mysql .
[root @heng mysql] # chgrp -R mysql .
[root @heng mysql] # ./scripts/mysql_install_db --user=mysql &
[root @heng mysql] # chown -R root .
[root @heng mysql] # chown -R mysql data
[root @heng mysql] # ./bin/mysqld_safe —user=mysql &
查看3306 端口是否处于监听状态
[root @heng mysql] # netstat -tlunp
[root @heng mysql] #cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root @heng mysql] #chmod 755 /etc/init.d/mysqld
[root @heng mysql] #chkconfig —add mysqld
[root @heng mysql] #chkconfig —level 35 mysqld on
[root @heng mysql] # mkdir /usr/local/mysql/lib/mysql
[root @heng mysql] # chown root.mysql /usr/local/mysql/lib/mysql
[root @heng mysql] # chwon root.mysql /usr/local/mysql/include/mysql
[root @heng mysql] # ln –s /usr/local/mysql/lib/* /usr/local/mysql/lib/mysql
[root @heng mysql] # ln –s /usr/local/mysql/include/* /usr/local/mysql/include/mysql
[root @ heng local] # echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf
[root @ heng local] # ldconfig
安装APACHE
[root @heng mysql] # cd /usr/local
[root @heng local] # tar xzvf /root/httpd-2.2.4.tar.gz
[root @heng local] # cd httpd-2.2.4
[root @heng httpd-2.2.4] # ./configure —prefix=/usr/lcoal/apache --enable-so —enable-rewrite
[root @heng httpd-2.2.4] # make
[root @heng httpd-2.2.4] # make install
[root @heng httpd-2.2.4] # echo “/usr/local/apache/bin/apachectl start” >> /etc/rc.local
[root @heng httpd-2.2.4] # cd /usr/lo cal
[root @heng local] # tar xzvf /root/mod_perl-2.0.4.tar.gz
[root @heng local] # cd mod_perl-2.0.4
[root @heng mod_perl-2.0.4] # perl Makefile.PL MP_APXS=/usr/local/apache/bin/apsx
[root @heng mod_perl-2.0.4] # make
[root @heng mod_perl-2.0.4] # make install
安装 PHP
[root @heng httpd-2.2.4] # cd /usr/local
[root @heng local] # tar xzvf /root/php-5.2.3.tar.gz
[root @heng local] # mkdir -p /usr/local/php
[root @heng local] # cd php-5.2.3
[root @heng php-5.2.3] # ./configure —prefix=/usr/local/php —with-apxs2=/usr/local/apache/bin/apxs —with-mysql=/usr/local/mysql
--with-mysqli=/usr/local/mysql/bin/mysql_config —with-png-dir —with-jpeg-dir —with-zlib-dir —with-freetype-dir —with-gd —enable-zip
[root @heng php-5.2.3] # make
[root @heng php-5.2.3] # make install
[root @ heng php-5.2.3] # cp php.ini-dist /usr/local/php/lib/php.ini
编辑apache配置文件httpd.conf,以apache支持php
[root @ heng php-5.2.3] # vi /usr/local/apache/conf/httpd.conf
# 添加如下二行
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
# 定位至DirectoryIndex index.html
修改为:
DirectoryIndex index.php index.html
[root @heng mod_perl-2.0.4] # cd
//***********红帽5.0 不用装 perl-xml-simple, 系统自带有,用 rpm -qa | grep perl 查看
[root @heng ~] # rpm -ivh perl-XML-Simple-2.18-1.el4.rf.noarch.rpm
***************************************************\\\\\\\\\\\\\\
[root @heng ~] # tar xzvf XML-SAX-Expat-0.38.tar.gz
[root @heng ~] # cd XML-SAX-Expat-0.38
[root @heng XML-SAX-Expat-0.38] # perl Makefile.PL
[root @heng XML-SAX-Expat-0.38] # make
[root @heng XML-SAX-Expat-0.38] # make install
[root @heng XML-SAX-Expat-0.38] # cd
[root @heng ~] # tar XML-Simple-2.18.tar .gz
[root @heng ~] # cd XML-Simple-2.18
[root @heng XML-Simple-2.18] # perl Makefile.PL
[root @heng XML-Simple-2.18] # make
[root @heng XML-Simple-2.18] # make install
[root @heng XML-Simple-2.18] # cd
[root @heng ~] # tar xzvf Compress-Raw-Zlib-2.011.tar.gz
[root @heng ~] # cd Compress-Raw-Zlib-2.011
[root @heng Compress-Raw-Zlib-2.011] # perl Makefile.PL
[root @heng Compress-Raw-Zlib-2.011] # make
[root @heng Compress-Raw-Zlib-2.011] # make install
[root @heng Compress-Raw-Zlib-2.011] # cd
[root @heng ~] # tar xzvf IO-Compress-Base-2.011.tar.gz
[root @heng ~] # cd IO-Compress-Base-2.011
[root @heng IO-Compress-Base-2.011] # perl Makefile.PL
[root @heng IO-Compress-Base-2.011] # make
[root @heng IO-Compress-Base-2.011] # make install
[root @heng IO-Compress-Base-2.011] # cd
[root @heng ~] # tar xvzf IO-Compress-Zlib-2.011.tar.gz
[root @heng ~] # cd IO-Compress-Zlib-2.011
[root @heng IO-Compress-Zlib-2.011] # perl Makefile.PL
[root @heng IO-Compress-Zlib-2.011] # make
[root @heng IO-Compress-Zlib-2.011] # make install
[root @heng IO-Compress-Zlib-2.011] # cd
[root @heng ~] # tar xzvf DBI-1.604.tar.gz
[root @heng ~] # cd DBI-1.604
[root @heng DBI-1.604] # perl Makefile.PL
[root @heng DBI-1.604] # make
[root @heng DBI-1.604] # make install
[root @heng DBI-1.604] # cd
[root @heng ~] # tar xzvf DBD-mysql-4.007.tar.gz
[root @heng ~] # cd DBD-mysql-4.007
[root @heng DBD-mysql-4.007] # perl Makefile.PL --libs=”-L/usr/local/mysql/lib/mysql -lmysqlclient -lz” --cflags=-I/usr/local/mysql/include/mysql
[root @heng DBD-mysql-4.007] # make
[root @heng DBD-mysql-4.007] # make install
[root @heng DBD-mysql-4.007] # cd
[root @heng ~] # tar xzvf Digest-SHA1-2.11.tar.gz
[root @heng ~] # cd Digest-SHA1-2.11
[root @heng Digest-SHA1-2.11] # perl Makefile.PL
[root @heng Digest-SHA1-2.11] # make
[root @heng Digest-SHA1-2.11] # make install
[root @heng Digest-SHA1-2.11] # cd
[root @heng ~] # tar xzvf Apache-DBI-1.07.tar.gz
[root @heng ~] # cd Apache-DBI-1.07
[root @heng Apache-DBI-1.07] # perl Makefile.PL
[root @heng Apache-DBI-1.07] # make
[root @heng Apache-DBI-1.07] # make install
[root @heng Apache-DBI-1.07] # cd
[root @heng ~] # tar xzvf Net-IP-1.25.tar.gz
[root @heng ~] # cd Net-IP-1.25
[root @heng Net-IP-1.25] # perl Makefile.PL
[root @heng Net-IP-1.25] # make
[root @heng Net-IP-1.25] # make install
[root @heng Net-IP-1.25] # cd
[root @heng ~] # tar xzvf IO-Zlib-1.09.tar.gz
[root @heng ~] # cd IO-Zlib-1.09
[root @heng IO-Zlib-1.09] # perl Makefile.PL
[root @heng IO-Zlib-1.09] # make
[root @heng IO-Zlib-1.09] # make install
[root @heng IO-Zlib-1.09] # cd
[root @heng ~] # tar xzvf Algorithm-Diff-1.1902.tar.gz
[root @heng ~] # cd Algorithm-Diff-1.1902
[root @heng Algorithm-Diff-1.1902] # perl Makefile.PL
[root @heng Algorithm-Diff-1.1902] # make
[root @heng Algorithm-Diff-1.1902] # make install
[root @heng Algorithm-Diff-1.1902] # cd
[root @heng ~] # tar xzvf Text-Diff-0.35.tar.gz
[root @heng ~] # cd Text-Diff-0.35
[root @heng Text-Diff-0.35] # perl Makefile.PL
[root @heng Text-Diff-0.35] # make
[root @heng Text-Diff-0.35] # make install
[root @heng Text-Diff-0.35] # cd
[root @heng ~] # tar xzvf Archive-Tar-1.38.tar.gz
[root @heng ~] # cd Archive-Tar-1.38
[root @heng Archive-Tar-1.38] # perl Makefile.PL
[root @heng Archive-Tar-1.38] # make
[root @heng Archive-Tar-1.38] # make install
[root @heng Archive-Tar-1.38] # cd
[root @heng ~] # tar xzvf ExtUtils-Install-1.50.tar.gz
[root @heng ~] # cd ExUtils-Install-1.50
[root @heng ExUtils-Install-1.50] # perl Makefile.PL
[root @heng ExUtils-Install-1.50] # make
[root @heng ExUtils-Install-1.50] # make install
[root @heng ExUtils-Install-1.50] # cd
[root @heng ~] # tar xzvf ExtUtils-CBuilder-0.23.tar.gz
[root @heng ~] # cd ExtUtils-CBuilder-0.23
[root @heng ExtUtils-CBuilder-0.23] # perl Makefile.PL
[root @heng ExtUtils-CBuilder-0.23] # make
[root @heng ExtUtils-CBuilder-0.23] # make install
[root @heng ExtUtils-CBuilder-0.23] # cd
[root @heng ~] # tar xzvf ExtUtils-ParseXS-2.19.tar.gz
[root @heng ~] # cd ExtUtils-ParseXS-2.19
[root @heng ExtUtils-ParseXS-2.19] # perl Makefile.PL
[root @heng ExtUtils-ParseXS-2.19] # make
[root @heng ExtUtils-ParseXS-2.19] # make install
[root @heng ExtUtils-ParseXS-2.19] # cd
[root @heng ~] # tar xzvf File-Remove-1.41.tar.gz
[root @heng ~] # cd File-Remove-1.41
[root @heng File-Remove-1.41] # perl Makefile.PL
[root @heng File-Remove-1.41] # make
[root @heng File-Remove-1.41] # make install
[root @heng File-Remove-1.41] # cd
[root @heng ~] # tar xzvf Crypt-CapnMidNite-1.00.tar.gz
[root @heng ~] # cd Crypt-CapnMidNite-1.00
[root @heng Crypt-CapnMidNite-1.00] # perl Makefile.PL
[root @heng Crypt-CapnMidNite-1.00] # make
[root @heng Crypt-CapnMidNite-1.00] # make install
[root @heng Crypt-CapnMidNite-1.00] # cd
[root @heng ~] # tar xzvf Crypt-License-2.04.tar.gz
[root @heng ~] # cd Crypt-License-2.04
[root @heng Crypt-License-2.04] # perl Makefile.PL
[root @heng Crypt-License-2.04] # make
[root @heng Crypt-License-2.04] # make install
[root @heng Crypt-License-2.04] # cd
[root @heng ~] # tar xzvf Module-CoreList-2.15.tar.gz
[root @heng ~] # cd Module-CoreList-2.15
[root @heng Module-CoreList-2.15] # perl Makefile.PL
[root @heng Module-CoreList-2.15] # make
[root @heng Module-CoreList-2.15] # make install
[root @heng Module-CoreList-2.15] # cd
[root @heng ~] # tar xzvf Digest-SHA-5.47.tar.gz
[root @heng ~] # cd Digest-SHA-5.47
[root @heng Digest-SHA-5.47] # perl Makefile.PL
[root @heng Digest-SHA-5.47] # make
[root @heng Digest-SHA-5.47] # make install
[root @heng Digest-SHA-5.47] # cd
[root @heng ~] # tar xzvf Module-Signature-0.55.tar.gz
[root @heng ~] # cd Module-Signature-0.55
[root @heng Module-Signature-0.55] # perl Makefile.PL
Looking for GNU Privacy Guard (gpg), a cryptographic signature tool...
GnuPG found (/usr/bin/gpg).
Import PAUSE and author keys to GnuPG? [y] 直接回车
Importing... done.
Locating required external dependency bin:gpg... found at /usr/bin/gpg.
*** Module::AutoInstall version 1.02
*** Checking for Perl dependencies...
[Core Features]
- heng::More ...loaded. (0.62)
- IO::Socket::INET ...loaded. (1.29)
==> Auto-install the 1 mandatory module(s) from CPAN? [y] n
//这里选择NO,不从CPAN 网站上自动安装
==> The module(s) are mandatory! Really skip? [n] y
*** Module::AutoInstall configuration finished.
Checking if your kit is complete...
Looks good
Writing Makefile for Module::Signature
[root @heng Module-Signature-0.55] # make
[root @heng Module-Signature-0.55] # make install
[root @heng Module-Signature-0.55] # cd
[root @heng ~] # tar xzvf Pod-Escapes-1.04.tar.gz
[root @heng ~] # cd Pod-Escapes-1.04
[root @heng Pod-Escapes-1.04] # perl Makefile.PL
[root @heng Pod-Escapes-1.04] # make
[root @heng Pod-Escapes-1.04] # make install
[root @heng Pod-Escapes-1.04] # cd
[root @heng ~] # tar xzvf Pod-Simple-3.07.tar.gz
[root @heng ~] # cd Pod-Simple-3.07
[root @heng Pod-Simple-3.07] # perl Makefile.PL
[root @heng Pod-Simple-3.07] # make
[root @heng Pod-Simple-3.07] # make install
[root @heng Pod-Simple-3.07] # cd
[root @heng ~] # tar xzvf podlators-2.1.1.tar.gz
[root @heng ~] # cd podlators-2.1.1
[root @heng podlators-2.1.1] # perl Makefile.PL
[root @heng podlators-2.1.1] # make
[root @heng podlators-2.1.1] # make install
[root @heng podlators-2.1.1] # cd
[root @heng ~] # tar xzvf Regexp-Common-2.122.tar.gz
[root @heng ~] # cd Regexp-Common-2.122
[root @heng Regexp-Common-2.122] # perl Makefile.PL
[root @heng Regexp-Common-2.122] # make
[root @heng Regexp-Common-2.122] # make install
[root @heng Regexp-Common-2.122] # cd
[root @heng ~] # tar xzvf Pod-Readme-0.09.tar.gz
[root @heng ~] # cd Pod-Readme-0.09
[root @heng Pod-Readme-0.09] # perl Makefile.PL
[root @heng Pod-Readme-0.09] # make
[root @heng Pod-Readme-0.09] # make install
[root @heng Pod-Readme-0.09] # cd
[root @heng ~] # tar xzvf version-0.7501.tar.gz
[root @heng ~] # cd version-0.7501
[root @heng version-0.7501] # perl Makefile.PL
[root @heng version-0.7501] # make
[root @heng version-0.7501] # make install
[root @heng version-0.7501] # cd
[root @heng ~] # tar xzvf Module-Build-0.2808.tar.gz
[root @heng ~] # cd Module-Build-0.2808
[root @heng Module-Build-0.2808] # perl Makefile.PL
[root @heng Module-Build-0.2808] # make
[root @heng Module-Build-0.2808] # make install
[root @heng Module-Build-0.2808] # cd
[root @heng ~] # tar xzvf Module-ScanDeps-0.84.tar.gz
[root @heng ~] # cd Module-ScanDeps-0.84
[root @heng Module-ScanDeps-0.84] # perl Makefile.PL
[root @heng Module-ScanDeps-0.84] # make
[root @heng Module-ScanDeps-0.84] # make install
[root @heng Module-ScanDeps-0.84] # cd
[root @heng ~] # tar xzvf PAR-Dist-0.31.tar.gz
[root @heng ~] # cd PAR-Dist-0.31
[root @heng PAR-Dist-0.31] # perl Makefile.PL
[root @heng PAR-Dist-0.31] # make
[root @heng PAR-Dist-0.31] # make install
[root @heng PAR-Dist-0.31] # cd
[root @heng ~] # tar xzvf YAML-Tiny-1.32.tar.gz
[root @heng ~] # cd YAML-Tiny-1.32
[root @heng YAML-Tiny-1.32] # perl Makefile.PL
[root @heng YAML-Tiny-1.32] # make
[root @heng YAML-Tiny-1.32] # make install
[root @heng YAML-Tiny-1.32] # cd
[root @heng ~] # tar xzvf Module-Install-0.75.tar.gz
[root @heng ~] # cd Module-Install-0.75
[root @heng Module-Install-0.75] # perl Makefile.PL
[root @heng Module-Install-0.75] # make
[root @heng Module-Install-0.75] # make install
[root @heng Module-Install-0.75] # cd
[root @heng ~] # tar xzvf Digest-MD5-2.36.tar.gz
[root @heng ~] # cd Digest-MD5-2.36
[root @heng Digest-MD5-2.36] # perl Makefile.PL
[root @heng Digest-MD5-2.36] # make
[root @heng Digest-MD5-2.36] # make install
[root @heng Digest-MD5-2.36] # cd
[root @heng ~] # tar xzvf Digest-HMAC-1.01.tar.gz
[root @heng ~] # cd Digest-HMAC-1.01
[root @heng Digest-HMAC-1.01] # perl Makefile.PL
[root @heng Digest-HMAC-1.01] # make
[root @heng Digest-HMAC-1.01] # make install
[root @heng Digest-HMAC-1.01] # cd
[root @heng ~] # tar xzvf Authen-SASL-2.11.tar.gz
[root @heng ~] # cd Authen-SASL-2.11
[root @heng Authen-SASL-2.11] # perl Makefile.PL
[root @heng Authen-SASL-2.11] # make
[root @heng Authen-SASL-2.11] # make install
[root @heng Authen-SASL-2.11] # cd
[root @heng ~] # tar xzvf XML-Stream-1.22.tar.gz
[root @heng ~] # cd XML-Stream-1.22
[root @heng XML-Stream-1.22] # perl Makefile.PL
[root @heng XML-Stream-1.22] # make
[root @heng XML-Stream-1.22] # make install
[root @heng XML-Stream-1.22] # cd
[root @heng ~] # tar xzvf Net-XMPP-1.02.tar.gz
[root @heng ~] # cd Net-XMPP-1.02
[root @heng Net-XMPP-1.02] # perl Makefile.PL
[root @heng Net-XMPP-1.02] # make
[root @heng Net-XMPP-1.02] # make install
[root @heng Net-XMPP-1.02] # cd
[root @heng ~] # tar xzvf Net-Jabber-2.0.tar.gz
[root @heng ~] # cd Net-Jabber-2.0
[root @heng Net-Jabber-2.0] # perl Makefile.PL
[root @heng Net-Jabber-2.0] # make
[root @heng Net-Jabber-2.0] # make install
[root @heng Net-Jabber-2.0] # cd
[root @heng ~] # tar xzvf SOAP-Lite-0.710.06.tar.gz
[root @heng ~] # cd SOAP-Lite-0.710.06
[root @heng SOAP-Lite-0.710.06] # perl Makefile.PL
We are about to install SOAP::Lite and for your convenience will provide
you with list of modules and prerequisites, so you'll be able to choose
only modules you need for your configuration.
XMLRPC::Lite, UDDI::Lite, and XML::Parser::Lite are included by default.
Installed transports can be used for both SOAP::Lite and XMLRPC::Lite.
Press
Feature Prerequisites Install?
----------------------------- ---------------------------- --------
Core Package
[ ] version
Client HTTP support
Client HTTPS support
Client SMTP/sendmail support [ ] MIME::Lite [ no ]
Client FTP support
Standalone HTTP server
Apache/mod_perl server [ ] Apache [ no ]
FastCGI server [ ] FCGI [ no ]
POP3 server [ ] MIME::Parser [ no ]
IO server
MQ transport support [ ] MQSeries [ no ]
JABBER transport support [* ] Net::Jabber [ no ]
MIME messages [ ] MIME::Parser [ no ]
DIME messages [ ] IO::Scalar (v2.105) [ no ]
[ ] DIME::Tools (v0.03)
[ ] Data::UUID (v0.11)
SSL Support for TCP Transport [ ] IO::Socket::SSL [ no ]
Compression support for HTTP [ ] Compress::Zlib [ no ]
MIME interoperability w/ Axis [ ] MIME::Parser (v6.106) [ no ]
--- An asterix '
// 在上面红色加粗字体处,显示有一个必须的组件 Net::Jabber 没有安装,开始我没有在意,就这样编译下去,但到安装 OCS_SERVER 时,提示系统没有安装 SOAP-Lite。这可能是由于必须的组件 Net::Jabber 没有安装,而导致SOAP-Lite 也无法安装成功,没有办法,只得将SOAP-Lite 的必须组件都安装上,在我安装 Net::Jabber 时,发现要安装这个组件,还有很多依赖关系统要解决,这也就带来前面一段非常漫长的 perl 编译过程,这段过程简直称得上是一个痛苦的过程,因为有太多的依赖关系要解决,有太多的 perl 编译。从 IO::Zlib 开始到 Net::xmpp ,都是为了安装 Net::Jabber 的依赖关系。//
Do you want to proceed with this configuration? [yes] 回车
以下略~~~~~~`
[root @heng SOAP-Lite-0.710.06] # make
[root @heng SOAP-Lite-0.710.06] # make install
[root @heng SOAP-Lite-0.710.06] # cd
[root @heng ~] # rpm -ihv perl-XML-Entities-0.03-1.el5.noarch.rpm
[root @heng ~] # groupadd apache
[root @heng ~] # useradd -g apache apache
在APACHE 中添加 mod_perl模块,并将 apache daemon的用户修改成 apache
[root @heng ~] # vi /usr/local/apache/conf/httpd.conf
#添加 mod_perl 模块,因为 ocs-ng 通信需要 mod_perl 支持才能正常工作
LoadModule perl_module modules/mod_perl.so
将
User daemon
Group daemon
修改成为
User apache
Group apache
保存退出
[root @heng ~] # chown -R apache.apache /usr/local/apache/htdocs
[root @heng ~] # /usr/local/apache/bin/apachectl restart
[root @heng ~] # cd /usr/local
[root @heng ~] # tar xzvf /root/OCSNG_UNIX_SERVER_1.02_RC2.tar.gz
[root @heng OCSNG_UNIX_SERVER_1.02_RC2] # ./setup.sh
+----------------------------------------------------------+ |
|
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)?y
Assuming Communication server 1.0 RC2 or previous is not installed
on this computer.
Starting OCS Inventory NG Management server setup from folder /usr/local/OCSNG_UNIX_SERVER_1.02_RC2
Storing log in file /usr/local/OCSNG_UNIX_SERVER_1.02_RC2/ocs_server_setup.log
+----------------------------------------------------------+
| Checking for database server properties... |
+----------------------------------------------------------+
./setup.sh: line 111: mysql: command not found
./setup.sh: line 112: mysql: command not found
Your MySQL client seems to be part of MySQL version ..
./setup.sh: line 116: [: -gt: unary operator expected
./setup.sh: line 120: [: -eq: unary operator expected
Your computer does not seem to be compliant with MySQL 4.1 or higher.
//这里提示 OCS_SERVER 的安装程序在我的系统中没有找到 MySQL,而事实上我是有安装 MySQL 的,只不过 OCS_SERVER 默认是在 /etc 目录下查找,是查找系统默认安装的MySQL,而我的 MySQL 是自己编译安装的,安装在 /usr/local 目录下,所以 OCS_SERVER 提示找不到,这个不要紧,在下面自己指定就行啦。
Do you wish to continue (y/[n])?y
Ensure your database server is running MySQL 4.1 or higher !
Ensure also this computer is able to connect to your MySQL server !
Which host is running database server [localhost] ?
//这里要你指定哪一台主机运行数据库服务器,预选项是 localhost ,这里因为我要使用本机安装的 mysql,所以直接回车就行了,如果你的 mysql 安装在其它电脑上,请在这里指定 mysql 服务器的 IP 地址。//
OK, database server is running on host localhost ;-)
On which port is running database server [3306] ?
// 指定 mysql 服务器的运行端口,默认是3306 。本例中我并没有改变 mysql 使用的端口号,直接回车即可。//
OK, database server is running on port 3306 ;-
+----------------------------------------------------------+
Checking for Apache web server daemon... |
+----------------------------------------------------------+
Where is Apache daemon binary [] ?/usr/local/apache/bin/apachectl
// 指定 apache 程序的二进制执行文件位置,也就是启动 apache 服务器的指令路径,通过指定 apache 程序的二进制执行文件位置,OCS_SERVER安装程序来找到apache的主配置文件。 这里我的 apache 是自己编译安装的,apaceh 安装在 /usr/local/apache 目录下 。如果你安装的路径不同或采用的是系统自带的 apache,请根据自己的情况进行调整。//
OK, using Apache daemon /usr/local/apache/bin/apachectl ;-)
+----------------------------------------------------------+
Checking for Apache main configuration file... |
+----------------------------------------------------------+
Where is Apache main configuration file [/usr/local/apache/conf/httpd.conf] ?
//指定 apache 服务器的主配置文件路径,确认路径是否正确,如果没有错误,直接回车即可,如果不对,请输入正确的路径。//。
OK, using Apache main configuration file /usr/local/apache/conf/httpd.conf ;
+----------------------------------------------------------+
Checking for Apache user account...
+----------------------------------------------------------+
Which user account is running Apache web server [User] ?apache
// 指定运行 APACHE 的用户,这个可以在 APACHE 的主配置文件里查看到。//
OK, Apache is running under user account daemon ;-)
+----------------------------------------------------------+
Checking for Apache group... |
+----------------------------------------------------------+
Which user group is running Apache web server [apache] ?apache
// 指定运行 APACHE 的用户组,这个可以在 APACHE 的主配置文件里查看到。//
OK, Apache is running under users group daemon ;
+----------------------------------------------------------+
Checking for Apache Include configuration directory... |
+----------------------------------------------------------+
Setup found Apache Include configuration directory in
Setup will put OCS Inventory NG Apache configuration in this directory.
Where is Apache Include configuration directory [] ?/usr/local/apache/conf/extra
//指定 apache 保存指定模块配置文件的目录
OK, Apache Include configuration directory /usr/local/apache/conf found ;)
+----------------------------------------------------------+
Checking for PERL Interpreter... |
+----------------------------------------------------------+
Found PERL Intrepreter at ;-)
Where is PERL Intrepreter binary [/usr/bin/perl] ?
//指定 perl 的二进制目录,如果使用系统自带的 perl,直接回车即可,如果你自己安装了 perl 的话,就指定正确的路径。//
OK, using PERL Intrepreter /usr/bin/perl ;-)
Do you wish to setup Communication server on this computer ([y]/n)?y
//是否安装通信服务器,当然要啦,输入 y
+----------------------------------------------------------+
Checking for Make utility...
+----------------------------------------------------------+
OK, Make utility found at ;-)
+----------------------------------------------------------+
Checking for Apache mod_perl version...
+----------------------------------------------------------+
Checking for Apache mod_perl version 1.99_22 or higher
Found that mod_perl version 1.99_22 or higher is available.
OK, Apache is using mod_perl version 1.99_22 or higher ;-)
+----------------------------------------------------------+
| Checking for Communication server log directory...
+----------------------------------------------------------+
Communication server can create detailled logs. This logs can be enabled
by setting interger value of LOGLEVEL to 1 in Administration console
menu Configuration.
Where to put Communication server log directory [/var/log/ocsinventory-server] ?
// 指定通信服务器的日志目录,如果不想改,直接回车就行啦。//
OK, Communication server will put logs into directory /var/log/ocsinventory-server ;-)
+----------------------------------------------------------+
Checking for required Perl Modules... |
+----------------------------------------------------------+
Checking for DBI PERL module...
Found that PERL module DBI is available.
Checking for Apache::DBI PERL module...
Found that PERL module Apache::DBI is available.
Checking for DBD::mysql PERL module...
Found that PERL module DBD::mysql is available.
Checking for Compress::Zlib PERL module..
Found that PERL module Compress::Zlib is available.
Checking for XML::Simple PERL module...
Found that PERL module XML::Simple is available.
Checking for Net::IP PERL module...
Found that PERL module Net::IP is available.
+----------------------------------------------------------+
Checking for optional Perl Modules... |
+----------------------------------------------------------+
Checking for SOAP::Lite PERL module...
Found that PERL module SOAP::Lite is available.
Checking for XML::Entities PERL module...
Found that PERL module XML::Entities is available.
+----------------------------------------------------------+
OK, looks good ;-)
//上面是在检查是否已经安装了需要的 perl 模块,所有的测试都是 available,都通过啦,没问题。// | |
|
Configuring Communication server Perl modules... |
+----------------------------------------------------------+
Checking if your kit is complete...
Looks good
Writing Makefile for Apache::Ocsinventory
+----------------------------------------------------------+
| OK, looks good ;-) |
| |
| Preparing Communication server Perl modules... |
+----------------------------------------------------------+
+----------------------------------------------------------+
| OK, prepare finshed ;-) || |
| Installing Communication server Perl modules... |
+----------------------------------------------------------+
+----------------------------------------------------------+
| OK, Communication server Perl modules install finished;-)|
|
| Creating Communication server log directory... |
+----------------------------------------------------------+
Creating Communication server log directory /var/log/ocsinventory-server.
Fixing Communication server log directory files permissions.
Configuring logrotate for Communication server.
Removing old communication server logrotate file /etc/logrotate.d/ocsinventory-NG
Writing communication server logrotate to file /etc/logrotate.d/ocsinventory-server
+----------------------------------------------------------+
| OK, Communication server log directory created ;-) |
| |
| Now configuring Apache web server... |
+----------------------------------------------------------+
To ensure Apache loads mod_perl before OCS Inventory NG Communication Server,
Setup can name Communication Server Apache configuration file
z-ocsinventory-server.conf' instead of 'ocsinventory-server.conf'.
Do you allow Setup renaming Communication Server Apache configuration file
to 'z-ocsinventory-server.conf' ([y]/n) ? 直接回车
//是否允许安装程序重命名通信服务器的 apache 配置文件到to 'z-ocsinventory-server.con,输入 y 吧。//
OK, using 'z-ocsinventory-server.conf' as Communication Server Apache configuration file
Removing old communication server configuration to file /usr/local/apache/conf/ocsinventory.conf
Writing communication server configuration to file /usr/local/apache/conf/ocsinventory-server.conf
+----------------------------------------------------------+|
OK, Communication server setup sucessfully finished ;-) | |
| Please, review /usr/local/apache/conf/ocsinventory-server.conf
| to ensure all is good. Then restart Apache daemon.
+----------------------------------------------------------+
Do you wish to setup Administration Server (Web Administration Console)
on this computer ([y]/n)?y
//是否安装管理服务器(WEB 管理控制台)?当然要啦,输入 y。//
+----------------------------------------------------------+
| Checking for Administration Server directories... |
+----------------------------------------------------------+
CAUTION: Setup now install files in accordance with Filesystem Hierarchy
Standard. So, no file is installed under Apache root document directory
(Refer to Apache configuration files to locate it).
If you're upgrading from OCS Inventory NG Server 1.01 and previous, YOU
MUST REMOVE (or move) directories 'ocsreports' and 'download' from Apache
root document directory.
If you choose to move directory, YOU MUST MOVE 'download' directory to
Administration Server writable/cache directory (by default
/var/lib/ocsinventory-server), especialy if you use deployement feature.
Do you wish to continue ([y]/n)?y
Assuming directories 'ocsreports' and 'download' removed from
Apache root document directory.
Where to copy Administration Server static files for PHP Web Console
[/usr/share/ocsinventory-server] ?
//复制管理服务器的PHP WEB 控制台的静态文件到哪里?直接回车即可
OK, PHP files copied into /usr/share/ocsinventory-server/ocsreports ;-)
Where to create writable/cache directories for deployement packages and
IPDiscover [/var/lib/ocsinventory-server] ?
//开发包和 IPDiscover 的可写/缓存 指定在什么地方?
OK, writable/cache directory is /var/lib/ocsinventory-server ;-)
+----------------------------------------------------------+
|
Checking for required Perl Modules... |
+----------------------------------------------------------+
Checking for DBI PERL module...
Found that PERL module DBI is available.
Checking for DBD::mysql PERL module...
Found that PERL module DBD::mysql is available.
Checking for XML::Simple PERL module...
Found that PERL module XML::Simple is available.
Checking for Net::IP PERL module...
Found that PERL module Net::IP is available.
+----------------------------------------------------------+
|
Installing files for Administration server... |
+----------------------------------------------------------+
Creating PHP directory /usr/share/ocsinventory-server/ocsreports.
Copying PHP files to /usr/share/ocsinventory-server/ocsreports.
Fixing permissions on directory /usr/share/ocsinventory-server/ocsreports.
Creating database configuration file /usr/share/ocsinventory-server/ocsreports/dbconfig.inc.php.
Creating IPDiscover directory /var/lib/ocsinventory-server/ipd.
Fixing permissions on directory /var/lib/ocsinventory-server/ipd.
Creating packages directory /var/lib/ocsinventory-server/download.
Fixing permissions on directory /var/lib/ocsinventory-server/download.
Configuring IPDISCOVER-UTIL Perl script.
Installing IPDISCOVER-UTIL Perl script.
Fixing permissions on IPDISCOVER-UTIL Perl script.
Writing Administration server configuration to file /usr/local/apache/conf/ocsinventory-reports.conf
+----------------------------------------------------------+|
OK, Administration server installation finished ;-) |
| |
|
Please, review /usr/local/apache/conf/ocsinventory-reports.conf
| to ensure all is good and restart Apache daemon. |
| |
| Then, point your browser to http://server//ocsreports
| to configure database server and create/update schema. |
+----------------------------------------------------------+
Setup has created a log file /usr/local/OCSNG_UNIX_SERVER_1.02_RC2/ocs_server_setup.log. Please, save this file.
If you encounter error while running OCS Inventory NG Management server,
we can ask you to show us his content !
DON'T FORGET TO RESTART APACHE DAEMON !
Enjoy OCS Inventory NG ;-)
修改 apache 的配置文件
[root@mail OCSNG_UNIX_SERVER_1.02_RC2] # vi /usr/local/apache/conf/httpd.conf
#在 apache 的主配置文件的末尾添加下面的内容
# OCS-NG REPORTS
Include conf/extra/ocsinventory-reports.conf
# OCS-NG SERVER
Include conf/extra/z-ocsinventory-server.conf
[root@mail OCSNG_UNIX_SERVER_1.02_RC2] # /usr/local/apache/bin/apachectl stop
[root@mail OCSNG_UNIX_SERVER_1.02_RC2] # /usr/local/apache/bin/apachectl start
打开浏览器在地址栏中输入:http://192.168.98.240/ocsreports/install.php
输入 mysql 服务器的用户名、密码与服务器地址,点击”send”
继续....
继续....
OCS-NG 数据库建立成功,点击“提交查询”
点击“click here to enter OCS-NG GUI”进入OCS-NG 管理控制台
输入用户名:admin 密码:admin
安装 linux 客户端
[root@mail OCSNG_UNIX_SERVER_1.02_RC2] # cd /usr/local
[root@mail local] # tar xzvf /root/OCSNG_LINUX_AGENT_1.01.tar.gz
[root@mail local] # cd OCSNG_LINUX_AGENT_1.01
[root@mail OCSNG_LINUX_AGENT_1.01] # ./setup.sh
+----------------------------------------------------------+
|
| Welcome to OCS Inventory NG Agent setup ! |
| |
+----------------------------------------------------------+
Writing log to file /usr/local/OCSNG_LINUX_AGENT_1.01/ocs_agent_setup.log
+----------------------------------------------------------
| Checking for previous installation... |
+----------------------------------------------------------+
Previous installation of OCS Inventory NG agent not found
+----------------------------------------------------------+
| Checking for supplied parameters... |
+----------------------------------------------------------+
No parameter found
OCS Inventory NG Agent setup running in user interactive mode
+----------------------------------------------------------+
| Checking for OCS Inventory NG Agent running method... |
+----------------------------------------------------------+
OCS Inventory NG Agent can be run through 2 methods:
- local: inventory will be generated locally to a file, without
interacting with Communication Server. Inventory results
must then be imported manually into the server through
Administration Console.
- http: Agent can connect to Communication Server and will interact
with it to know what is has to do (inventory, ipdiscover,
deployment...)
Which method will you use to generate the inventory ([http]/local) ?
OK, OCS Inventory NG agent will be running in
+----------------------------------------------------------+
| Checking for OCS Inventory NG Communication Server... |
+----------------------------------------------------------+
Which host is running OCS Inventory NG Communication Server [] ?192.168.98.240
On which port is running OCS Inventory NG Communication Server [80] ?
OK, OCS Inventory NG Communication Server is running on host
<192.168.98.240> and port <80> ;-)
+----------------------------------------------------------+
| Checking for TAG administrative information value... |
+----------------------------------------------------------+
What is the value of TAG ([]) ?
OK, OCS Inventory NG agent will use <> as
+----------------------------------------------------------+
| Checking for PERL Interpreter... |
+----------------------------------------------------------+
OK, PERL Intrepreter found at ;-)
+----------------------------------------------------------+
| Checking for C/C++ Compiler... |
+----------------------------------------------------------+
OK, C/C++ Compiler found at ;-)
+----------------------------------------------------------+
| Checking for Make utility... |
+----------------------------------------------------------+
OK, Make utility found at ;-)
+----------------------------------------------------------+
| Checking for dmidecode binaries... |
+----------------------------------------------------------+
Found dmidecode binaries version <2.7> at ;-)
+----------------------------------------------------------+
| Checking for Compress::Zlib PERL module... |
+----------------------------------------------------------+
OK, PERL module Compress::Zlib is available ;-)
+----------------------------------------------------------+
| Checking for XML::Simple PERL module... |
+----------------------------------------------------------+
OK, PERL module XML::Simple is available ;-)
+----------------------------------------------------------+
| Checking for Net::IP PERL module... |
+----------------------------------------------------------+
OK, PERL module Net::IP is available ;-)
+----------------------------------------------------------+
| Checking for LWP::UserAgent PERL module... |
+----------------------------------------------------------+
OK, PERL module LWP::UserAgent is available ;-)
+----------------------------------------------------------+
| Checking for Digest::MD5 PERL module... |
+----------------------------------------------------------+
OK, PERL module Digest::MD5 is available ;-)
+----------------------------------------------------------+
Checking for Net::SSLeay PERL module... |
+----------------------------------------------------------+
OK, PERL module Net::SSLeay is available ;-)
+--------------------------------------------------------
| Installing IPDISCOVER binary... |
+----------------------------------------------------------+
Building IPDISCOVER version 3
Installing IPDISCOVER version 3 into /usr/sbin
OK, IPDISCOVER version 3 setup successfully ;-)
+----------------------------------------------------------+
| Installing OCS Inventory NG Agent... |
+----------------------------------------------------------+
Configuring OCS Inventory NG Agent
Building OCS Inventory NG Agent
Installing OCS Inventory NG Agent
Creating OCS Inventory NG Agent symbolic link
OK, OCS Inventory NG Agent setup successfully ;-)
+----------------------------------------------------------+
| Creating OCS Inventory NG Agent log directory... |
+----------------------------------------------------------+
Creating OCS Inventory NG Agent log directory .
Configuring logrotate for OCS Inventory NG Agent.
Writing OCS Inventory NG Agent logrotate to file
+----------------------------------------------------------+
| Installing OCS Inventory NG Agent configuration files... |
+----------------------------------------------------------+
Creating OCS Inventory NG Agent
Creating OCS Inventory NG Agent configuration directory
Writing OCS Inventory NG Agent configuration file
Creating OCS Inventory NG Agent
Writing OCS Inventory NG Agent configuration file
OK, OCS Inventory NG Agent configuration files setup successfully ;-)
+----------------------------------------------------------+
| Installing OCS Inventory NG Agent cron configuration... |
+----------------------------------------------------------+
Creating OCS Inventory NG Agent cron configuration file
Writing OCS Inventory NG Agent cron configuration file
OK, OCS Inventory NG Agent cron configuration file setup succssfully ;-)
+----------------------------------------------------------+
Lauching OCS Inventory NG Agent... |
+----------------------------------------------------------+
OK, OCS Inventory NG Agent runs successfully ;-)
Setup has created a log file /usr/local/OCSNG_LINUX_AGENT_1.01/ocs_agent_setup.log. Please, save this file.
If you encounter error while running OCS Inventory NG Agent,
we can ask you to show us his content !
Enjoy OCS Inventory NG ;-)
[root@mail OCSNG_LINUX_AGENT_1.01]#
注:windows 客户端安装方法较为简单,这里就不作介绍啦
GLPI
GLPI是法语Gestionnaire libre de parc informatique的缩写,翻译过来应该是开源IT和资产管理软件,在法国等欧洲国家和地区应用广泛并取得了很好的用户口碑。但在中国了解和应用的人并不多。
GLPI提供功能全面的IT资源管理接口,你可以用它来建立数据库全面管理IT的电脑,显示器,服务器,打印机,网络设备,电话,甚至硒鼓和墨盒等。提供Helpdesk用户支持平台;联系人,合同,合作商,以及文档的管理;提供资源预定,知识库的管理等功能。
GLPI主要功能特征如下:
总体特征:
多用户管理
多种认证系统(Local,LDAP,AD,POP/IMPAP,CAS)
权限系统
分页系统
多语言支持(支持多达14种语言)
搜索模块
显示列表可配置
PDF导出和SLK
SQL格式的数据库备份和恢复
下拉列表可配置
更新检查系统
UTF8接口
兼容HTML4.0协议
资产管理
可从OCS资产系统导入数据
计算机和连接设备管理和总成本管理
主机和显示器的连接管理
网络硬件和设备的连接管理(IP地址,MAC地址,VLAN等)
打印机电脑连接情况管理和耗材管理
其他外设电脑连接情况管理,电话管理
软件许可证及其失效日期管理
按地理位置管理硬件
模型化管理便于同类设备的增加
资产相关文件管理
硬件状态管理
物料不同情形下的管理-比如一台显示器连接到几台电脑主机
其他应用软件的对外管制
资产变更历史记录
追踪管理
各种投资的需求情况管理追踪
最终用户
投资需求可自动进行邮件追踪管理
投资变更维修历史追踪
投资需求标注
技术人员
投资需求优先级管理
投资需求邮件追踪
投资需求的分配
开/合/开干涉模式
实时变更的指派
显示变更历史
显示变更结果
对指定的硬件显示变更历史
将变更结果传递到指定技术人员
对指定的物料传送其变更历史
变更计划管理
状态管理
按月,年,总体提供状态报表
全部
按技术人员或企业
按硬件,位置或型号
按用户
按类别
按优先级
文档管理
合作伙伴(制造商,供应商,受益人)及其合同管理
合同(租借,保险,维护,外包等)管理
资产,合同相关文档管理
文档授权类型管理
预约管理
可供租借的资源预约管理
日历形式的接口管理预约
知识库管理
知识管理基本系统
公共FAQ管理
报表管理
设备报表可按以下产生:
按设备类型
按相关协议
按商务信息
网络报表
技术方面:
GLPI采用以下技术:
PHP4 或者 PHP5
MYSQL(>4.1.13)数据库
HTML网页
CSS
XML(报表生成) n
安装 GLPI
[root@mail OCSNG_LINUX_AGENT_1.01]# cd /usr/local/apache/htdocs
[root @mail htdocs] # tar xvf /root/glpi-0.71.1.tar.gz
[root @mail htdocs] # chown -R apache.apache glpi
然后在浏览器中输入:
1、语言设置,从下拉列表中选择语言为简体中文,点击“OK”
2、接受许可协议,点击“继续”
3、因为我这里是第一次安装,所以选择“设施”,如果是升级安装,选择“更新”
4、GLPI 在自行检测安装环境,一切都通过,点击“继续”
5、输入 mysql 服务器的名称,与用户及密码。注意:这里 msyql 服务器不能填IP地址。点击“继续”
6、为 GLPI 建立新数据库,并命名为 glpi.点击“继续”
7、glpi 数据库已经建立好,点击“继续”
8、安装完成,点击“使用GLPI”
9、安装完成,点击“使用GLPI”
10、更新完成,现在就可以使用 glpi 啦,点击“使用GLPI”
进入GLPI 登录界面,输入默认用户名:glpi 密码:glpi
点击“设定”菜单,从弹出的菜单中点击“General”,再点击“Restrictions”
将“激活OCSNG方式”设置成“是”点击“确定”
点击“localhost”
将所有项都设置为“是”,点确定。现在开始从OCSNG中导数据入GLPI,点击“工具”-“OCSNG”
按实际要求选择。至此从OCSNG导入数据到GLPI就算完成啦。