Меню Рубрики

Install agent ocs inventory linux

#Автоматизация #Технологии #Процессы #ИТ #Записки #Журнал #Блог #Форум

Форум для различных тем в большей части ИТ

Установка OCS Inventory UnixAgent на ALT Linux

Установка OCS Inventory UnixAgent на ALT Linux

Сообщение Артём Мамзиков » Чт окт 10, 2019 11:45 #1

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

Необходимы следующие модули для сбора информации
— Digest::MD5
— XML::Simple
— Net::IP необязательно, это необходимо только для вычисления сетевой информации
— LWP
— Mac::SysProfile 0.0.5 этот модуль необходим на MacOSX для сбора информации об устройстве.

Для обеспечения работы SSL-связи (для развертывания пакетов или HTTPS-связи с сервером OCS) вам понадобятся следующие модули:
— Crypt::SSLeay если вы используете LWP до версии 6
— LWP::Protocol::https при использовании LWP версии 6 или боле

— Net::CUPS используется для обнаружения принтера
— Net::SNMP для сканирования сетевых устройств с помощью SNMP

Для улучшения функции SNMP с пользовательскими сетями сканирования, вам нужны эти модули:
— Net::Netmask Маска Сети информация о сети
— Net::Ping
или
— Nmap::Parser

— Data::UUID используется для создания уникального идентификатора для каждой машины
— Parse::EDID используется для инвентаризации монитора и заменит монитор-edid от Mandriva.

Необходимы следующие команды :
— dmidecode на Linux и *BSD (i386, amd64, ia64) => dmidecode требуется для чтения статистики BIOS.
— lspci на Linux и *BSD (пакет pciutils) = > lspci требуется для перечисления устройств PCI.
— sneep на Solaris/sparc, вы должны установить sneep и записать серийный номер с ним (скачать его с http://www.sun.com/download/products.xml?id=4304155a)

Чтобы получить серийный номер экрана вам понадобится один из этих инструментов:
— monitor-edid от Mandriva необходим для получения монитора. Пакет доступен в репозитории Fedora. информация http://wiki.mandriva.com/en/Tools/monitor-edid
или
— get-edid получить данные EDID от чтения

— ipmitool если вы хотите собирать информацию о IPMI
— Nmap (v3. 90 или выше) для сканирования сетевых устройств для обнаружения Ip

Следующие модули Perl являются необязательными:
— Proc::Daemon режим демона
— Proc::PID::File приносит поддержку файлов pid, если установлен Демон Proc
— nvidia::ml приносит вам некоторую информацию о графических картах Nvidia, таких как размер памяти, скорость процессора, версия bios и версия драйвера.
— Compress::Zlib сжатие

Следующий модуль необходим, если вы планируете подготовить тарбол или установить его непосредственно из ветки Bazaar devel. (См. источники ниже.):
— Module::Install

Удалить старого агента если есть
apt-get remove ocsinventory-agent -y

apt-get update — загрузка списков пакетов из репозиториев и «обновление» их
apt-get upgrade — обновляет пакеты, которые уже установлены в системе и доставляет новые пакеты-зависимости
Ставим пакеты apt-get и часть пакетов perl apt-get которые доступны для загрузки

apt-get install dmidecode ftp ncftp nmap smartmontools libpci libpci-devel pciutils read-edid ipmitool nmap eepm нет alt linux lspci sneep monitor-edid
apt-get install wget perl-base perl-CGI perl-CPAN perl-HTML-Mason perl-IO-All perl-Proc-Daemon perl-Proc-PID-File perl-XML-SAX perl-XML-Simple cpan2rpm perl-Digest-MD5 perl-Net-IP perl-LWP-Protocol-https perl-Net-CUPS perl-Net-SNMP perl-Net-Netmask perl-Net-Ping perl-Nmap-Parser perl-Data-UUID perl-Compress-Zlib perl-Module-Install perl-Crypt-SSLeay perl-LWP-UserAgent-Determined perl-DateTime perl-Mojolicious perl-AnyEvent perl-AnyEvent-HTTP perl-App-cpanminus libe2fs-devel asa perl-Parse-EDID

apt-get install net-snmp-utils net-snmp snmpb

Добавить в переменную для работы dmidecode от пользователя и от админа после чего должна работать команда dmidecode
Добавить в конфигурацию от имени пользователя nano

/.bashrc следующую переменную и выполнить ее
export PATH=»/usr/sbin:$PATH»

Запускаем cpan
Выбираем Would you like to configure as much as possible automatically? [yes] если не надо вводить какие либо настройки конфигурации вручную соглашаемся на yes

Если например надо указать прокси пишем no смотрим ниже под сполером

Запускаем cpan
Выбираем Would you like to configure as much as possible automatically? [yes] пишем no
И выбираем все по умолчанию до указания прокси
Далее указываем прокси в нашем случае http://IP:Port и авторизацию Логин Пароль
Your ftp_proxy? [] http://IP:Port
Your http_proxy? [] http://IP:Port
Your proxy user id? [] Логин
Your proxy password? Пароль
Далее соглашаемся со всем по умолчанию

Если у вас уже было принято yes то тогда настраиваем в Perl вручную
Прописываем настройки вручную
cpan
o conf ftp_proxy http://ip:порт
o conf http_proxy http://ip:порт
o conf no_proxy
o conf proxy_user логин
o conf proxy_pass пароль
o conf commit -сохранить (/home/имя пользователя/.local/share/.cpan/CPAN/MyConfig.pm)
q — выйти

Проверка прокси
cpan
cpan[1]> o conf /proxy/
cpan[2]> o conf no_proxy 1

Далее ставим пакеты Perl
пакеты, описание пакетов,команды установки есть на сайте https://web-stage.metacpan.org/pod/
Установка в разделе >_Install Instructions

Вводим команду perl -MCPAN -e shell соглашаемся Y далее будет ожидаться ввод команды > поочередно вводим пакеты
install CPAN ( не обязательно обновить сам cpan)
install Crypt::SSLeay::X509 (если агент будет на https 443 подключение с сертификатом, для работы snmp обязательно)
install Test::use::ok (не обязательно пакет для тестов других пакетов перла)
install UUID
install Data::UUID::LibUUID (используется для создания уникального идентификатора для каждой машины)

install Mac::SysProfile (для сбора мак адресов)
install Parse::EDID (используется для инвентаризации монитора и заменит монитор-edid от Mandriva)
install Nvidia::ml (можно не ставить, если не устанавливается! нужна только если есть железо фирмы Nvidia для сбора данных о нем)
install DateTime (для работы даты в перле)

Данные пакеты поставлены выше ap-get , если нет ставим их тоже
install Crypt::SSLeay (если вы используете LWP до версии 6 ,если агент будет на https 443 подключение с сертификатом)
install Net::Netmask (Маска Сети информация о сети)
install Net::SNMP (для сканирования сетевых устройств с помощью SNMP)
install Proc::Daemon (режим демона)
install Proc::PID::File (приносит поддержку файлов pid, если установлен Демон Proc)
install Compress::Zlib (сжатие)
install LWP::UserAgent (для авторизации юзер агенты выхода в инет перла если задан юзер агент)

Так же можно делать установку командой
cpanm более меньше задает вопросы нужно установить perl-App-cpanminus мы его ставили apt-get ом =)
cpanm Crypt::SSLeay
cpanm Data::UUID::LibUUID
cpanm Mac::SysProfile
cpanm Parse::EDID
cpanm Nvidia::ml
cpanm DateTime
cpanm Net::Netmask
cpanm Net::SNMP
cpanm Proc::Daemon
cpanm Proc::PID::File
cpanm LWP::UserAgent

Если не нашлось пакета nvidia::ml perl-nvidia-ml-pl-4.304.2-alt4.1.x86_64.rpm скачиваем его и ставим вручную
rpm -i —force perl-nvidia-ml-pl-4.304.2-alt4.1.x86_64.rpm
(можно не ставить, если не устанавливается! нужна только если есть железо фирмы Nvidia для сбора данных о нем)

Сборка / Установка
После распаковки архива используйте следующие команды:
perl Makefile.PL — проверка требований перед установкой
make
make install сделать установку

Далее будут примерно такие вопросы плюс минус больше меньше вопросов

Добавление информации об установке в /home / delp-spec1 / perl5 / lib/perl5/x86_64-linux-thread-multi / perllocal.стручок
[ ! -Ф выполнения послеустановочных ] || /УСР/бин/perl5.16.3 postinst.pl
Вы хотите настроить агент
Введите ‘Y’ или ‘N’?> [y] y
Найден конфигурационный файл / etc/ocsinventory / ocsinventory-agent.cfg! Повторное использование.
Следует ли импортировать старые настройки unix_agent ?
Введите ‘Y’ или ‘N’?> [y] n
[info] конфигурационный файл будет записан в /etc/ocsinventory / ocsinventory-agent.контекстно-свободная грамматика,
Каков адрес вашего сервера ocs?> [http://192.168.121.5:3455/ocsinventory] указать свой путь на сервер OCS
Вам нужны учетные данные для сервера? (Вы, вероятно, не знаете)
Введите ‘Y’ или ‘N’?> [n] n
Вы хотите применить административный тег на этой машине
Введите ‘Y’ или ‘N’?> [y] y
тег?> тут указываем инвентарный номер
Вы хотите установить задачу cron в /etc / cron.д
Введите ‘Y’ или ‘N’?> [y] y
Где вы хотите, чтобы агент хранил свои файлы? (Вам, вероятно, не нужно его менять)?> [/var / lib / ocsinventory-агент]
Должен ли я удалить старый unix_agent
Введите ‘Y’ или ‘N’?> [y] y
Вы хотите активировать параметр конфигурации отладки ?
Введите ‘Y’ или ‘N’?> [y] y для первого запуска и выявления ошибок можно включить он будет в конфигурации равен debug=1 позже отключит оставив в конфиге debug=
Вы хотите отключить параметр конфигурации проверки SSL CA (не рекомендуется)?
Введите ‘Y’ или ‘N’?> [y] n
Вы хотите установить путь к файлу сертификатов CA ?
Введите ‘Y’ или ‘N’?> [у] n
Вы хотите использовать функцию развертывания программного обеспечения OCS-Inventory?
Введите ‘Y’ или ‘N’?> [y] y
Вы хотите использовать функцию сканирования SNMP OCS-Inventory?
Введите ‘Y’ или ‘N’?> [y] y
Вы хотите отправить опись этой машины?
Введите ‘Y’ или ‘N’?> [y] y
Настройка адреса сервера OCS Inventory NG.
Ищу OCS Invetory ng Unix Unified agent installation.
ocsinventory agent представляет: / home / delp-spec1 / perl5 / bin / ocsinventory-agent
Настройка crontab.
Создание каталога/etc / ocsinventory.
Написание OCS Inventory NG Unix Unified agent configuration
Удаление старого агента OCS Inventory Unix.
/etc / ocsinventory-клиент
/etc / logrotate.d / ocsinventory-клиент
/usr/sbin/ocsinventory-client.pl
/ etc / cron.d / ocsinventory-клиент
/бин/ocsinv
сделано
Создание каталога/var/lib/ocsinventory-agent / http:__192.168.121.5:3455_ocsinventory.
Создание каталога /var/lib в/ocsinventory-агента/по HTTP:__192.168.121.5:каталог 3455_ocsinventory/СНМП.
Копирование XML-файлов SNMP MIBs.
Активация модулей при необходимости.
Запуск OCS Inventory NG Unix Unified agent.
Не удалось загрузить Ocsinventory::агент, ошибка синтаксиса в /Home/Делп-spec1/perl5/библиотека lib/perl5/Ocsinventory/агент/сети.линия часов 56, рядом с «>;»
Ошибка компиляции в require at / home / delp-spec1 / perl5 / lib/perl5/Ocsinventory / Agent.pm строка 33.
BEGIN failed—компиляция прервана в /home / delp-spec1/perl5 / lib/perl5/Ocsinventory / Agent.pm строка 33.
Компиляция не удалась в require at (eval 1) строка 1.
BEGIN failed—компиляция прервана в строке 1 (eval 1).
вы можете запустить агент непосредственно для его исходного каталога с помощью —devlib
-> Не удалось!
Вы можете запустить агент с флагом —verbose или —debug.
Новые настройки написаны! Благодарим Вас за использование OCS Inventory

Могут быть ошибки по логину паролю
nano /usr/local/share/perl/5.16/Ocsinventory/Agent.pm line 33
nano /home/delp-spec1/perl5/lib/perl5/Ocsinventory/Agent.pm — ссылается на 33 строке на файл Network
Правим блок в файле путь может отличатся 2 примера пути
nano /home/delp-spec1/perl5/lib/perl5/Ocsinventory/Agent/ Network.pm — пароль к серверу 56 строка
nano /usr/local/share/perl/5.16/Ocsinventory/Agent/ Network.pm
Коментируем блок
# $self->->credentials(
# $uaserver, # server:port, port is needed
# $self->->,
# $self->->,
# $self->->;
# );

Поправить в cron (Планировщик запуска)
/etc/cron.d/ocsinventory-agent путь может отличатся!
так же можно добавить переменную :/usr/sbin
Указываем свой путь на ocsinventory-agent если он отличается

PATH=/usr/sbin:/usr/java/jdk1.8.0_171-amd64/bin:/home/edv-spec1/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/usr/games
5 9,15 * * * root /usr/local/bin/ocsinventory-agent —lazy —force > /dev/null 2>&1
@reboot root /usr/local/bin/ocsinventory-agent —lazy —force > /dev/null 2>&1

запуск в 9 часов 5 минут и в 15 часов 5 минут каждый день

Перезапускам service crond restart

На ALT Linux 7 CRONd по умолчанию не работает нужно добавить его в автозагрузку
chkconfig —add crond
chkconfig crond on

Проверяем служба должна быть активной
service crond status
active

Возможно в некоторых случаях понадобится дать права
chmod a-x /etc/rc.d/init.d/crond
chmod 754 /etc/rc.d/init.d/crond

значит не найдена папка Ocsinventory можно ее скопировать например
из /usr/local/lib/perl5/site_perl/5.30.0/Ocsinventory
В /usr/share/perl5/Ocsinventory
Либо прописать переменную /usr/local/lib/perl5/site_perl/5.30.0/

Или еще пример
Из /home/Ваш-Пользователь/perl5/lib/perl5/Ocsinventory
В /usr/local/share/perl/5.16/Ocsinventory

* * * * * <пользователь>выполняемая_команда прописываем полный путь
— — — — —
| | | | |
| | | | —— День недели (0 — 7) (Воскресенье =0 или =7)
| | | ——- Месяц (1 — 12) (можно три буквы из названия месяца,
| | | регистр не имеет значения от jan до dec)
| | ——— День (1 — 31)
| ———— Час (0 — 23)
————- Минута (0 — 59)

service crond status — проверка службы Крон

В Linux есть такой чудо демон — cron. Демон cron при загрузке, а так же — после загрузки каждую минуту «шерстит» файл /etc/crontab, каталог /etc/cron.d/ и каталог с пользовательскими таблицами заданий (/var/spool/cron/crontabs) и сверяет текущее время и строку в «просматриваемом» файле и запускает указанную команду, когда значения полей минута, час, месяц и хотя бы одно из полей число и день_недели, совпадают с текущим временем.

Так же есть чудо-средство anacron, которое сравнивает не текущее время со временем задания в crontab, а сколько прошло времени с последнего запуска задания, указанного в /etc/anacrontab и если прошел указанный промежуток времени, то задание запускается.

Настроить проверить конфиг /etc/ocsinventory/ocsinventory-agent.cfg
Прописать
basevardir=/var/lib/ocsinventory-agent
debug=
tag= указать инвентарный номер
server=http://192.168.121.5:3455/ocsinventory
logfile=/var/log/ocsinventory-agent/ocsinventory-agent.log

дать права бывает нужно от root (su)
chmod 775 /etc/ocsinventory/ocsinventory-agent.cfg
chmod 775 /var/log/ocsinventory-agent/ocsinventory-agent.log
chmod 775 -R /var/lib/ocsinventory-agent

команды для пробы запуска
ocsinventory-agent —force —debug
ocsinventory-agent —force

Данные должны передаться на сервер если нет смотрим ошибки если не отобразились в момент выполнения команды то смотрим в логе и устраняем их и снова запускаем

Источник

Популярные записи


Adblock
detector