Доброго времени суток! Помогите с такой проблемой!!!
Стоит freebsd 8.4-STABLE,Nconf+Nagios всё робило как нужно, после обновления perl до 5.16
nconf не сохраняет изменения в nagios выдаёт следующее:
Nagios Core 3.5.1
Copyright (c) 2009-2011 Nagios Core Development Team and Community Contributors
Copyright (c) 1999-2009 Ethan Galstad
Last Modified: 08-30-2013
License: GPLWebsite: http://www.nagios.org
Reading configuration data...
Error: Cannot open main configuration file '/usr/local/www/nconf/temp/test/Default_collector.cfg' for reading!
Error processing main config file!***> The name of the main configuration file looks suspicious...
Make sure you are specifying the name of the MAIN configuration file on
the command line and not the name of another configuration file. The
main configuration file is typically '/usr/local/nagios/etc/nagios.cfg'***> One or more problems was encountered while processing the config files...
Check your configuration file(s) to ensure that they contain valid
directives and data defintions. If you are upgrading from a previous
version of Nagios, you should be aware that some variables/definitions
may have been removed or modified in this version. Make sure to read
the HTML documentation regarding the config files, as well as the
'Whats New' section to find out what has changed.А вот что в логах Nagios:
Can't locate strict.pm in @INC (@INC contains: /usr/local/lib/perl5/5.12/BSDPAN /usr/local/lib/perl5/site_perl/5.12/mach /usr/local/lib/perl5/site_perl/5.12 /usr/local//lib/perl5/5.12/mach /usr/local/lib/perl5/5.12 .) at /usr/local/www/nconf/bin/generate_config.pl line 45.
BEGIN failed--compilation aborted at /usr/local/www/nconf/bin/generate_config.pl line 45.
tar: global: Cannot stat: Нет такого файла или каталога
tar: Default_collector: Cannot stat: Нет такого файла или каталога
tar: Error exit delayed from previous errors.хотя причём тут 5.12 когда:
# pkg_info | grep perl
p5-Acme-Damn-0.05 Unblessing perl objects
p5-Log-Log4perl-1.42 Log4j implementation for Perl
p5-MIME-Tools-5.505,2 Set of perl5 modules for MIME
p5-Module-Metadata-1.000019 Perl extension to gather package information from perl modu
p5-Scalar-List-Utils-1.35,1 Perl subroutines that would be nice to have in the perl cor
p5-Storable-2.45 Persistency for perl data structures
perl5-5.16.3_9 Practical Extraction and Report Languageв чём трабла????
> хотя причём тут 5.12 когда:
> # pkg_info | grep perl
> в чём трабла????Переустановите p5- модули
> Переустановите p5- модулия сразу после обновы все переустановил,возможно не правильно,делал это так:
cd /usr/ports/*/название порта
make reinstall clean && rehash
Не, я вчитался@INC contains: /usr/local/lib/perl5/5.12/BSDPAN
если перл 5.16, но немного странно, нехорошо и неправильно, что INC содержит ссылки на 5.12. Я даже думаю, что дело в этом
> Не, я вчитался
> @INC contains: /usr/local/lib/perl5/5.12/BSDPAN
> если перл 5.16, но немного странно, нехорошо и неправильно, что INC содержит
> ссылки на 5.12. Я даже думаю, что дело в этомя понимаю, я о чём и говорю,что он почемуто на 5.12 ссылается,а где править не могу понять
>> Не, я вчитался
>> @INC contains: /usr/local/lib/perl5/5.12/BSDPAN
>> если перл 5.16, но немного странно, нехорошо и неправильно, что INC содержит
>> ссылки на 5.12. Я даже думаю, что дело в этом
> я понимаю, я о чём и говорю,что он почемуто на 5.12 ссылается,а
> где править не могу понять# portmaster -r perl
or
# portupgrade -rf perl
or
# pkg install -fR perl
> # portmaster -r perl
> or
> # portupgrade -rf perl
> or
> # pkg install -fR perlвсё обновлено и переустановлено, сразу после обновления перл, проблема осталась. Какие ещё есть варианты???
>> # portmaster -r perl
>> or
>> # portupgrade -rf perl
>> or
>> # pkg install -fR perl
> всё обновлено и переустановлено, сразу после обновления перл, проблема осталась. Какие
> ещё есть варианты???вывод команд в студию:
perl -V
perl -e 'use strict; print "ok\n"'
> вывод команд в студию:
> perl -V
> perl -e 'use strict; print "ok\n"'# perl -V
Summary of my perl5 (revision 5 version 16 subversion 3) configuration:Platform:
osname=freebsd, osvers=8.4-stable, archname=amd64-freebsd-thread-multi
uname='freebsd kontakt.kit.dn.ua 8.4-stable freebsd 8.4-stable #1: mon aug 12 12:30:15 eest 2013 root@kontakt.kit.dn.ua:usrobjusrsrcsyskontakt amd64 '
config_args='-sde -Dprefix=/usr/local -Darchlib=/usr/local/lib/perl5/5.16/mach -Dprivlib=/usr/local/lib/perl5/5.16 -Dman3dir=/usr/local/lib/perl5/5.16/perl/man/man3 -Dman1dir=/usr/local/man/man1 -Dsitearch=/usr/local/lib/perl5/site_perl/5.16/mach -Dsitelib=/usr/local/lib/perl5/site_perl/5.16 -Dscriptdir=/usr/local/bin -Dsiteman3dir=/usr/local/lib/perl5/5.16/man/man3 -Dsiteman1dir=/usr/local/man/man1 -Ui_malloc -Ui_iconv -Uinstallusrbinperl -Dcc=cc -Duseshrplib -Dinc_version_list=none -Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.16/BSDPAN" -Doptimize=-O2 -pipe -march=native -mtune=native -fno-strict-aliasing -Ui_gdbm -Dusethreads=y -Dusemymalloc=n -Duse64bitint'
hint=recommended, useposix=true, d_sigaction=define
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.16/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include',
optimize='-O2 -pipe -march=native -mtune=native -fno-strict-aliasing',
cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.16/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include'
ccversion='', gccversion='4.2.1 20070831 patched [FreeBSD]', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='cc', ldflags ='-pthread -Wl,-E -fstack-protector -L/usr/local/lib'
libpth=/usr/lib /usr/local/lib
libs=-lgdbm -lm -lcrypt -lutil
perllibs=-lm -lcrypt -lutil
libc=, so=so, useshrplib=true, libperl=libperl.so
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' -Wl,-R/usr/local/lib/perl5/5.16/mach/CORE'
cccdlflags='-DPIC -fPIC', lddlflags='-shared -L/usr/local/lib -fstack-protector'
Characteristics of this binary (from libperl):
Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS
PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT
PERL_MALLOC_WRAP PERL_PRESERVE_IVUV USE_64_BIT_ALL
USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE
USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF
USE_REENTRANT_API
Built under freebsd
Compiled at Apr 26 2014 14:00:23
@INC:
/usr/local/lib/perl5/5.16/BSDPAN
/usr/local/lib/perl5/site_perl/5.16/mach
/usr/local/lib/perl5/site_perl/5.16
/usr/local/lib/perl5/5.16/mach
/usr/local/lib/perl5/5.16
.
мммм дак вроде ругань при запуске скриптов нагиоса, мож посмотреть в ту сторону - что имеено юзают эти скрипты?
> мммм дак вроде ругань при запуске скриптов нагиоса, мож посмотреть в ту
> сторону - что имеено юзают эти скрипты?да всё вроде просмотрел, ни каких ссылок на перл в конфигах не нашёл? В какую сторону копать уже и не знаю. Всё вроде правильно а не робит!!!((( поэтому и спрашиваю у знатоков мож кто подскажет!
> да всё вроде просмотрел, ни каких ссылок на перл в конфигах нев каких конфигах? сами скрипты посмотри ...
> нашёл? В какую сторону копать уже и не знаю. Всё вроде
> правильно а не робит!!!((( поэтому и спрашиваю у знатоков мож кто
> подскажет!чудес не бывает - смотри внимательнее
к тому же беглое гугление показывает, что нагиос может быть собран со своим embedded perl - тоже как вариант можно посмотреть ...
>> да всё вроде просмотрел, ни каких ссылок на перл в конфигах не
> в каких конфигах? сами скрипты посмотри ...
>> нашёл? В какую сторону копать уже и не знаю. Всё вроде
>> правильно а не робит!!!((( поэтому и спрашиваю у знатоков мож кто
>> подскажет!
> чудес не бывает - смотри внимательнее
> к тому же беглое гугление показывает, что нагиос может быть собран со
> своим embedded perl - тоже как вариант можно посмотреть ...#!/usr/bin/perl
#
# generate_config.pl
#
########################################################################################
# Description:
# This script generates the actual config files for the Nagios deamon, based on the
# information stored in the NConf DB.
########################################################################################
# Version 1.2.8
# Angelo Gargiulo
########################################################################################
# Revision history:
# 2006-07-31 v1.0 A. Gargiulo Initial release
# 2006-08-25 v1.1 A. Gargiulo Changed hostgroup/servicegroup.cfg to not be
# globally defined anymore.
# 2006-12-06 v1.1.1 B. Waldvogel Removed check_interval in host config
# 2008-10-23 v1.1.2 A. Gargiulo Create .htpasswd file based on contact items
# 2008-10-23 v1.1.3 A. Gargiulo Dynamically generate nagios.cfg for each.
# collector/monitor to test new config.
# 2008-11-05 v1.1.4 A. Gargiulo Handle setups with no Monitor server(s) present.
# 2009-02-06 v1.1.5 A. Gargiulo Read basic configuration from /config folder
# 2009-02-12 v1.1.6 A. Gargiulo Removed collector based on-call-location dependency,
# added default contactgroups defined in config.
# 2009-02-17 v1.1.7 A. Gargiulo Improved "fetch_config", added "parents" attr to
# hosts.cfg, if no monitor server is present..
# 2009-02-18 v1.1.8 A. Gargiulo Changed the query that fetches the host-alive check.
# host -> host-template -> misccommand -> name
# 2009-02-18 v1.1.9 A. Gargiulo generate misccommands.cfg
# 2009-02-24 v1.2.0 A. Gargiulo Added check for oncall groups, overall bugfixing
# 2009-03-12 v1.2.1 A. Gargiulo Write "trap" services to collector config,.
# if no monitor server is present.
# 2009-04-07 v1.2.2 A. Gargiulo Small improvements and bugfixes
# 2009-04-30 v1.2.3 A. Gargiulo Services check_command on monitor servers is now.
# dependent on "active_checks_enabled" flag (service_is_stale not forced)
# 2009-05-11 v1.2.4 A. Gargiulo Filenames to generate are now read from the DB ('out_file' attr)
# 2009-07-27 v1.2.5 A. Gargiulo Added "check_result_path" = nconf/temp/ to nagios.cfg for syntax checking
# 2009-08-05 v1.2.6 A. Gargiulo Added possibility to use %...% style NConf macros in any text attribute
# 2009-09-11 v1.2.7 A. Gargiulo Fixed bug in host/service attrs copied from linked check_/notification_period
# 2009-10-08 v1.2.8 A. Gargiulo Merged generate_config with NConf perl-API, moved functions to ext. perl module
#
########################################################################################
# INITuse strict;
use FindBin;
use lib "$FindBin::Bin/lib";use NConf;
use NConf::ExportNagios;
use NConf::Logger;########################################################################################
# MAIN&logger(3,"Starting generate_config script");
# Generate all necessary config files (don't change this order!)
&create_global_config;
&create_monitor_config;
&create_collector_config;&logger(3,"Ended generate_config script");
вот не посредственно скрипт который должен генерировать новый конфиг для nagios. Никаких версий перла нет. Напомню что сам nagios работает, но после изменения какой либо информации в ncof после нажатия применить, конфиг не сохраняется а выдает ... смотри выше и в nagios остаётся старая информация. Не работает получается сам скрипт, если сделать это в ручную, тобишь взять новый конфиг из ncof запаковать, затем положить в папку с nagios где лежит старый конфиг, распаковать и поменять права и пользователя то всё применяется
И все таки, что выдает команда perl -e 'use strict; print "ok\n"'?
На крайний случай попробуй сделать символическую ссылку.
> И все таки, что выдает команда perl -e 'use strict; print "ok\n"'?
> На крайний случай попробуй сделать символическую ссылку.# perl -e 'use strict; print "ok\n"'
ok
что за ссылку???
судя по логам ищет в каталоге перла 5.12 и не находит strict.pm ссылку на каталог 5.16 может поможет
> судя по логам ищет в каталоге перла 5.12 и не находит strict.pm
> ссылку на каталог 5.16 может поможетне помогает, у кого есть ещё варианты????