Snow inventory agent что это

Инвентаризация компьютеров в сети не вставая со стула или OCS Inventory + GLPI

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

Как видно из заголовка, речь пойдет о двух программах:
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, где были бы решены все вопросы с локализацией. Поэтому я изложу компиляцию найденых решений и собственных доработок.

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

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

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

2. Распаковывыем архив в папку на сервере(у меня это /usr/local/www/ocs/).
3. Создадим директорию для logrotate
4. Изменяем владельца папки
5. Далее переходим в папку и запускаем setup.sh

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

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

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

OK, Make utility found at 😉

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 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 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.

Writing Makefile for Apache::Ocsinventory

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 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

Enjoy OCS Inventory NG 😉

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

#ee /usr/local/etc/apache22/Includes/ocs.conf

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

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 и создадим пользователя с нужными правами

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 сервера

не забудьте поставить галочку как на скриншоте, для того чтобы после установки агент послал информацию серверу
Если в логе мы видим ругань подобную этой
[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 из портов.

*Почему-то закрывающая «/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

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

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

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

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

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

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

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 и перечислить используемые источники информации =)

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

Источник

Конкурс хаков: как поставить и настроить Inventory NG

Содержание статьи

Поздравляем участника конкурса

Этот текст был прислан на конкурс авторов, который мы запустили весной. Мы разобрались с большим количеством пришедших материалов, подвели итоги и наградили победителей. Автор этой заметки получил приз — трехмесячную подписку на «Хакер». Поздравляем!

Этот продукт поддерживает все популярные ОС: Windows, Linux, BSD, Sun Solaris, IBM AIX, HP-UX, macOS, Android.

Устанавливать будем с официального сайта, так как в репозиториях Debian старые версии.

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

Ссылки на исходники

Устанавливать OCS Inventory NG будем в связке с Apache 2 и MariaDB.

Подготовка

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

Подключаем репозиторий. Открываем список зеркал и добавляем репозиторий DotDeb.

Импортируем ключ DotDeb’а:

Обновляем список зеркал и пакеты:

Установим необходимые пакеты:

Во время установки задаем пароль для пользователя root MySQL.

Ставим модули Perl:

После этого устанавливаем MariaDB и создаем пользователя ocs и БД ocsweb.

Установка и настройка

Скачиваем OCS-NG Server:

Запускаем скрипт установки (все настройки оставляем по умолчанию):

Включаем конфиги

Отключим дефолтные и включим новые. Далее сделаем рестарт демона apache2.

Предоставляем пользователю www-data права на директории:

Дополнительно можно отключить AccessLog в Apache 2:

Комментируем эту строчку:

Убрать версию Apache 2:

Убрать версию PHP 7.0:

И снова рестартуем Apache.

Установка агента в Windows 10

Скачиваем последний установщик и запускаем. От типа установки зависит, как будет производиться инвентаризация. Есть два варианта:

Настройку параметров прокси оставляем как есть.

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

Установка плагинов

Ссылки на скачивание лучше брать с GitHub, так как на официальном сайте встречаются старые версии. Устанавливать будем на примере Office Pack. Этот плагин позволяет получать ключи от Microsoft Office.

Далее в веб-интерфейсе нашего сервера открываем Plugins —> Plugins Manager, выбираем скачанный плагин и жмем Install. После успешной установки рестартуем демон Apache.

В трее ищем наш агент, нажимаем правой кнопкой мыши и выбираем Run OCS Inventory NG Agent now.

Конкурс продолжается

Мы решили продлить конкурс и превратить его в постоянную акцию. Прислав нам описание хака, полезный совет или описание клевой неизвестной проги, ты по-прежнему можешь получить подписку на месяц, три месяца или, если постараешься, на год. Следуй рекомендациям и присылай свой текст!

Источник

Snow inventory agent что это. partbullet. Snow inventory agent что это фото. Snow inventory agent что это-partbullet. картинка Snow inventory agent что это. картинка partbulletУчет оборудования с OCS Inventory NG и GLPI

Архив номеров / 2009 / Выпуск №5 (78) / Учет оборудования с OCS Inventory NG и GLPI

$td3″.htmlentities(textDecode($item->NAME)).»

$td3″.textDecode($item->VERSION).»

echo «$td3″.textDecode($item->PUBLISHER).»

$td3″.textDecode($item->NAME).»

$td3″.textDecode($item->VERSION).»

$td3″.(htmlentities(textDecode($item->COMMENTS))? textDecode($item->COMMENTS):»N/A»).»

«;

После этого список программ, установленных на конкретном компьютере, будет выводиться корректно. Страница в PDF, создаваемая при помощи кнопки «Напечатать эту страницу», которая расположена в самом низу, также выглядела корректно. Хотя в общем списке ПО по-прежнему будет нечитаемый текст.

Snow inventory agent что это. image002. Snow inventory agent что это фото. Snow inventory agent что это-image002. картинка Snow inventory agent что это. картинка image002

После всех правок информация об установленном ПО на кириллице выводится корректно

Агент для Windows написан на C++, его можно установить вручную, при помощи logon скрипта или правил GPO. Агент для Linux написан на Perl и С. Для его установки потребуется наличие некоторых модулей Perl (XML и Zlib) и dmidecode [4] (обеспечивает сбор данных из BIOS об оборудовании в соответствии со стандартами SMBIOS/DMI). В Linux агент устанавливается вручную. Сначала рассмотрим этот вариант.

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

$ sudo apt-get install libcompress-zlib-perl libnet-ip-perl libnet-ssleay-perl libwww-perl libxml-simple-perl po-debconf ucf dmidecode pciutils

Далее скачиваем и ставим агента:

$ tar xzvf OCSNG_UNIX_AGENT-1.02.tar.gz

После ввода последней команды поступит запрос на настройку агента.

Snow inventory agent что это. No foto man. Snow inventory agent что это фото. Snow inventory agent что это-No foto man. картинка Snow inventory agent что это. картинка No foto man Сергей Яремчук

Учет оборудования с OCS Inventory NG и GLPI

Сегодня в любой организации много компьютерной техники и прочего оборудования, учет которого, а также прочих связанных затрат часто входит в обязанности администратора. Применение специализированных систем может значительно упростить эту задачу. В статье рассмотрим решения OCS Inventory NG и GLPI, которые являются хорошей альтернативой проприетарным продуктам.

Возможности OCS Inventory NG и GLPI

Система OCS Inventory NG (OCSNG, Open Computers and Software Inventory New Generation) [1] предназначена для инвентаризации компьютеров в локальной сети, комплектующих и программного обеспечения. Также с ее помощью можно удаленно разворачивать программы на рабочих местах и получать информацию о сетевой конфигурации.

GLPI (Gestion Libre de Parc Informatique) [2] кроме задач по учету компьютеров и входящих в их состав комплектующих, позволяет инвентаризировать прочее оборудование, включая расходные материалы (например, картриджи), а также организовать службу технической поддержки, автоматизируя обработку обращений пользователей. Теперь пользователь, вместо того чтобы бежать или звонить админу, заполняет, зайдя по адресу ресурса, заявку. Обращения обрабатываются с учетом их важности или в порядке очередности. Администратор выигрывает вдвойне – все обращения документируются, и можно спокойно отчитаться перед начальством о проделанной работе и затраченном времени, пользователи по этой же причине перестанут обращаться по мелочам. Не говоря уже о том, что звонки обычно отвлекают от выполнения текущей работы.

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

Поддерживается синхронизация календаря по протоколам Ical, Webcal. Функциональность GLPI можно расширить при помощи большого набора плагинов от сторонних разработчиков!

Обе системы русифицированы (с некоторыми оговорками) и распространяются по лицензии GNU GPL.

В GLPI, как и в Kwok Information Server [2], изначально все данные вводятся вручную и сохраняются в базе данных MySQL. Затем администратор при помощи веб-формы может отобрать любую интересующую его информацию. Начиная с версии 0.65 GLPI поддерживает синхронизацию данных с базами OCSNG, причем для этого не требуется никаких дополнительных модулей. Хотя если в сети уже есть сервер Nagios или Cacti, то данные о компьютерах и прочем оборудовании можно импортировать и оттуда.

Основным плюсом OCS Inventory NG является то, что для сбора информации об установленном оборудовании с клиентских компьютеров и серверов используется программа-агент. Все собранные данные агенты отсылают на сервер управления (management server) в виде XML-потока, сжатого при помощи Zlib, для передачи используется стандартный протокол HTTP/HTTPS.

Сервер OCSNG состоит из 4 компонентов, которые могут быть установлены на одном или нескольких компьютерах:

Серверная часть OCSNG может быть установлена на компьютер, работающий под управлением Windows 2000 Professional/Server, XP Professional Edition и 2003, а также Linux, FreeBSD, OpenBSD, NetBSD, Solaris, IBM AIX и MacOS X.

Агент доступен для клиентских и серверных версий Windows от 95 до Server 2008 R2, а также перечисленных Linux (2.4/2.6, x86, x86_64/AMD64, Sparc64, ARM, PowerPC), MacOS X (10.3-10,5), FreeBSD/OpenBSD/NetBSD (x86/Sparc), Solaris 8, 9, 10 (x86/Sparc), IBM AIX (5.1-5.3) и HP-UX.

Следует отметить, что одним из недостатков как данного проекта, так и проекта GLPI является малое количество документации. Хотя, понимая суть процесса, разобраться со всеми нюансами довольно просто.

Установка OCS Inventory в Ubuntu

В середине апреля, после более чем года разработки, вышла новая версия 1.02 OCSNG, о которой и пойдет речь далее. Пакет с OCSNG имеется в репозиториях многих дистрибутивов. Для примера в качестве сервера и клиента выберем Ubuntu 8.04 LTS.

Проверяем, что есть в репозитории Ubuntu.

$ sudo apt-cache search ocsinventory

Хотя это не самая актуальная версия на данный момент:

Поэтому будем устанавливать, используя исходные тексты. В зависимостях пакета ocsinventory-server, полученных при помощи команды:

$ sudo apt-cache depends ocsinventory-server

указаны Apache2 и некоторые модули Perl, утилита для изменения файлов настроек ucf и dbconfig-common. Пакет MySQL указан в качестве необязательных зависимостей, поэтому его устанавливаем отдельно:

$ sudo apt-get install mysql-server

$ sudo apt-get build-dep ocsinventory-server

в данном случае бесполезна, поэтому устанавливаем все, что необходимо, вручную:

$ sudo apt-get install libapache2-mod-perl2 libdbi-perl libapache-dbi-perl libdbd-mysql-perl libsoap-lite-perl libxml-simple-perl libnet-ip-perl libcompress-zlib-perl php5-gd

Скачиваем с сайта проекта OCSNG архив OCSNG_UNIX_SERVER-1.02.tar.gz и устанавливаем:

$ tar xzfv OCSNG_UNIX_SERVER-1.02.tar.gz

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

В большинстве случаев скрипт сам находит все необходимое и достаточно просто подтвердить параметр. Единственное, с чем он не разобрался, это с пользователем и группой, от имени которых запускается Apache. Поэтому вместо предложенного [$] указываем www-data.

Далее производится проверка установленных модулей Perl. И в случае, если нужный не будет найден, выдается соответствующее сообщение. Так в зависимостях Ubuntu не указан модуль XML::Entities.

Сhecking for XML::Entities PERL module.

В репозитории пакета, обеспечивающего функции XML::Entities, нет, поэтому его следует установить самостоятельно из CPAN:

И повторяем установку. По окончании скрипт предложит инсталлировать консоль администрирования.

В процессе установки в каталоге /etc/apache2/conf.d/ будут созданы конфигурационные файлы для веб-сервера – ocsinventory-server.conf и ocsinventory-reports.conf.

Сами PHP-скрипты, обеспечивающие функции OCSNG, будут скопированы в /usr/share/ocsinventory-reports/ocsreports и подключены к веб-серверу с использованием директивы Alias:

# Alias used to put Administration Server static page (typically PHP) outside

Alias /ocsreports /usr/share/ocsinventory-reports/ocsreports

# Alias to put Deployement package files outside Apache document root directory

Alias /download /var/lib/ocsinventory-reports/download

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

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

# Rotate OCS Inventory NG Communication server logs daily

# Save 7 days old logs in compressed mode

По окончании следует перезапустить веб-сервер:

$ sudo /etc/init.d/apache2 force-reload

Некоторые пакеты, распространяемые при помощи OCSNG, могут иметь размер больше 8 Мб, поэтому, чтобы не было проблем с их загрузкой, следует установить большее значение переменных post_max_size и upload_max_filesize в файле /etc/php5/apache2/php.ini, например в 10 Мб (по умолчанию – 8 и 2 Мб):

php_value post_max_size 10m

php_value upload_max_filesize 10m

Эти же установки надо изменить в файле ocsinventory-reports.conf.

Набираем в браузере http://localhost/ocsreports/install.php и в появившемся окне вводим логин и пароль для доступа к MySQL. По умолчанию в процессе установки для доступа к базе ocsweb будет создана учетная запись ocs с паролем ocs. Если только доступ к базе не ограничен локальной системой, то в целях безопасности пароль следует изменить:

mysql> UPDATE mysql.user SET Password = PASSWORD(‘ocspasswd’) WHERE User = ‘ocs’;

mysql> FLUSH PRIVILEGES;

Новое значение пароля следует прописать в файле /usr/share/ocsinventory-reports/ocsreports/dbconfig.inc.php:

И в ocsinventory-server.conf:

PerlSetVar OCS_DB_PWD ocspasswd

Переходим на страницу http://localhost/ocsreports, для регистрации используем логин admin с паролем admin. Щелкнув здесь же по флагу, можно активировать русский язык интерфейса, но сразу после установки это привело к появлению нечитаемых символов.

Snow inventory agent что это. image001. Snow inventory agent что это фото. Snow inventory agent что это-image001. картинка Snow inventory agent что это. картинка image001

Файл локализации OCSNG требует замены

Единственным материалом по локализации интерфейса OCS Inventory является статья Евгения Бражко [5], но она относится к версии 1.02RC1, вышедшей в марте 2008 года, и многие вопросы, которые в ней описаны, в текущей версии уже решены. Так, анализ HTML-кода страницы показал, что она выдается в нужной кодировке:

Интерфейс локализуется при помощи языкового файла russian.txt, расположенного в /usr/share/ocsinventory-reports/ocsreports/languages. В меню Configurations есть отдельный пункт Language file, позволяющий его редактировать. Но открыв файл russian.txt в текстовом редакторе, поддерживающем СР1251, обнаруживаем только набор нечитаемых символов.

Вывод команды file:

Рубрика: Администрирование / Оборудование
russian.txt: UTF-8 Unicode English text

задает еще больше вопросов. При этом:

english.txt: ASCII English text

А первая строка файла явно указывает на нужную кодировку.

Из этого делаем вывод – что-то не то с самим файлом, поэтому берем аналогичный с RC1 или другого источника (например, на сайте журнала www.samag.ru в разделе «Исходный код») и подменяем его, не забыв установить нужные права доступа.

$ sudo chown root:www-data russian.txt

После этого все надписи выводятся на русском.

Чтобы корректно выводились названия программ, установленных на Windows-системах, следует в файле /usr/share/ocsinventory-reports/ocsreports/preferences.php установить в «1» значение UTF8_DEGREE:

// 0 For non utf8 database, 1 for utf8

Далее в файле machine.php, который находится в этом же каталоге, правим функцию print_softwares. После установки она будет иметь такой вид:

echo «$td3″.htmlentities(textDecode($item->PUBLISHER)).»

Do you want to configure the agent

Please enter ‘y’ or ‘n’?> [y]

Отмечаем «y» и при помощи цифровых клавиш отвечаем на вопросы, где должен располагаться конфигурационный файл:

Where do you want to write the configuration file?

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

Do you want to send an inventory of this machine?

Please enter ‘y’ or ‘n’?> [y]

[info] Accountinfo file doesn’t exist. I create an empty one.

В итоге в /var/lib/ocsinventory-agent будет создан подкаталог с файлами, содержащими текущую конфигурацию компьютера. Например, в ocsinv.adm содержатся тег и название системы, под которым она будет видна в консоли управления.

Практически сразу после установки агента сведения о новой системе появятся в консоли управления во вкладке «Все компьютеры».

При возникновении проблем можно запустить агента в режиме отладки:

По умолчанию во вкладке «Все компьютеры» выводятся 7 характеристик клиентских машин, но при помощи раскрывающегося списка Add column можно добавить еще 23 поля. Хотя в некоторых случаях замечены ошибки в определении параметров. Так, на системе с такими характеристиками:

[ 97.725563] powernow-k8: Found 1 AMD Athlon(tm) 64 X2 Dual Core Processor 3600+ processors (2 cpu cores) (version 2.20.00)

[ 0.000000] Detected 2010.408 MHz processor.

В консоли OCS Inventory было выведено – 1000 Мгц, но при необходимости данные можно скорректировать вручную. По разным причинам в базу компьютер может быть занесен несколько раз, для удаления дубликатов существует одноименная вкладка, в которой одинаковые системы можно отобрать по нескольким характеристикам (имя, МАС-адрес, серийный номер).

Snow inventory agent что это. image003. Snow inventory agent что это фото. Snow inventory agent что это-image003. картинка Snow inventory agent что это. картинка image003

После установки агентов данные автоматически появляются в консоли управления OCSNG

Текущая версия агента для Windows 4.0.5.4, архив OCSNG_WINDOWS_AGENT_1.02.zip с установочными файлами можно скачать с сайта проекта. Судя по всему, в нем уже исправлена ошибка, которая приводила к тому, что русские буквы, начиная с ‘х'(0xF4) заменялись английским иксом. Во всяком случае, на тестовых системах все работало правильно. Как вариант можно использовать специальную сборку OCSNG_WINDOWS_AGENT_1.02_RC2_OTEA.zip (версия агента 4.0.4.9) [5].

Самым простым вариантом установки является запуск исполняемого файла OcsAgentSetup.exe, в этом случае будет произведена стандартная установка, по окончании которой агент будет прописан в качестве сервиса. На последнем этапе указываем имя или IP-адрес OCSNG сервера и устанавливаем флажок Immediatly launch inventory, чтобы сразу же отправить отчет.

Все настройки будут сохранены в файле service.ini каталога, в который установлен агент.

В Vista следует открыть его и добавить параметр /DEBUG в строку запуска:

Miscellaneous=/SERVER:192.168.0.10 /PNUM:80 /DEBUG

При изменении оборудования или ПО агента вызвать принудительно, набрав в командной строке:

> «C:\Program Files\OCS Inventory Agent\OCSInventory.exe» /SERVER:ocsng_server /PNUM:80 /NOW

Также агента (файл ocsagent.exe, являющийся zip-архивом) можно импортировать в базу OCSNG, выбрав во вкладке «Агент» и указав место расположения файла. В этом случае он будет доступен с любого компьютера сети.

Кроме функций сетевой инвентаризации, OCSNG имеет возможность развертывания пакетов и запуска команд, записанных в файле (например, bat/vbs) на клиентских компьютерах (кроме Vista), информация о которых находится в инвентаризационной системе. При необходимости установки одного приложения на большое количество систем такая функциональность очень выручает.

Здесь три возможных значения:

Параметры в User notifications позволяют вывести соответствующее предупреждение пользователю, разрешить ему отмену выполнения задачи. Созданный пакет загружается в каталог /var/lib/ocsinventory-reports/download/timestamp.

При этом timestamp получается уникальным.

1241705351 1241722723

Файл info содержит настройки пакета, а 1241722723-1 является собственно программой.

Package activated, it can now be deployed.

Теперь выбираем компьютер, на котором хотим установить пакет, переходим в меню Customization, в самом низу выбираем ссылку add package, указываем на пакет и нажимаем в поле Affect. Подтверждаем свой выбор. В Customization появится информация о состоянии задачи, а в таблице в Activate будет выводиться статистика.

По умолчанию агент подключается к серверу раз в сутки, тогда и будет произведена установка. Можно ускорить этот процесс, вызвав подключение принудительно, как это показано выше. После подключения агента к серверу состояние пакета должно измениться с WAITING_NOTIFICATIONS на NOTIFIED, а затем Success. Пакет будет сохранен в каталоге C:\Program Files\OCS Inventory Agent\download\TIMESTAMP. А все связанные сообщения можно найти в файле download.log.

Кроме выдачи информации о «своем» компьютере, агенты в разных подсетях сканируют сеть в поисках MAC-адресов, принадлежащих других системам. Такая функция называется IP discovery и позволяет находить другие устройства, на которые нельзя установить агент (например, свитчи, принтеры и так далее).

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

$ sudo apt-cache search glpi

Актуальной на момент написания статьи является версия 0.71.5, вышедшая в январе 2009 года. Кроме этого, на странице загрузки доступен предрелиз 0.72-RC2 и срез CVS-архива.

Для установки просто распаковываем скачанный архив в корневой каталог веб-сервера:

Устанавливаем для некоторых каталогов владельца и группу-владельца:

$ sudo chown www-data:www-data config files files/* inc

Далее набираем в браузере http://localhost/glpi выбираем язык (в списке есть русский), принимаем условия GPL и следуем указаниям мастера установки. Самый главный этап – «Проверка окружения на совместимость с GLPI», где следует внимательно прочитать и выполнить все рекомендации.

Snow inventory agent что это. image004. Snow inventory agent что это фото. Snow inventory agent что это-image004. картинка Snow inventory agent что это. картинка image004

При установке GLPI следует выполнить все рекомендации программы

Например, по указанию мастера параметр memory_limit в php.ini следует установить в значение, большее чем 32 Мб:

Выполняем все требования, проверяем повторно и, если все нормально, нажимаем Continue. Теперь собственно установка – вводим данные для доступа к MySQL, название базы данных, и все.

Чтобы GLPI автоматически проверял почту, отправлял уведомления, следует создать задание для пользователя, от имени которого работает веб-сервер (нужен пакет php5-cli):

*/5 * * * * /usr/bin/php5 /var/www/glpi/front/cron.php &>/dev/null

По умолчанию в GLPI создаются четыре учетные записи с разными правами и возможностями (через дробь указан пароль):

GLPI поддерживает импорт учетных данных из AD или другой LDAP.

Snow inventory agent что это. image005. Snow inventory agent что это фото. Snow inventory agent что это-image005. картинка Snow inventory agent что это. картинка image005

Окно активации режима OCSNG

Если OCSNG и MySQL установлены на локальной машине, то данные для подключения к OCSNG будут найдены автоматически. Иначе необходимо будет заполнить информацию о сервере OCSNG вручную.

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

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

Полученные данные появляются во вкладке «Оборудование». Здесь несколько подпунктов, переход в некоторые из них позволяет получить список некоторых компонентов, входящих в компьютер («Мониторы», «Принтеры»), отдельного оборудования («Картриджи», «Телефоны»), а также ПО. Импортированные компьютеры доступны в одноименном подпункте.

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

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

Snow inventory agent что это. image006. Snow inventory agent что это фото. Snow inventory agent что это-image006. картинка Snow inventory agent что это. картинка image006

Информация об оборудовании, импортированная с OCSNG в GLPI, отображается некорректно

Пользователей GLPI можно объединить в группы, кроме этого существует более глобальное понятие – «Организация». Сразу после установки создается «Основная организация», в которую и будут включены все компоненты. Предусмотрено создание других организаций с установлением подчиненности между ними (структуры). Но работа с организациями реализована неудобно, так перенос техники в другую организацию усложнен и неудобен. Предусмотрен экспорт данных в PDF, CVS и SLK (Symbolic Link).

По умолчанию при экспорте в PDF вместо русских букв выводятся знаки вопросов, это происходит по двум причинам: стандартная функция экспортирует данные в кодировке ISO-8859-1, которую и поддерживает используемый по умолчанию шрифт. Подсказка была найдена на форуме OPENNET [6]. Заменяем в скрипте /var/www/glpi/inc/export.function.php вызов функции utf8_decode на utf8_decode_cyr:

И добавляем в export.function.php описание самой функции utf8_decode_cyr:

По умолчанию для экспорта используется шрифт Helvetica, его бы я и рекомендовал оставить. Если заменить шрифт другим, его имя придется править не только в двух местах файла export.function.php:

Но и в двух файлах, находящихся в lib/ezpdf.

$ sudo apt-get install ttf2pt1

Теперь копируем файлы вместо старых, не забыв подправить права:

Snow inventory agent что это. image007. Snow inventory agent что это фото. Snow inventory agent что это-image007. картинка Snow inventory agent что это. картинка image007

Файл PDF, сгенерированный в OCSNG, с информацией о системе

Интерфейсы, как OCSNG, так и GLPI, достаточно просты для освоения, нужно потратить полчаса, и вы будете хорошо ориентироваться. К сожалению, до конца вопрос локализации так и не решен. Так, для Windows в OCSNG неправильно отображаются кириллические наименования установленных программ и компонентов оборудования. Обсуждение всех вопросов по локализации можно найти на форумах проекта OCSNG и OPENNET [6], некоторым они помогают, у некоторых не получается все решить.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *