OCS Inventory – система инвентаризации компьютеров в сети, установленного на них оборудования и программного обеспечения. Так же позволяет удаленно настраивать программное обеспечение рабочих мест. Работает под всеми операционными системами.
Архитектура системы
Система OCS Inventory NG использует программу агента, которая выполняется на инспектеруемом оборудовании и передает информацию на центральный сервер. Управление программами-агентами выполняется так же с центрального центрального сервера. Централый сервер системы позволяет не только собирать информаци об инвинтаризируемом обоурдовании, но и частично управлять инспектируемыми компьютерами.
Распространяется система по лицензии GPL v2 и является Open Source проектом.
Скачать систему:
Следующие пакеты отсутствуют в Gutsy, но уже есть в Hardy. Несмотря на это их можно скачать и установить в Ubuntu 7.10.
Предварительно следует установить следующие пакеты:
$ sudo apt-get install libapache-dbi-perl libdbi-perl libdbd-mysql-perl libsoap-lite-perl libxml-simple-perl libnet-ip-perl libcompress-zlib-perl php5-gd
и модуль XML::Entities, которого в репозитории нет
$ sudo cpan -i XML::Entities$ wget http://archive.ubuntu.com/ubuntu/pool/universe/o/ocsinventory-server/ocsinventory-reports_1.01-3_all.deb $ wget http://archive.ubuntu.com/ubuntu/pool/universe/o/ocsinventory-server/ocsinventory-server_1.01-3_all.deb $ sudo dpkg -i ocsinventory-server_1.01-3_all.deb $ sudo dpkg -i ocsinventory-reports_1.01-3_all.deb
Как видите, в репозитории находится стабильная версия системы годичной давности. Я же буду рассматривать установку и настройку последней на текущий момент версии 1.02 RC1. При этом установка дополнительных пакетов и модуля XML::Entities не отменяется – они нужны.
Скачиваем файл OCSNG_LINUX_SERVER_1.02_RC1.tar.gz и распаковываем его. Проблемы начинаются уже на этапе работы инсталятора. Поэтому, перед тем как запустить setup.sh, открываем его и вносим следующие изменения:
строка 1114
- chown -R root:$APACHE_GROUP $ADM_SERVER_STATIC_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1 + chown -R root:$APACHE_GROUP $ADM_SERVER_VAR_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1
строка 1123
- chmod -R go-w $ADM_SERVER_STATIC_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1 + chmod -R go-w $ADM_SERVER_VAR_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1
строка 1132
- chmod g+w $ADM_SERVER_STATIC_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1 + chmod g+w $ADM_SERVER_VAR_DIR/$ADM_SERVER_VAR_IPD_DIR >> $SETUP_LOG 2>&1
Далее, необходимо для таблиц files и tags принудительно прописать в sql скрипте создания базы (OCSNG_UNIX_SERVER_1.02_RC1/ocsreports/files/ocsbase.sql) кодировку latin1 (строка 143 и 468):
) ENGINE=MYISAM DEFAULT CHARSET=latin1;
Теперь можно запускать setup.sh.
На все вопросы просто жмём клавишу ввода вплоть до окончания установки.
После успешной установки перезапускаем веб-сервер:
$ sudo /etc/init.d/apache2 restart
Теперь запускаем браузер и в адресной строке набираем http://имя_сервера/ocsreports/install.php и вводим данные для создания базы данных:
MySql login: root MySql password: пароль root'а для MySQL MySql HostName: localhost
Создание базы ocsweb с таблицами должно пройти без проблем.
Затем создаём любым удобным способом пользователя ocs и даем ему права на базу ocsweb.
Меняем в файле /usr/share/ocsinventory-server/ocsreports/dbconfig.inc.php пароль для доступа к базе.
В браузере набираем http://имя_сервера/ocsreports и попадаем на страницу авторизации. При необходимости выбираем русский язык (флажки в правом верхнем углу). Пользователь: admin, пароль: admin.
На этом установку можно считать оконченной.
Теперь решаем проблемы с отображением русских символов.
В файле /usr/share/ocsinventory-server/ocsreports/preferences.php в строке 21:
- define("UTF8_DEGREE", 0 ); // 0 For non utf8 database, 1 for utf8 + define("UTF8_DEGREE", 1 ); // 0 For non utf8 database, 1 for utf8
В файлах /usr/share/ocsinventory-server/ocsreports/group_show.php, header.php и machine.php меняем charset=ISO-8859-1 на charset=windows-1251 (строки 116, 49 и 90 соответственно).
При просмотре через www неправильно отображаются русские названия программ. Открываем для редактирования
/usr/share/ocsinventory-server/ocsreports/machine.php и правим function print_softwares($systemid) начиная со строки 606:
до
echo "$td3".htmlentities(textDecode($item->PUBLISHER))."</td> $td3".htmlentities(textDecode($item->NAME))." </td> $td3".textDecode($item->VERSION)." </td> $td3".(htmlentities(textDecode($item->COMMENTS))?htmlentities(textDecode($item->COMMENTS)):"N/A")." </td>";
после
echo "$td3".textDecode($item->PUBLISHER)."</td> $td3".textDecode($item->NAME)." </td> $td3".textDecode($item->VERSION)." </td> $td3".(htmlentities(textDecode($item->COMMENTS))?textDecode($item->COMMENTS):"N/A")." </td>";
Для отображения на главной странице имен пользователей на русском языке в файле preferences.php следует внести изменения в строку 763:
- echo $item[$chmp]."</span></a></font></td>\n"; + echo textDecode($item[$chmp])."</span></a></font></td>\n";
С серверной частью вроде бы всё. Переходим к клиентской.
Установка агента в Ubuntu:
$ sudo apt-get install ocsinventory-agent
Запуск:
$ sudo ocsinv
В системе (в агенте сбора информации для Windows) имеется проблема с кодировкой (малые русские буквы, начиная с ‘х’(0xF4 или 244). Т. е. буквы ‘хцчшщъыьэюя’ преобразовываются в символ английского языка ‘x’ (0×78 или 120). Проблема решается заменой файлов после установки агента файлами из архива http://ocsinventory.narod.ru/agentWinOcs.rar (спасибо Ивану Перевалову за сборку!).
Для тех, кого вышеприведенные операции c кодом приводят в ужас или навевают тоску (что вероятнее :-), выкладываю тарбол со всеми описанными исправлениями. Вам остаётся только распаковать его и установить – ocsng_unix_server_102_rc1_rutar.gz
Автор: Евгений Бражко
Постовой
Обращайтесь, если вам требуется срочный ремонт ноутбуков. Лучшее качество, отличные цены.
Юридические проблема? Не пытайтесь понять все сами, обратитесь к специалистам:Онлайн консультация адвоката.