Ocs inventory настройка windows

Время на прочтение11 мин

Количество просмотров184K

Всем доброго времени суток!

Как видно из заголовка, речь пойдет о двух программах:
1. Open Computers and Software Inventory
OCS-Inventory основан на распределяемых модулях, устанавливаемых на инвентаризируемые машины, которые отсылают подробную информацию о системе, подключенных устройствах и установленном ПО в выделенную базу данных.
Поддерживаются следующие OS: Microsoft Windows, Linux, *BSD, Sun Solaris, IBM AIX, HP-UX, MacOS X

2. GPLI — Guestion Libre de Parc Informatique
Проект предназначен для работы с базой данных IT и телекоммуникационного оборудования, установленного на предприятии. Также имеется возможность ведения учета расходных материалов и организации службы технической поддержки по расписанию и по заявкам пользователей.

На просторах сети интернет достаточно много информации о настройке данной связки, но мне не встретилось ни одного подробного how to, где были бы решены все вопросы с локализацией. Поэтому я изложу компиляцию найденых решений и собственных доработок.

Итак, начнем!

Установка OCS Inventory.
Версия OCS: Ver. 1.3.2
В качестве серверной ОС для сбора данных у меня будет выступать ОС FreeBSD. Я не буду описывать установку и настройку LAMP(в данном случае FAMP =)). Будем исходить из того, что это у вас уже настроено.
Перед тем как начать установку и настройку OCS Inventory, проверьте установленны ли следующие порты
/usr/ports/www/mod_perl2
/usr/ports/sysutils/logrotate
/usr/ports/lang/perl

В конфиге apache должна быть строка
LoadModule perl_module libexec/apache22/mod_perl.so
Проверьте установленны ли следующие модули perl
Apache::DBI -- 1.08
BSD::Resource -- 1.2904
Bundle::NetSNMP -- ???
Class::Inspector -- 1.24
Compress::Raw::Bzip2 -- 2.030
Compress::Raw::Zlib -- 2.030
DBD::mysql -- 4.017
DBI -- 1.613
Digest::SHA1 -- 2.13
ExtUtils::MakeMaker -- undef
HTML::Parser -- 3.68
HTML::Tagset -- 3.20
IO::Compress -- ???
LWP -- 5.836
Locale::gettext -- 1.05
Net::IP -- 1.25
Perl -- 5.8.9
SOAP::Lite -- 0.712
Storable -- 2.21
Task::Weaken -- 1.03
URI -- 1.55
XML::Entities -- 1.0000
XML::Parser -- 2.36
XML::Simple -- 2.18
mod_perl2 -- 2.000004

для этого достаточно запустить вот такой скрипт
#!/usr/local/bin/perl
use ExtUtils::Installed;
my $instmod = ExtUtils::Installed->new();
foreach my $module ($instmod->modules()) {
my $version = $instmod->version($module) || "???";
print "$module -- $version\n";
}

Если что-то из приведенного списка у вас отсутствует, то установите коммандой
#cpan -e ModulName

1. Качаем пропатченый сервер

OCSNG в UTF8. Спасибо некоему linvinus!
Автор патча сделал для нас все что нужно, нам лишь осталось исправить небольшой недочет. Открываем архив, находим там файл /ocsinventory-server-1.3.2/ocsreports/languages/russian.txt, меняем в первой строке windows-1251 на utf8 и сохраняем в кодировке UTF8. Тарбол с исправленным russian.txt можно взять здесь

2. Распаковывыем архив в папку на сервере(у меня это /usr/local/www/ocs/).

#tar -xf OCSNG_UNIX_SERVER-1.3.2-linvinus-with-utf8_patch.tar.gz

3. Создадим директорию для logrotate

#mkdir /etc/logrotate.d

4. Изменяем владельца папки

# chown -R www:www /usr/local/www/ocs/

5. Далее переходим в папку и запускаем setup.sh

#sh 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)?
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/www/ocs
Storing log in file /usr/local/www/ocs/ocs_server_setup.log

+----------------------------------------------------------+
| Checking for database server properties... |
+----------------------------------------------------------+

Your MySQL client seems to be part of MySQL version 5.1.
Your computer seems to be running MySQL 4.1 or higher, good ;-)

Which host is running database server [localhost] ?
OK, database server is running on host localhost ;-)

On which port is running database server [3306] ?
OK, database server is running on port 3306 ;-)

+----------------------------------------------------------+
| Checking for Apache web server daemon... |
+----------------------------------------------------------+

Where is Apache daemon binary [/usr/local/sbin/httpd] ?
OK, using Apache daemon /usr/local/sbin/httpd ;-)

+----------------------------------------------------------+
| Checking for Apache main configuration file... |
+----------------------------------------------------------+

Where is Apache main configuration file [/usr/local/etc/apache22/httpd.conf] ?
OK, using Apache main configuration file /usr/local/etc/apache22/httpd.conf ;-)

+----------------------------------------------------------+
| Checking for Apache user account... |
+----------------------------------------------------------+

Which user account is running Apache web server [User] ?www
OK, Apache is running under user account www ;-)

+----------------------------------------------------------+
| Checking for Apache group... |
+----------------------------------------------------------+

Which user group is running Apache web server [www] ?www
OK, Apache is running under users group www ;-)

+----------------------------------------------------------+
| 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/etc/apache22/Includes
OK, Apache Include configuration directory /usr/local/etc/apache22/Includes found ;-)

+----------------------------------------------------------+
| Checking for PERL Interpreter... |
+----------------------------------------------------------+

Found PERL Intrepreter at </usr/bin/perl> ;-)
Where is PERL Intrepreter binary [/usr/bin/perl] ?
OK, using PERL Intrepreter /usr/bin/perl ;-)

Do you wish to setup Communication server on this computer ([y]/n)?

+----------------------------------------------------------+
| Checking for Make utility... |
+----------------------------------------------------------+

OK, Make utility found at </usr/bin/make> ;-)

+----------------------------------------------------------+
| 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 ;-) |
| |
| Configuring Communication server Perl modules... |
+----------------------------------------------------------+

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.
/usr/local/www/ocs
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) ?y
OK, using 'z-ocsinventory-server.conf' as Communication Server Apache configuration file
Removing old communication server configuration to file /usr/local/etc/apache22/Includes/ocsinventory.conf
Writing communication server configuration to file /usr/local/etc/apache22/Includes/z-ocsinventory-server.conf

+----------------------------------------------------------+
| OK, Communication server setup sucessfully finished ;-) |
| |
| Please, review /usr/local/etc/apache22/Includes/z-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)?n

Setup has created a log file /usr/local/www/ocs/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 ;-)

6. Создадим файл виртуалхоста

#ee /usr/local/etc/apache22/Includes/ocs.conf
<VirtualHost *:80>
ServerAdmin webmaster@domen.ru
DocumentRoot /usr/local/www/ocs/ocsreports
ServerName ocs.domen.ru
ServerAlias www.ocs.domen.ru
ErrorLog "|/usr/local/sbin/rotatelogs /var/log/httpd/http.ocs.domen.ru-error_log.%Y-%m-%d-%H_%M_%S 86400"
CustomLog "|/usr/local/sbin/rotatelogs /var/log/httpd/http.ocs.domen.ru-access_log.%Y-%m-%d-%H_%M_%S 86400" common

<Directory />
Order deny,allow
Allow from 192.168.0.0/16
Options Indexes FollowSymLinks
DirectoryIndex index.php
AllowOverride Options
php_flag file_uploads on

7. Подключимся к mysql и создадим пользователя с нужными правами

# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3495
Server version: 5.1.41 FreeBSD port: mysql-server-5.1.41

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> GRANT ALL PRIVILEGES ON ocsweb.* TO 'ocs'@'localhost' IDENTIFIED BY 'ocs';

8. Мы почти у цели, открываем наш любимый фаерфокс браузер и вводим

http: // ip_address/ocsreports
В строке «Nombre del servidor» вводим localhost

жмем «Отправить запрос»

Кликаем по ссылке

Выбираем флаг нашей Родины и вводим admin/admin

9. Проверяем работоспособность нашего OCSNG сервера

Для того чтобы к нам на сервер приходили отчеты о хардверной начинке компьютеров и установленном ПО необходимо установить агента на компьютеры нашей сети. Для этого вновь идем на ftp linvinus’а и качаем пропатченный агент.
На сервере выполняем комманду
tail -F /var/log/httpd/http.ocs.domen.ru-error_log.2010-09-14-00_00_00
и переходим к установке агента. В процессе установки нам будет предложенно указать сервер для сбора данных

не забудьте поставить галочку как на скриншоте, для того чтобы после установки агент послал информацию серверу
Если в логе мы видим ругань подобную этой
[Tue Sep 14 19:16:34 2010] [error] [client 192.168.254.2] Can't call method "rollback" on an undefined value at /usr/local/lib/perl5/site_perl/5.8.9/Apache/Ocsinventory/Server/System.pm line 265.\n
то необходимо проверить правильность установок подключения к mysql в файле
/usr/local/www/ocs/ocsreports/dbconfig.inc.php
и в
/usr/local/etc/apache22/Includes/z-ocsinventory-server.conf
Если все в порядке, то в веб интерфейсе OCS появится новая запись, примерно как на скриншоте =)

10. Последним штрихом будет развертка агента в сети средствами Active Directory.

В вики OCS есть скрипт который нуждается лишь в небольшом исправлении в соответствии с реалиями вашей сети.
@echo off

REM *********** Declare variables *********************************************
REM *********** Adjust to your situation **************************************
SET Version=4061.1
REM имя или IP сервера где установлен OCSNG
SET Server=ocs.domen.ru
REM путь к папке на расшареном ресурсе, который доступен всем компьютерам домена
SET SetupPath=\\dc\shareUstPril

REM *********** Install if agent isn't found **********************************
IF EXIST "%PROGRAMFILES%\OCS Inventory agent\OCSInventory.exe" GOTO update
:install
%SetupPath%\OcsAgentSetup.exe /S /SERVER:%Server% /NP /DEBUG
GOTO version

:update
REM *********** Update agent if %Version%.txt isn't found *********************
IF EXIST "%PROGRAMFILES%\OCS Inventory agent\%Version%.txt" GOTO end
:upgrade
%SetupPath%\OcsAgentSetup.exe /S /SERVER:%Server% /NP /UPGRADE /DEBUG

:version
cd /D "%PROGRAMFILES%\OCS Inventory agent\"
echo pwouet > %Version%.txt

:end
REM *********** Cleanup variables *********************************************
SET Version=
SET Server=
SET SetupPath=

Сохраняем как install_ocs_agent.bat и настраиваем GPO соответствующим образом.
На этом с OCS закончим. Стоит лишь отметить что данные от агентов приходят с рандомной задержкой, поэтому после окончания настройки пройдет достаточно много времени перед тем как вы получите данные от всех компьютеров.

Установка GLPI.
Версия GLPI: glpi-0.72.4_1

1. Установим GLPI из портов.

make -c /usr/ports/www/glpi install clean
После чего создаем алиас или виртуалхост(кому как нравится) в апаче. У меня это алиас
Alias /glpi "/usr/local/www/glpi"
<Directory "/usr/local/www/glpi">
Options Indexes FollowSymlinks MultiViews
AllowOverride None
Order allow,deny
Allow from 192.168.0.0/16

*Почему-то закрывающая «/Directory» не отобразилась, поэтому если копипастите будьте внимательны =)

2.Создадим пользователя в mysql с необходимыми правами

mysql> grant all privileges on glpi.* to 'glpi'@'localhost' identified by 'password_ololo';

3. Идем на http:// domen.ru/glpi и следуем по шагам мастера установки

3.Немного поправим исходники GLPI

Правим файл
/usr/local/www/glpi/inc/ocsng.class.php
Находим класс
class DBocs extends DBmysql
и меняем строку
$this->dbenc="latin1";
на
$this->dbenc="utf8";

4. Устанавливаем плагин для импорта из OCS

OCS Import

Плагин нужно распаковать в папку
/usr/local/www/glpi/plugins/

После чего перейти в веб интерфейсе GLPI
# Основная панель >
# Установки >
# Дополнения
Жмем «Установить», затем «Включить»

Далее отправляемся в
# Основная панель >
# Установки >
# Общие
# Ограничения
«Активировать режим OCSNG » — Да

теперь
# Основная панель >
# Установки >
# Режим OCSNG
Устанавливаем опции

# Основная панель >
# Инструментарий >
# OCSNG
# Импортирование новых компьютеров
Делаем импорт и вуаля =)

И в заключение экспорт в pdf на русском

1. Заменяем все вызовы utf8_decode на utf8_decode_cyr
#sed -e 's/utf8_decode/utf8_decode_cyr/g' /usr/local/www/glpi/inc/export.function.php > /usr/local/www/glpi/inc/export.function.php.new
#mv /usr/local/www/glpi/inc/export.function.php.new /usr/local/www/glpi/inc/export.function.php

2. Добавляем в /var/www/glpi/inc/export.function.php функцию
function utf8_decode_cyr($value){
return iconv("UTF-8","Windows-1251",$value);
}

3. Качаем набор шрифтов по cсылке

4. Складываем файлы из архива в /usr/local/www/glpi/lib/ezpdf/fonts/
Теперь pdf экспортируется как надо

Фуууухххх… управились!
Все, связка OCS + GLPI установлена и настроена.
Мне лишь осталось поблагодарить за помощь и поддержку камрада Pascal с форума системных администраторов UNIX и перечислить используемые источники информации =)

1. www.tux.in.ua/articles/1500
2. forums.ocsinventory-ng.org/viewtopic.php?id=4104

ps
У GLPI есть еще масса интересных функций, но в рамки данной заметки они ни как не попадают.
Если у кого то будут траблы с установкой — жду в каментах, чем смогу, как говорится.

Agent Version Compatibility Note
2 . X Does not work on Windows 9X, Windows Millennium Edition or Windows NT4. You need to use old 1.X agent 4061-1.
2 . 1 . 1 . 1 On Windows XP and 2003R2 you can only use this Windows agent version.
2 . 6 Agent is only installable on 64-bit machines.
2.6.0.1 Agent is only installable on 64-bit machines.
2.7.X.X and newer Agent is installable on 64-bit and 32-bit machines.

OCS Inventory NG Agent for Windows can run as a Windows service automatically at computer startup.

It can also work as a stand alone application which can be launched through a login script, an Active
Directory GPO, a scheduled task or a shortcut in the Start menu.

Note: We recommend using the service version of the Agent, especially if you plan to use the package
deployment feature.

Download and unzip the latest Windows agent from the Downloads section. This package contains 1 file:

  • OCS-NG-Windows-Agent-Setup.exe: installs the Windows Agent, either as a Windows Service or as a Standalone tool.

Which version: Service or Standalone ?

The Windows service version will automatically communicate with the OCS-NG system and perform inventories
and package deployment based on parameters set on the server. The standalone client is used for computers
that cannot communicate with the server, or where the service version is not wanted or allowed.

How does Windows Agent work ?

When the OCS Inventory NG Agent is launched, it queries the Communication server using the HTTP
or HTTPS protocol. The server can answer “nothing” (not time for an inventory and no package to deploy),
and the agent stops. Otherwise, the server may answer that Agent has to:

  • Send an inventory: the agent retrieves all computer properties and sends them using HTTP
    or HTTPS protocol to the server. The server ask this only if the last inventory date in the database
    is older than the general option “FREQUENCY”, specified in days (see
    Managing OCS Inventory NG general options.)
  • Discover the network: Agent scans his IP subnet for active devices listening on the network,
    then sends these data using HTTP or HTTPS protocol to the server. The server ask this only if the
    computer is elected to run IPDISCOVERY (see
    Using IP discovery feature.)
  • Deploy a package: Agent contacts the deployment server using the HTTPS protocol to get the information file (file INFO which describes the package), downloads package fragments from the deployment server, rebuilds the package and launches it.

Since OCS Inventory Agent 2.6, it’s possible to deploy package greater than 4GB (only on 64-bit versions).
However, the deployment of such package may cause latency in machines on which it’s deployed.

Note: The OCS Inventory NG Agent does not listen on the network. It only initiates communications to the server, so you do not have to open inbound port on a personal firewall. However, you must allow outbound connections from OCS Inventory NG agent files "OCSInventory.exe" and "Download.exe" to the Communication Server or Deployment Server using either HTTP or HTTPS.

Each time an inventory is done, the Agent uses and writes configuration files stored into folder
“%ProgramData%\OCS Inventory NG\Agent”. This directory is usually

  • C:\Documents and Settings\All Users\Application Data\OCS Inventory NG\Agent under Windows 2000, XP and 2003.
  • C:\ProgramData\OCS Inventory NG\Agent under Windows Vista, 2008, Seven and 2008 R2.

It uses at least the following files:

  • ocsinventory.ini: all configuration parameters for the agent (server address and credentials,
    proxy address and credentials, service properties…),
  • ocsinventory.dat: computer unique identity file, based on MAC address and hostname,
  • last_state: last inventory state, to detect changes between 2 inventory,
  • history: package deployment history,
  • All log files created by OCS Inventory NG Agent.

Note: YOU MUST STOP "OCS Inventory Service" to make changes on these files, because they are write protected while service is running. As is, only user having Administrator privileges can modify these files.

When launched for the first time, OCS Inventory NG agent will prompt user for the TAG value
(if this feature is enabled). Help text displayed in the dialog-box is the one you have entered
in Configuring management server. User may enter this value, or leave it blank (you will be able
to update this value through the Administration server).

Then (or otherwise if TAG feature is not enabled), it will do the inventory and send inventory
results to Communication server using HTTP or HTTPS.

Note: When the agent is first launched, it will only generate and send an inventory.

How does Windows service work?

Note: You must have Administrator privileges to set up OCS Inventory NG Agent as a service, or you may use OCS Inventory NG Packager to create an installer able to run even if user do not
have Administrator privileges. Refer to

Uploading Agent for deployment through launcher “OcsLogon.exe”
or OCS Inventory NG Packager documentation.

  • OCS Inventory NG Agent “OCSInventory.exe” is launched by service “OcsService.exe” every PROLOG_FREQ hours.
    It keeps trace of the countdown in seconds in file “ocsinventory.ini” (value TTO_WAIT), so it is the time
    of EFFECTIVE run.
  • The number of hours to wait is randomized at install time and each time PROLOG_FREQ is changed in
    Administration Console.
  • It allows not having all agents contacting Communication Server at the same time. The randomization
    is between 0 and PROLOG_FREQ (10 hours by default). You can adjust these parameters considering your
    server load using Administration Console.

When service launch agent, it call without parameter, so agent uses parameters specified in file “ocsinventory.ini”.

As you can see, Service is only a launcher which will run Agent regularly, even if nobody logs in the computer.

Do I have to use service or standalone agent ?

  • You want to have computers inventoried, even if nobody log in ? Use Service version.
  • You want to use package deployment feature ? Use service version. As is, package will be downloaded
    in background, and logged in user can continue to work.
  • You do not want to set service up or have anything appears in the registry ? Use standalone version.
    However, deployment of package may take a long time when users log in.

In other words, we recommend using service version.

Manually installing OCS Inventory NG Agent for Windows.

Run “OCS-NG-Windows-Agent-Setup.exe” on client computer..

..and click “Next” button

Start Installation

Validate license agreement by clicking “I agree” button.

Accept Licence

Select the installation type you want:

  • Network inventory: Computer can reach OCS Inventory NG Server through the network, and so,
    Agent will be launched using either a Windows Service, or a Logon/GPO script.
  • Local inventory: Computer is not connected to a network, or will never be able to reach
    OCS Inventory NG Server. You can generate an inventory of this computer and save to file to be imported
    later on server (see chapter Generating inventory of a non network connected Windows computer below).

Choose components

Fill in OCS Inventory NG Communication server URL, like
http://your_ocs_server_address:your_server_port/ocsinventory
. You can also specify https if your server is SSL enabled to secure communication.
If you’ve protected your Communication Server access with credentials, you must specify credentials
agent will use to authenticate (these credentials will be encrypted to be stored into configuration file).
If you’re aware of server certificate validation when using HTTPS protocol, either for sending inventory
or deploying package, you can disable it. However, this is a security flaw! We do not recommend disabling
certificate validation because Agent does not authenticate server
. With certificate validation enabled,
you must specify path to Certificate Authority root certificate (default uses
«%ProgramData%\OCS Inventory NG\Agent\cacert.pem»). Then click “Next” button.

Note: You can use self-signed certificate, but certificate CN must equal to server address used by agents
for communications. Also, if full path to certificate is not provided, agent will try to load the specified
file from its data folder "%ProgramData%\OCS Inventory NG\Agent".

Change properties

If needed, select proxy type to use to connect to Communication Server, proxy address and port, and
proxy credentials if required (these credentials will be encrypted to be stored into configuration file).
Agent support HTTP, SOCKS 4 and SOCKS 5 proxies.

Proxy Properties

By default, OCS Inventory Agent write only few information in log files. You may increase
this enabling “Verbose log”. You may also disable TAG question, or specify the TAG value. Last,
indicate which level of system integration you need:

  • Do not register service using LocalSystem account (i.e, use standalone agent, which must be launched manually or using login script).
  • Do not configure OCS Inventory NG Systray Applet to start automatically when user log in. This applet allows user to manually run agent, or to display inventory information. Disabling this option does not create shortcut link in «All users» startup menu.
  • Launch inventory just at the end of setup.

Windows Properties

By default, OCS Inventory agent use the WBEM_FLAG_RETURN_WBEM_COMPLETE flag WMI to retrieve its data. However in some cases, this can trigger additional queries to the domain controller.

With the 2.9.1.0 agent, there is the possibility to set the flag to two different mode :

  • WBEM_FLAG_RETURN_WBEM_COMPLETE
  • WBEM_FLAG_DIRECT_READ

The WBEM_FLAG_DIRECT_READ flag will only read WMI information present directly on the system and won’t trigger any query to the domain controller.

Please note the use of this flag will most likely result in information loss.

Possible agent configuration :

  • COMPLETE (default) : Allow full WMI query
  • READ : Read only WMI queries (might lead to inventory data loss)

The READ mode of the agent also comes with a DEFAULT_USER_DOMAIN configuration. Using the read flag will in most of the case make the agent unable to retrieve the current active directory domain user.

Setting DEFAULT_USER_DOMAIN will allow to set a default connected user.

Windows Properties

Choose destination folder, “C:\Program Files\OCS Inventory Agent” by default
(“C:\Program Files (x86)\OCS Inventory Agent” under Windows 64 bits), and click “Install” button.

Install Location

Click “Finish” button to close OCS inventory NG Agent Setup.

End of the installation

This is the interactive installation setup. However, this process requires that you launch it under
all your computers. Hopefully, this installation can be scripted.

OCS Inventory NG Agent for Windows Setup command line options

Service Agent setup «OCS-NG-Windows-Agent-Setup.exe» may be called with some command line parameters:

  • /S to run the installer in silent mode, no interaction with user
  • /NOSPLASH disable splash screen when installer starts
  • /NO_SERVICE to not register OCS Inventory NG Agent into Windows Service Manager. Agent can only be launched manually or through a script/GPO.
  • /NO_SYSTRAY to not create a shortcut into «All Users» startup folder to start systray applet when user log in.
  • /NOW to launch inventory just after setup
  • /NOSOFTWARE to ignore software installed
  • /D to install ocsinventory agent in an another directory (default %PROGRAMFILES%\ocs inventory agent)

Note: Please, don't use OCSPackager to upgrade OCS Inventory Windows Agent. Create deployement package with "OCS-NG-Windows-Agent-Setup.exe" on zip file and launch with command example : OCS-NG-Windows-Agent-Setup.exe /S /SERVER=ocs_server_address

Also, you can pass to the installer the following agent’s command line parameters
(see agent’s options below for more detail):

  • /SERVER=
  • /USER=
  • /PWD=
  • /SSL=
  • /CA=
  • /PROXY_TYPE=
  • /PROXY=
  • /PROXY_PORT=
  • /PROXY_USER=
  • /PROXY_PWD=
  • /DEBUG=
  • /NOTAG
  • /TAG=
  • /D=
  • /WMI_FLAG_MODE=
  • /DEFAULT_USER_DOMAIN=

Deploying or running Agent through Active Directory GPO

Note: We recommend using service version of Agent if you plan to use package deployment feature.

To deploy the agent using GPO we recommand you to create a standalone packager with all your configuration already provisionned. See using OCS Packager to create an all-in-one installer to setup agent and server certificate

After creating a packager, you will need to store it at a place where all your users have access to.

Then create a GPO that trigger on user login. You will have a create a script that call the packager executable and trigger the installation on the computer.

Here is a sample script:

@echo off

rem Script that call the packager executable on shared file system

rem Installing our packager
"myfileserver/my/path/packager.exe" 

PSEXEC from Microsoft (
https://technet.microsoft.com/fr-fr/sysinternals/psexec
) is a great and fast way to install the OCS agents on all Windows computers, you can literally setup most
of your computers in a few hours (assuming they are all connected to the network, that is).

Note: We've created a graphical tool for Windows, OCS Inventory NG Agent Deployment Tool, which allows
you to use PSEXEC more easily. It is able to push agent's installation on up to 10 computers simultaneously,
and also to copy the certificate used to authenticate deployment server in OCS Inventory NG data folder.

Some tips:

PSEXEC is best used together with Domain Logon scripts or Active Directory GPO:

  1. Use the PSEXEC to install on all computers that are currently connected to the network
    (best used during business hours).
  2. Then add a logon script/GPO as described above to install on computers that were offline the next time
    they connect to the network.
  3. If you really don’t want to use logon script/GPO, you can create and monitor a response file to get
    a list of computers that were not deployed for any reason, and then rerun PSEXEC just for these computers.

PSEXEC Usage examples:

We assume that the agent setup file is called agentsetup.exe and it was placed on a shared folder accessible to all users.

  • Install silently on all computers currently logged in your domain:

    psexec \\* -s \\Server\NetLogon\OCS-NG-Windows-Agent-Setup.exe /S /NOSPLASH /SERVER=http://my_ocs_server/ocsinventory
    
  • Install silently on a single computer:

    psexec \\COMPUTER_NAME -s \\Server\NetLogon\OCS-NG-Windows-Agent-Setup.exe /S /NOSPLASH /SERVER=http://my_ocs_server/ocsinventory
    
  • Install silently on all computers using the domain administrator credentials:

    psexec \\* -s -u Domain\Administrator -p Password \\Server\NetLogon\OCS-NG-Windows-Agent-Setup.exe /S /NOSPLASH /SERVER=http://my_ocs_server/ocsinventory
    
  • Install silently on specific computers (ALL.TXT is a text file that lists target computer names, one per line), using domain administrator credentials:

    psexec @ALL.TXT -s -u Domain\Administrator -p Password \\Server\NetLogon\OCS-NG-Windows-Agent-Setup.exe /S /NOSPLASH /SERVER=http://my_ocs_server/ocsinventory
    

Generating inventory of a non network connected Windows computer

Run “OCS-NG-Windows-Agent-Setup.exe” on client computer, from an USB stick for example…

..and click “Next” button.

Start Installation

Validate license agreement by clicking “I agree” button.

Accept Licence

Select Local inventory installation type.

Choose components

By default, OCS Inventory Agent writes only few lines in the log files. You may increase this enabling
“Verbose log”. You may also specify the TAG value. Last, indicate the folder where you want to store
generated inventory file, your usb stick for example:

Choose folder

In local inventory mode, Agent will be installed into a temporary folder
(we recommend not changing this folder, it will be automatically deleted at the end of process),
Click “Install” button to start process. Agent is installed into temporary folder, launched to generate
a «.ocs» inventory file stored in the folder you’ve specified, and then removed from computer.

Install location

Click “Finish” button to close OCS inventory NG Agent Setup.

End of the installation

This is the interactive process, but it can be scripted using /LOCAL=path_to_folder_where_to_store_ocs_file
command line switch.

For example, you can use OCS-NG-Windows-Agent-Setup.exe /S /LOCAL=C:\ to silently generate
«.ocs» inventory file into folder c:.

Once you’ve transfered generated inventory file, you will be able to import it into the inventory
database of OCS Inventory NG Server, through the Administration Console.

OCS Inventory NG Agent for Windows command line options

OCS Inventory NG Agent version 2.0 or higher includes some command line switches to allow detecting errors.

Once agent is installed, you can run it manually to diagnose problems. Use “C:\Program Files\OCS Inventory
Agent\OCSInventory.exe [options]” command line where [options] may be in the following command line switches.

Command Line Options Meaning
/work_dir=»path to directory» Agent must use «path to directory» as working dir (this directory may included configuration file). Default is «%ALLUSERSPROFILE%\Application Data\OCS Inventory NG\Agent» or «%PROGRAMDATA%\OCS Inventory NG\Agent»
/local[=»path to folder»] Agent do not contact communication server, and store inventory in xml compressed .ocs file into folder «path to folder». If no «path to folder» provided, agent assume folder as data folder
/debug[=level] Generate a very verbose log file «ocsinventory.log» into agent’s install folder.
0 => disable verbose logs (default)
1 => enable default verbose logs (default when no level provided provided)
2 => enable debuging logs
/notag Agent must NOT prompt user for TAG in any case
/tag=»my value» Agent must set «my value» as TAG value
/xml=[«path to folder»] Agent must store inventory in uncompressed xml format into folder «path to folder». If no «path to folder» provided, agent assume folder as data folder
/force Always send inventory, even if server do not ask for it (use only for debugging purpose !)
/ipdisc=»network number» Agent must launch IP discovery on network «network number» (use only for debugging purpose !)
/ipdisc_lat=»number of milliseconds» Set latency between 2 IP Discover requests to «number of milliseconds»
/fastip Never wait for latency between 2 IP Discover requests (use only for debugging purpose !)
/hkcu Search also for software under HKEY_CURRENT_USER registry hive (do not work with service as LocalSystem !)
/uid Agent must generate a new unique device ID
/server=http[s]://server.domain.tld[:port]/ocsinventory Agent try to connect to Communication Server address and port Listening on http[s]://server.domain.tld[:port]/ocsinventory
/ssl=0/1 When usng SSL connections:
0 => SSL without certificate validation
1 => SSL with server certificate validation required (needs CA certificate)
/ca=»path_to_cabundle.pem» Path to CA certificate chain file in PEM format, for server certificate validation
/user=username /pwd=password Communication Server authentication credentials
/proxy_type=0/1/2/3 Agent proxy
use 0 => no
1 => HTTP proxy
2 => Socks 4 proxy
3 => Socks 5 proxy
/proxy=proxy_address Proxy server address (without protocol !)
/proxy_port=port Proxy server port
/proxy_user=username Proxy authentication credentials
/proxy_pwd=password Proxy authentication credentials
/D=/ specify the directory where your want to install ocsinventory agent (default %PROGRAMFILES%\ocs inventory agent)
/wmi_flag_mode=[COMPLETE/READ] WMI flag mode used by the agent
/default_user_domain=default.user Read only WMI queries (might lead to inventory data loss)

Sample configuration file «ocsinventory.ini»

[OCS Inventory Agent]
; OCS Inventory NG Agent features
; Enable debugging mode (0 => disabled, 1 => enabled, 2=> trace all)
Debug=1
; Enable local inventory mode (path to folder to store .ocs file => enabled,
; empty => disabled)
Local=
; Enable agent scanning HKEY_CURRENT_USER hive for printers and sofware
; (0 => disabled, 1 => enabled)
HKCU=0
; Disable prompting user for TAG value (0 => prompt allowed, 1 => disabled)
NoTAG=0
; Force agent launching IpDiscover on specified network (network address => enabled,
; empty disabled)
IpDisc=
; Which communication provider to use
; Name of communication DLL and configuration section to use
; DLL must be in "com" sub directory
ComProvider=ComHTTP.dll
; Behavior of WMI calls
; COMPLETE => Allow WMI full WMI queries
; READ => Not allow
WMI_FLAG_MODE=COMPLETE
; Read only WMI queries (might lead to inventory data loss)
DEFAULT_USER_DOMAIN=

[HTTP]
; OCS Inventory NG Communication Server address and port
; Listening on http[s]://server[:port]/ocsinventory
Server=http://localhost/ocsinventory
; Using SSL connections (0 => SSL without certificate validation,
; 1 => SSL with server certificate validation required)
SSL=0
; Path to CA certificate chain file in PEM format, for server certificate
; validation
CaBundle=D:\Developp\OCS Inventory NG\cacert.pem
; Using authentication on Communication Server (0 => no, 1 => yes)
AuthRequired=0
; Communication Server authentication credentials (encrypted)
User=
Pwd=
; Using proxy (0 => no, 1 => HTTP proxy, 2 => Socks 4 proxy, 3 => Socks 5 proxy)
ProxyType=0
; Proxy address and port
Proxy=
ProxyPort=
; Using proxy authentication (0 => no, 1 => yes)
ProxyAuthRequired=
; Proxy authentication credentials (encrypted)
ProxyUser=
ProxyPwd=


[OCS Inventory Service]
; Time to wait in minutes before next agent start
TTO_WAIT=1020
; Number of hour between 2 agent runs
PROLOG_FREQ=5
; Old value of PROLOG_FREQ
OLD_PROLOG_FREQ=10

Uninstalling the agent

Starting the 2.10.0.0, the Windows agent add some housecleaning option on the uninstaller.

Note : The uninstaller is present in the installation directory of the agent (uninst.exe)

If you uninstall the agent manually, you’ll see a new window ask you if you desire to clean remaining agent files :

End of the installation

The agent provide three differents options in order to clean the configuration files and data files present on the %ProgramData% directory :
NONE (Doesn’t remove anything)
ONLY CONFIGURATION (Remove the ocsinventory.ini and the Download folder)
* ALL FILES (Completely remove the OCS Inventory NG folder in %ProgramData%)

Note : If you choose the last option and reinstall the agent later, it’ll most likely lead to a duplicate in the webconsole since the agent will have to regenerate a deviceid (ocsinventory.dat)

You can also run the uninstaller programmatically with the /CLEAN option.
It can be useful if you plan a mass uninstallation of the agent.

By default, if you run .\uninst.exe /S it won’t clean the files in the %ProgramData% directory.

In order to only clean the files (ONLY CONFIGURATION), you can use : .\uninst.exe /S /CLEAN=FILES

To clean everything in the %ProgramData% directory (ALL FILES) : .\uninst.exe /S /CLEAN=ALL

Using the portable agent

The portable agent can be used if you are looking for a way to run the agent as a one time thing, without any installation.

  • The «RunPortableAgent.bat» script needs to be modified : edit OCS_SERVER_URL and OCS_CLIENT_TAG if needed.

  • Execute this same script to launch an inventory. Once this is done, run the «CleanPortableAgent.bat» script to clear the system from any agent related files.

Command line options for the Windows agent are also available for the portable agent.

When using them, you won’t have to modify the script mentionned above, just navigate to the directory, edit the «ocsinventory.ini» file to configure the agent and launch «OCSInventory.exe» with any useful options.

Alternatively, you can provide configuration through the command line as well, and leave the .ini file as is.

С официально сайта
Документы » 05.Занятость »
Развертывание пакетов или выполнение команд на клиентских хостах
Развертывание пакетов или выполнение команд на клиентских хостах

OCS Inventory NG включает функцию развертывания пакетов для клиентских компьютеров. С центрального сервера управления вы можете загружать пакеты, которые будут загружаться через HTTP / HTTPS и выполняться агентом на клиентском компьютере.

Примечание. Эта функция была протестирована только с агентом OCS Inventory NG Agent для Windows.
Поскольку для установки программного обеспечения требуются права администратора, агент запускается через логин
Сценарий или ярлык в меню «Пуск» под учетной записью пользователя могут не запустить установку программного обеспечения.
Кроме того, фоновая загрузка пакета может занять много времени и может заблокировать сценарий входа.
Поэтому мы не рекомендуем использовать функцию развертывания пакетов при использовании инвентаризации сценариев входа.

Как это работает?
Пакет состоит из 4 основных компонентов:

  • Приоритет
    Действие
    Файл ZIP или TAR.GZ, включая сколько файлов и каталогов вы хотите
    Команда для запуска

Примечание: в случае, если действие установлено на «выполнить», вам не нужно загружать файл.

Существует 11 уровней приоритета , начиная с уровня 0 до 10. Уровень 0 — самый высокий приоритет, а уровень 10 — самый низкий. Пакет с уровнем приоритета 0 будет развернут перед пакетом с приоритетом 1. Пакет с уровнем приоритета 1 будет развернут перед пакетом с приоритетом 2…

Действие связано с файлом для развертывания и командой для запуска
. Это может быть одна из следующих трех команд:

Действие Запуск : развернуть файл ZIP или TAR.GZ и запустить с параметрами или без параметров исполняемый файл, включенный в файл ZIP или TAR.GZ. Файл ZIP или TAR.GZ будет распакован во временный каталог, и соответствующая команда (имя исполняемого файла без пути!) Будет запущена во этот временный каталог. Это действие позволяет получить код результата запущенной команды.

Действие Выполнить : чтобы дополнительно развернуть файл ZIP или TAR.GZ и запустить, с параметрами или без параметров, исполняемый файл, включенный или не включенный в необязательный файл ZIP или TAR.GZ. Если исполняемый файл не включен в файл ZIP или TAR.GZ, он должен быть уже установлен на клиентских компьютерах. Как правило, это может быть стандартная команда Windows, например, вызов установщика Windows (например, msiexec), RPM, DPKG или TAR.GZ в Linux. Файл ZIP или TAR.GZ будет распакован во временный каталог, и соответствующая команда (имя исполняемого файла с путем или параметрами, если необходимо) будет запущена во этот временный каталог. Это действие не позволяет получить код результата запущенной команды. Однако это действие позволяет запускать команду на клиентских компьютерах без развертывания какого-либо файла. Например, вы можете использовать его для запуска определенной команды конфигурации операционной системы.

Магазин действий : развернуть файл ZIP или TAR.GZ и хранить его содержимое только в папке на клиентских компьютерах. Нет команды, связанной с этим действием, только путь, чтобы указать, где хранить извлеченные файлы.

Примечание. Все пакеты, которые вы хотите развернуть, должны быть сжаты с помощью ZIP для агентов Windows и tar
GZIP для компьютеров Linux.

Если вы хотите создать свой собственный установщик, вы можете обратиться к Системе установщика NullSoft ( http://nsis.sourceforge.net ) или Inno Setup ( http://www.jrsoftware.org ). Эти инструменты являются установщиком GPL для Windows, способным создать один самораспаковывающийся установщик файлов.

Например, эта функция позволяет создавать ZIP-архив, включающий исполняемый файл Media Player Classic, подкаталог с некоторыми файлами MP3 и список воспроизведения для Media Player Classic, ссылаясь на эти MP3 в подкаталоге. Связанной командой будет вызов Media Player Classic с переключателем командной строки для запуска списка воспроизведения. Как только этот пакет будет загружен на клиентах Windows, пользователи запустят Media Player Classic и будут воспроизводить MP3 из списка воспроизведения. Красиво, не правда ли

Вы создаете свой пакет развертывания через консоль администрирования . Это автоматически описывается:

Ссылка в базе данных, используемая сервером связи, чтобы попросить агента загрузить пакет.
Информационный файл с именем «информация». Это XML-файл, описывающий пакет, и агент действия должен будет его запустить,
0 или более файлов фрагментов данных. Загружаемый файл (если он есть) будет разделен на небольшие части, чтобы агенты могли загружать их по частям, а затем легко возобновлять неудачную загрузку. Если загрузка фрагмента не удалась, снова будет загружен только этот фрагмент, а не весь пакет. Вы сможете выбрать размер фрагмента в соответствии с вашими сетевыми возможностями.

Примечание. По мере загрузки пакета через консоль администрирования вы можете настроить PHP
и Apache для загрузки больших файлов. См. § 11.2.4 Размер загрузок для развертывания пакета, чтобы знать
как настроить это.

Как только ваш пакет собран, вы должны активировать его . Активация указывает, с какого сервера (ов) будут загружены фрагменты пакета. Вам нужно указать https (ssl) URL для загрузки файла INFO и HTTP URL для загрузки фрагментов.

Наконец, вы должны выбрать, на каких компьютерах вы будете развертывать пакет.

Когда агент отправляет инвентаризацию на коммуникационный сервер, коммуникационный сервер сообщает агенту, должен ли он развернуть один или несколько пакетов, с указанием уровня приоритета каждого пакета и где он может найти информационные файлы.

Затем агент начинает период загрузки. Период состоит из циклов, определенных параметром конфигурации «DOWNLOAD_PERIOD_LENGTH». По умолчанию период содержит 10 циклов.

В каждом цикле агент вычисляет «номер цикла по модулю приоритета пакета». Если он равен 0, он загружает файл фрагмента вашего пакета. Агент загружает ТОЛЬКО ОДИН фрагмент одного пакета за цикл. Агент будет загружать другие фрагменты вашего пакета каждый раз, когда результат вычисления «номер цикла по модулю приоритета пакета» будет равен 0.

После каждого фрагмента агент будет ждать «DOWNLOAD_FRAG_LATENCY» (по умолчанию для параметра конфигурации установлено значение 10 секунд).

Когда все фрагменты цикла загружены, агент будет ждать «DOWNLOAD_CYCLE_LATENCY» (по умолчанию для параметра конфигурации задано значение 60 секунд), прежде чем начинать новый цикл и увеличивать номер цикла.

Например, если вы развертываете один пакет с приоритетом 5, агент приостанавливает действие «DOWNLOAD_CYCLE_LATENCY» для циклов 1–4, а затем начинает загрузку фрагмента вашего пакета, когда он начинает цикл 5.

Когда все фрагменты пакета будут загружены, агент запустит команду пакета в следующий раз, когда вычисление «номер цикла по модулю приоритета пакета» будет равно 0.

Когда все циклы периода обработаны, он ожидает «DOWNLOAD_PERIOD_LATENCY» (по умолчанию для параметра конфигурации установлено значение 0 секунд).

Если все пакеты были успешно загружены и установлены, он останавливается. Если нет, то начинается новый период циклов.

Предупреждение: уровень приоритета 0 — это особый уровень. Все пакеты с приоритетом 0 будут загружены
перед всеми другими пакетами с более высоким приоритетом в начале каждого цикла. Если загрузка не удалась,
Агент попытается загрузить ошибочные пакеты с приоритетом 0, не проверяя другие пакеты.
Так что это может полностью остановить развертывания.

ИСПОЛЬЗУЙТЕ ПРИОРИТЕТНЫЙ УРОВЕНЬ 0 С УХОДОМ!

Вы можете использовать эти настройки, чтобы настроить пропускную способность сети. Увеличивая параметры задержки, вы увеличите время загрузки фрагментов и сократите среднее использование сети.

Увеличив параметр длины периода, вы задержите новую загрузку фрагментов, потерявших значение, но также, уменьшив длину периода до значения ниже 10, вы можете остановить загрузку пакета с уровнем приоритета выше этого значения.

Влиять на пакеты с правами пользователя
Пользователь не может создавать пакеты самостоятельно. Им нужно использовать статическую группу (и видимую), созданную пользователями-администраторами.

Администратор создает статическую группу и устанавливает флажок «Видимый».
Администратор влияет на некоторые пакеты в этой статической группе (например, Firefox)
Пользователь может поместить свои машины в созданную группу
Упрощенная схема

OCS Развертывание упрощенная схема

Подробная схема

OCS Развертывание подробная схема

Требования
Сервер развертывания, на котором хранятся информационные файлы, должен иметь включенный SSL , поскольку загрузка файла с информацией о развертывании очень важна. Этот информационный файл содержит описание пакета и команду для запуска. Таким образом, если кто-то может узурпировать ваш сервер развертывания, он может запустить любую команду, какую захочет, на ваших компьютерах. Вот почему сервер развертывания должен использовать SSL, чтобы агенты могли аутентифицировать сервер и убедиться, что это настоящий сервер развертывания.

Агент должен иметь сертификат для проверки подлинности сервера развертывания. Этот сертификат должен храниться в файле с именем cacert.pem в папке агента OCS Inventory NG в Windows и в каталоге /etc/ocsinventory-client в Linux.

В Windows вы можете использовать OCS Inventory NG Packager (см. «Загрузка агента для развертывания через модуль запуска OcsLogon.exe.») Для создания установщика агента, который включает сертификат, или вы можете использовать следующий пример сценария входа в систему для копирования файла сертификата в папку агента (мы Предположим, что агент установлен в C:\Program Files\OCS Inventory Agent, а файл сертификата доступен в общей папке MYSHARE на сервере MYSERVER ).

@echo off
REM Check if CA file exists
if exist “%PROGRAMDATA%\OCS Inventory NG\Agent\cacert.pem” goto CA_END
REM CA file does not exists, install it
Copy \\MYSERVER\MYSHARE\cacert.pem “%PROGRAMDATA%\OCS Inventory NG\Agent\cacert.pem”
:CA_END

Если у вас есть инфраструктура открытых ключей , вы должны создать действительный сертификат сервера для сервера развертывания и скопировать файл сертификата авторизации в файл cacert.pem .

Если у вас нет инфраструктуры открытых ключей , вы можете использовать самозаверяющий сертификат для сервера развертывания и скопировать сертификат сервера в файл cacert.pem .

Обратитесь к § 8.8 Использование SSL-сертификатов в развертывании пакета для получения дополнительной информации.

Создание / сборка пакета

Предупреждение: Вы можете загружать ТОЛЬКО файлы .zip или .tar.gz.

Прежде всего, вы должны собрать свой пакет.

Наведите указатель мыши на меню « Развертывание» и выберите « Собрать» .

OCS Собрать — OCS Собрать.jpg (9.18 КБ) 8062 просмотра

Введите имя для вашей посылки.

Выберите операционную систему для этого пакета. Вы можете выбирать между Windows и Linux.

Выберите протокол загрузки для этого пакета. В настоящее время доступен только протокол HTTP.

Выберите приоритет для этого пакета. Пакет с меньшим приоритетом будет загружен перед пакетом с более высоким приоритетом, кроме случаев, когда загрузка не удалась (см. § 8.7 Статистика развертывания и проверка успешности.).

Вы можете предупредить пользователя о том, что что-то запускается на его компьютере. Установите для раскрывающегося списка Предупредить пользователя значение ДА , заполните текст, который будет отображаться для пользователя, как долго отображать его перед автоматическим запуском установки (установите 0, чтобы ждать неопределенно долго), и если пользователь может отменить развертывание или отложить его до следующей инвентаризации ,

Вы также можете указать, требуется ли для развертывания пакета взаимодействие с пользователем, установив раскрывающийся список. Для завершения установки необходимо действие пользователя на ДА , например, если для установки необходимо, чтобы пользователь завершил ввод информации в диалоговом окне. Обратите внимание, что это уведомление будет препятствовать тому, чтобы агент OCS сообщал серверу код завершения развертывания, пока пользователь не нажмет OK. Это также заблокирует все другие установки пакетов, которые могут быть ожидающими.

Примечание. Вы можете использовать HTML-теги (например, «<br/>», «<b> </ b>») для форматирования текста, который вы показываете своим пользователям.

Наконец, вы можете выбрать свое действие в раскрывающемся списке действий . Вот несколько примеров, описывающих, какой пакет вы можете собрать.

OCS Изготовитель пакетов

Развертывание пакета с помощью команды «Запуск»
Пакет, который вы хотите развернуть, содержит один или несколько файлов, по крайней мере, исполняемый файл для запуска установки пакета.

Сожмите файлы с помощью инструмента ZIP, если ваш пакет адресован компьютерам с Windows, или tar и gzip, если он относится к компьютерам с Linux.

Выберите действие Launch и нажмите кнопку Browse , чтобы выбрать файл ZIP или TAR.GZ.

В поле Command просто введите имя исполняемого файла без пути, но, при необходимости, с параметрами. Именно эта команда будет запущена на клиентских компьютерах после того, как пакет будет загружен и распакован во временный каталог.

В следующем примере мы развертываем новую версию агента OCS Inventory NG для Windows, используя автоматическую установку с файлом .bat:

OCS Сбор пакета

Нажмите кнопку [Отправить] , чтобы загрузить пакет в консоль администрирования.

Развертывание пакета с помощью команды «Выполнить»
Вы хотите выполнить программу, которая уже находится на целевых компьютерах.

Пакет, который вы хотите развернуть, имеет дополнительно один или несколько файлов, а также, при желании, исполняемый файл для запуска установки пакета.

Сожмите файлы с помощью инструмента ZIP, если ваш пакет адресован компьютерам с Windows, или tar и gzip, если он относится к компьютерам с Linux.

Выберите действие « Выполнить» и нажмите кнопку « Обзор» , чтобы выбрать файл ZIP или TAR.GZ, или оставьте поле « Файл» пустым, если вы просто хотите выполнить команду на целевых компьютерах.

В поле Command просто введите путь к исполняемому файлу для запуска с параметрами (полный путь не требуется, поскольку исполняемый файл приложения указан в системном пути поиска или включен в пакет). Именно эта команда будет запущена на клиентском компьютере после загрузки пакета.

Примечание: переменные окружения раскрываются в «Команде». Это позволяет вам использовать такие вещи
как% SystemDrive%,% SystemRoot%,% windir%,% ProgramFiles%,% CommonProgramFiles% … и т. д.

В следующем примере мы развертываем программное обеспечение, используя установку Windows без вывода сообщений. Наш ZIP-файл содержит только файл «software.msi», а поле «Command» содержит:
msiexec.exe /i software.msi /quiet

OCS Сбор пакета2

Нажмите кнопку [Отправить] , чтобы загрузить пакет в консоль администрирования.

Сохраняйте файлы с помощью команды «Store»
Пакет, который вы хотите развернуть, содержит один или несколько файлов, которые должны храниться в определенной папке на клиентских компьютерах.

Сожмите файлы с помощью инструмента ZIP, если ваш пакет адресован компьютерам с Windows, или tar и gzip, если он относится к компьютерам с Linux.

Выберите действие Store и нажмите кнопку « Обзор» , чтобы выбрать файл ZIP или TAR.GZ.

В поле Path просто введите путь, где агент будет хранить извлеченные файлы после загрузки пакета.

Примечание: переменные окружения раскрываются в «Команде». Это позволяет вам использовать такие вещи, как
% SystemDrive%,% SystemRoot%,% windir%,% ProgramFiles%,% CommonProgramFiles% … и т. Д.

Если указанный путь к папке не существует, он будет рекурсивно создан.

В следующем примере мы развертываем файл для хранения в папке «C: \ My Folder»:

OCS Сбор пакета3

Нажмите кнопку [Отправить] , чтобы загрузить пакет в консоль администрирования.

Разделение вашего пакета на фрагменты
Затем вы должны указать размер фрагментов вашего пакета, чтобы позволить агентам загружать ваш пакет небольшими частями. Это позволит возобновить загрузку (т. Е. Если загрузка фрагмента не удалась, в этот раз будет загружен только этот фрагмент, а не весь пакет). Выберите размер фрагмента в соответствии с вашими сетевыми возможностями.

OCS Разделение вашего пакета на фрагменты

Консоль администрирования затем разделит ваш пакет на фрагменты и сохранит их в папке с именем метки времени пакета в каталоге загрузки вашего веб-сервера apache. Он также создаст в том же каталоге файл информации о пакете с именем info , XML-файл, описывающий пакет и агент действия, должен быть запущен.

OCS Загруженный пакет

Примечание. Если вы создали пакет без какого-либо файла ZIP или TAR.GZ (т. Е. С помощью команды «Выполнить»),
Консоль администрирования создает файл информации о пакете ** info ** только в папке пакета.

OCS Загруженный пакет2

Редактирование пакета
После создания пакетов их всегда можно редактировать.

OCS Активировать пакет — OCS Активировать пакет.jpg (9.72 КБ) 8058 просмотров

Наведите указатель мыши на меню «Развертывание» и выберите «Активировать». Здесь вы увидите все активированные пакеты.

OCS Активация пакетов

Нажмите кнопку «Редактировать» в строке, соответствующей пакету, который вы хотите редактировать.

OCS Редактирование пакетов

Вы можете редактировать всю информацию о вашем пакете, и вы можете скачать новый файл .zip. Нажмите на кнопку «Обновить», когда вы закончите редактирование.

Если вы скачали новый файл .zip, вы должны указать размер фрагментов пакета. Если нет, размер фрагментов остается прежним.

Активация пакета
После создания пакета вы должны указать, где агенты могут его скачать.

Агенты сначала загрузят файл информации о пакете. Поскольку этот файл очень важен, эта загрузка должна выполняться с использованием HTTP через SSL (HTTPS), чтобы агенты могли аутентифицировать сервер развертывания. Далее загрузка фрагментов пакета, описанных в информационном файле, будет осуществляться с использованием стандартного HTTP.

Примечание. Если вы не хотите использовать Сервер администрирования в качестве сервера развертывания, сначала необходимо скопировать папку
«Загрузить / package_timestamp» с корневого каталога документов Apache сервера администрирования в другой веб
сервер. Вы можете использовать утилиту синхронизации каталогов, такую ​​как rsync (http://samba.anu.edu.au/rsync), чтобы автоматически выполнить эту задачу; в противном случае нам придется делать это вручную.

Вы также можете разместить файл информации на другом веб-сервере, чем тот, на котором размещены файлы фрагментов. Например, если у вас есть несколько географических сайтов только с одним центральным коммуникационным сервером, вы можете разместить информационные файлы на коммуникационном сервере и фрагментировать файлы на веб-сервере на каждом сайте. Для этого вам необходимо активировать пакет для каждого сайта, и для каждого пакета информационный файл будет размещен на Коммуникационном сервере, а фрагментированные файлы — на веб-сервере сайта. Это значительно уменьшит использование пропускной способности межсайтовой сети.

OCS Активировать пакет — OCS Активировать пакет.jpg (9.72 КБ) 8058 просмотров

Наведите указатель мыши на меню «Развертывание» и выберите «Активировать». Здесь вы увидите весь собранный пакет, а также ВСЕ активированный пакет.

Вы можете нажать на красный крестик, чтобы удалить встроенный пакет. Это приведет к удалению ссылки на пакет из базы данных, а также к удалению файла с информацией и фрагментов из каталога загрузки Консоли администрирования. Таким образом, удаленный пакет будет недоступен для активации, все активированные пакеты, использующие этот пакет, будут удалены, а также не затронуты с компьютеров.

OCS Активация пакетов 2

Нажмите кнопку «Актив» в строке, соответствующей пакету, который вы хотите активировать.

В поле «URL-адрес HTTPS» введите URL-адрес для загрузки в информационном файле пакета HTTPS.

В поле «HTTP url» введите URL для загрузки в файлах фрагментов пакета HTTP.

Предупреждение: не вводите localhost как адрес сервера в URL! Помните, что эти URL будут обработаны
агентами.

Если ваш сервер развертывания HTTPS или HTTP работает на нестандартных портах, вы можете указать рабочий порт, используя стандартную запись «server_address: server_port / folder». Например, ваш сервер развертывания работает через порт HTTP 8080 и HTTPS 4343 на сервере 192.168.1.1, а пакеты находятся в каталоге / download. Вы должны заполнить:

URL-адрес https: 192.168.1.1:4343/download

http url: 192.168.1.1:8080/download

В нашем случае мы выбрали сервер администрирования в качестве сервера развертывания как для файла информации о пакете, так и для фрагментов пакета.

Итак, мы заполнили оба поля так: «ocs-admin-srv.domain.tld / download».

deploying_packages_activateman

Нажмите кнопку отправить. Консоль администрирования обеспечит доступность файлов информации и файлов фрагментов по указанным URL-адресам.

Колонка «Не уведомлено» показывает количество компьютеров, которые еще не были уведомлены, у них есть соответствующий пакет для развертывания.

Колонка «Успех» показывает количество компьютеров, на которых успешно развернут соответствующий пакет.

Столбец «Ошибки» показывает количество компьютеров, на которых возникли ошибки при развертывании соответствующего пакета.

Значок «Статистика» позволяет просматривать процентили компьютеров, ожидающих уведомления, уведомленных (сервер просит их развернуть пакет) и завершивших развертывание с кодом результата (SUCCESS или ERROR).

Влияние пакетов на компьютеры
Вы можете воздействовать на пакет на компьютер один за другим, отображая свойства компьютера, выбирая значок настройки и добавляя пакет. Тем не менее, это не лучший способ, если вы хотите повлиять на пакет для многих компьютеров.

Лучший способ — использовать Поиск с различными функциями creteria для поиска компьютеров, которые вы хотите, и одновременно влиять на пакет для всех этих компьютеров.

В следующем примере мы затронем созданный нами пакет для всех компьютеров Windows.

Итак, во-первых, мы ищем компьютеры с Windows XP.

deploying_packages_17

Этот поиск возвращает компьютеры, которые отвечают на запрос.

deploying_packages_18

Доступны две возможности:

Установите флажок на компьютерах, на которых вы хотите развернуть пакет
Ничего не выбирайте и нажимайте непосредственно на Deploy

deploying_packages_19

Нажмите на значок Affect строки пакета, чтобы отразить этот пакет на всех выбранных компьютерах.

Агенты на компьютерах будут уведомлены при следующем контакте Communication Server, у которого есть этот пакет для развертывания. Таким образом, пока агент не связывается с коммуникационным сервером, в консоли появится компьютер со статусом ОЖИДАНИЕ ОЖИДАНИЯ . После того, как агент связался Коммуникационный сервер, статус будет СООБЩЕН .

Деактивация пакетов
Для удаления пакета активации выполните следующие действия:
1 Наведите указатель мыши на меню « Развертывание» и выберите « Активировать» .
2 Появится список доступных (еще не активированных) и включенных (активированных и готовых к развертыванию) пакетов.
Примечание. Если пакет активирован, его имя содержит гиперссылку.
3 Нажмите на ссылку пакета, для которого вы хотите удалить активацию.
4 Появится новое окно со спецификацией пакета.
5 Значок красного креста в столбце Удалить удалит активацию пакета.

Примечание. Удаление активации пакета не влияет ни на один компьютер, на котором пакет уже был
установлены. Кроме того, на пакет все еще ссылаются в базе данных, поэтому вся информация и фрагмент
файлы по-прежнему доступны в каталоге загрузки Сервера администрирования. Тем не менее, он имеет то же самое
статус, как будто вы только что построили его.

Статистика развертывания и проверка успешности
Поскольку пакет мог быть активирован, а затем не активирован, статика развертывания находится в меню Активировать .

Вы можете отобразить статистику развертывания, щелкнув значок « Статистика» для пакета.

Поскольку вы применили пакет как минимум к одному компьютеру, у вас будет графическая статистика, показывающая состояние уведомления о развертывании.

deploying_packages_20

Статус может быть один из следующих:
Код состояния Смысл
ОЖИДАНИЕ УВЕДОМЛЕНИЯ Сервер ожидает связи агента, чтобы уведомить, что есть что-то для загрузки.
NOTIFIED СООБЩЕНЫ Агент был уведомлен, что есть что скачать. Теперь сервер ожидает код результата.
SUCCESS УСПЕХ Агент успешно загрузил пакет и команду запуска или сохранил извлеченные данные. С помощью действия «Запуск» это состояние может быть дополнено кодом возврата выполнения команды. (код возврата 0).
ERR_EXIT_CODE_xxx Агент успешно загрузил пакет, НО команду выполнения или хранилище данных, связанное с ошибкой (код возврата xxx).
ERR_ALREADY_SETUP Пакет ранее был успешно установлен на этом компьютере.
ERR_BAD_ID Агент не может загрузить пакет, поскольку он не может найти идентификатор пакета на сервере развертывания.
ERR_BAD_DIGEST Загруженные данные имеют плохой дайджест, поэтому агент не выполняет связанную команду.
ERR_DOWNLOAD_INFO Агент не смог загрузить файл INFO, связанный с пакетом.
ERR_DOWNLOAD_PACK Агент не смог загрузить файл ZIP или TAR.GZ.
ERR_BUILD Агент не смог перестроить фрагменты пакета.
ERR_UNZIP Агент не смог распаковать загруженный файл ZIP или TAR.GZ.
ERR_OUT_OF_SPACE На диске недостаточно места для распаковки и запуска пакета ZIP или TAR.GZ.
ERR_BAD_PARAM Неверный параметр файла INFO пакета.
ERR_EXECUTE_PACK Любая команда выполнения указана в INFO-файле пакета.
ERR_EXECUTE Агент не смог выполнить связанную команду пакета.
ERR_CLEAN Агент не смог очистить загруженный пакет.
ERR_DONE_FAILED Агент не может получить результат выполнения в кеше пакета (кеш используется для хранения результата, если сервер не отвечает в конце выполнения пакета).
ERR_TIMEOUT Агент не смог загрузить пакет в течение дней DOWNLOAD_TIMEOUT.
ERR_ABORTED Пользователь отменил выполнение команды пакета (вы решили уведомить его, и позволили ему отменить).

«Подтверждение успеха» очистит статистику компьютеров, которые успешно развернули пакет.

«Unaffect not Уведомление» не повлияет на пакет с компьютеров, которые не связались с сервером, так как вы повлияли на пакет для компьютеров. Пакет не будет удален, только на компьютерах, которые еще не получили заказ на развертывание этого пакета, этот заказ будет отменен.

«Validate all» очистит всю статистику и не повлияет на пакет с незарегистрированных компьютеров. Это то же самое, что Validate Success + Unaffect без уведомления .

Предупреждение: вы ДОЛЖНЫ проверить состояние развертывания после завершения развертывания, чтобы очистить развертывание базы данных.
статус для компьютера. В противном случае база данных будет расти и ускоряться!

Вы можете нажать на номер для каждой строки состояния, чтобы отобразить компьютеры с таким состоянием развертывания.

How to Install OCS Inventory NG on Windows 10

OCS Inventory NG is an open-source computer inventory and asset management system that helps system administrators to track, report, and manage IT resources. In this tutorial, we will go through the step-by-step process of how to install OCS Inventory NG on Windows 10.

Prerequisites

Before beginning the installation, ensure that you have the following prerequisites:

  • Windows 10 Operating System
  • Web server (such as Apache or IIS)
  • PHP (version 5.6.40 or higher)
  • MySQL/MariaDB (version 5.5 or higher)

Step 1: Download OCS Inventory NG

Firstly, visit the official OCS Inventory NG website at https://ocsinventory-ng.org/en/download/ to download the latest version of the software.

Once downloaded, extract the ZIP file to a directory of your choice.

Step 2: Install and Configure Apache

OCS Inventory NG requires a webserver to function. You can use either Apache or IIS. In this tutorial, we will use Apache.

  • Download the latest version of the Apache HTTP Server from https://httpd.apache.org/download.cgi
  • Run the installer and choose the components you want to install. For example, the ‘Apache Web Server’ and ‘PHP’. (If you have already installed PHP and Apache, skip this step.)
  • Follow the instructions on the screen to complete the installation.

Once the installation is complete, you need to configure Apache to run as a service.

  • Open a command prompt as Administrator.
  • Change the directory to Apache’s “bin” folder. For example, cd C:\Program Files (x86)\Apache24\bin
  • Enter the following command to install the Apache service: httpd -k install -n "Apache24"
  • Open the config file C:\Program Files (x86)\Apache24\conf\httpd.conf, uncomment the line LoadModule ssl_module modules/mod_ssl.so to enable SSL support, and save the file.
  • Restart the Apache service by running the command httpd -k restart in the command prompt.

Step 3: Install MySQL/MariaDB

  • Download the latest version of MySQL or MariaDB.
  • Run the installer and choose the components you want to install.
  • Follow the instructions on the screen to complete the installation.

Step 4: Install PHP

  • Download the latest version of PHP from https://windows.php.net/download/

  • Extract the ZIP file to a directory of your choice.

  • Copy the php.ini-development file to php.ini.

  • Open the php.ini file in a text editor and make the following changes:

    • Set error_reporting to E_ALL.
    • Set extension_dir to the path of the PHP extensions directory. For example, extension_dir = "C:\php\ext".
    • Uncomment and set date.timezone to your local timezone. For example, date.timezone = America/New_York.
    • Save the file.
  • Restart the Apache service by running the command httpd -k restart in the command prompt.

Step 5: Create a MySQL/MariaDB Database

  • Open your MySQL/MariaDB database management tool.
  • Create a new database for OCS Inventory NG. For example, ocsdb.
  • Create a new user account for OCS Inventory NG. For example, ocsuser.
  • Assign the user account full privileges on the ocsdb database.

Step 6: Configure OCS Inventory NG

  • Navigate to the directory where you extracted OCS Inventory NG.

  • Edit the ocsinventory-server.conf file in a text editor.

  • Set the following parameters:

    • dbuser — Set to the username of the MySQL/MariaDB database user account you created.
    • dbpass — Set to the password of the MySQL/MariaDB database user account you created.
    • dbhost — Set to the hostname of the MySQL/MariaDB database server. For example, localhost.
    • dbname — Set to the name of the MySQL/MariaDB database you created for OCS Inventory NG. For example, ocsdb.
  • Save the ocsinventory-server.conf file.

Step 7: Install OCS Inventory NG

  • Run the executable file setup.exe in the directory where you extracted OCS Inventory NG.
  • Follow the instructions on the screen to complete the installation.
  • Open a web browser and navigate to http://localhost/ocsreports/.
  • Log in to the OCS Inventory NG web interface with the default credentials (admin and admin).
  • Change the default admin password for security reasons.

Congratulations! You have successfully installed OCS Inventory NG on Windows 10. You can continue to configure and customize OCS Inventory NG according to your requirements.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!

In the previous tutorial, We successfully installed an OCS Inventory Server, you can now add agents for managing clients.
And this tutorial, We will learn How to Install OCS Inventory Agent on Windows.

Prerequisites:

  • OCS Inventory Server installed on another server
  • Windows client:
    • Windows 11/10/8/7
    • Windows Server 2022/2019/2016/2012
  • For this tutorial:
    • OCS Inventory Server:
      • IP address: 192.168.1.10
    • Windows Client
      • Windows 11 64-bit
      • Hostname: WIN11-1
      • IP address: 192.168.1.25

Read more:

  • How to Install and Configure OCS Inventory Server on Ubuntu

Step 1 – Download OCS Inventory Agent for Windows

Go to the official website of the OCS Inventory to download OCS Inventory Agent: Download OCS Inventory Agent

Access the official website

Click on the OCS Inventory Windows Agent button and enter Your-info, Email on the pop-up page, then click Send button

Enter Your-info

Now, log in to your email and download OCS Agent for your Windows version ( 32-bit or 64-bit)

Download Agent

Once you are downloaded, extract the file and right-click on the OCS-Windows-Agent-Setup-x64 icon – select Run as administrator:

 Right-Click and Run as Administrator

Click Yes to allow apps run on your system:

Select Yes

In the window Welcome to OCS Inventory NG Agent Setup click Next

Welcome to OCS Inventory NG Agent

In the window License Agreement click I Agree to accept the terms of the agreement

License Agreement

In the window Choose Components keep default and click Next

Choose Componenets

In the window Proxy Server properties click Next

Proxy Server properties

IMPORTANT: In the window OCS Inventory Server properties , You need to input the correct URL of the OCS Inventory Server ( Replace 192.168.1.10 = Your IP Server) and click Next

OCS Inventory Server properties

In the window OCS Inventory Agent for Windows properties choose the following:

  • Section General options… check select Enable verbose log
  • Section Setup options…select Immdediately launch inventory (=/NOW)

and click Next

OCS Inventory Agent for Windows properties

In the window OCS Inventory NG Agent for Windows properties keep default and click Next

OCS Inventory NG Agent for Windows properties

In the window Choose Install Location keep default and click Next

Choose Install Location

When done with the installation click Finish

Completing OCS Inventory NG Agent Setup

Now, Log in to OCS Inventory Server to verify that the assets have been inventoried.

Login OCS Inventory Server

Click on the All Computers tab to see a list of your assets.

Login OCS Inventory

Click on your Computer Name to show full info on the assets

Info Client

That’s it. You successfully installed OCS Inventory Agent on Windows!

Thank you for reading !!!

Video

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Чем открыть бэкап windows
  • Windows movie maker 2000
  • Dolby access windows 10 активатор
  • Журнал перезагрузок windows server
  • Глючит компьютер что делать windows 10