nsclient++ check_nt USEDDISKSPACE Segmentation fault

Massimo Balestra massimobalestra at hotmail.com
Tue Sep 1 17:25:12 CEST 2009


Hi Jon,
Thank you for the answer. 
Here are my answers to your questions.

> What patches got installed?
Here is the list.
- Update for Windows Server 2003 (KB968389)
- Security Update for Windows Server 2003 (KB973869)
- Security Update for Windows Server 2003 (KB960859)
- Update for Windows Server 2003 (KB970653)
- Update for Internet Explorer 8 Compatibility View List for Windows Server
2003 (KB973874)
- Security Update for Windows Server 2003 (KB971657)
- Security Update for Windows Server 2003 (KB973815)
- Security Update for Windows Server 2003 (KB960859)
- Security Update for Windows Server 2003 (KB973507)
- Security Update for Windows Server 2003 (KB973354)
- Security Update for Windows Server 2003 (KB956744)
- Security Update for Windows Server 2003 (KB973869)
- Security Update for Windows Server 2003 (KB973540)
- Security Update for Windows Server 2003 (KB971557)
- Security Update for Windows Server 2003 (KB971032)
- Update for Windows Server 2003 (KB968389)
- Security Update for Windows Server 2003 (KB961371)
- Windows Malicious Software Removal Tool - August 2009 (KB890830)
- Microsoft .NET Framework 3.5 Service Pack 1 and .NET Framework 3.5 Family
Update for .NET versions 2.0 through 3.5 (KB951847) x86
- Remote Desktop Connection (Terminal Services Client 6.0) for Windows
Server 2003 (KB925876)



> Tried running strace to see what it is doing when it dies?
Here is the result of the strace.
################################################
ns2:~# strace /usr/local/nagios/libexec/check_nt -H servername -p 12489 -s
password -v USEDDISKSPACE -l c
execve("/usr/local/nagios/libexec/check_nt",
["/usr/local/nagios/libexec/check_"..., "-H", "servername", "-p", "12489",
"-s", "password", "-v", "USEDDISKSPACE", "-l", "c"], [/* 16 vars */]) = 0
brk(0)                                  = 0x80ee000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
mmap2(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7e000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25644, ...}) = 0
mmap2(NULL, 25644, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f77000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libnsl.so.1", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\00001\0\0004\0\0\0\230"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=87800, ...}) = 0
mmap2(NULL, 100328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7f5e000
mmap2(0xb7f73000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14) = 0xb7f73000
mmap2(0xb7f75000, 6120, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f75000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libresolv.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0@!\0\0004\0\0\0\310"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=67408, ...}) = 0
mmap2(NULL, 80068, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7f4a000
mmap2(0xb7f5a000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf) = 0xb7f5a000
mmap2(0xb7f5c000, 6340, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f5c000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libdl.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`\n\0\0004\0\0\0H"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=9680, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f49000
mmap2(NULL, 12412, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7f45000
mmap2(0xb7f47000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1) = 0xb7f47000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libc.so.6", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\260e\1\0004\0\0\0\4"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1413540, ...}) = 0
mmap2(NULL, 1418864, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7dea000
mmap2(0xb7f3f000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x155) = 0xb7f3f000
mmap2(0xb7f42000, 9840, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xb7f42000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7de9000
set_thread_area({entry_number:-1 -> 6, base_addr:0xb7de96b0, limit:1048575,
seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1,
seg_not_present:0, useable:1}) = 0
mprotect(0xb7f3f000, 4096, PROT_READ)   = 0
munmap(0xb7f77000, 25644)               = 0
brk(0)                                  = 0x80ee000
brk(0x810f000)                          = 0x810f000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1282816, ...}) = 0
mmap2(NULL, 1282816, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7caf000
close(3)                                = 0
rt_sigaction(SIGALRM, {0x804c0d0, [ALRM], SA_RESTART}, {SIG_DFL}, 8) = 0
alarm(10)                               = 0
socket(PF_NETLINK, SOCK_RAW, 0)         = 3
bind(3, {sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 0
getsockname(3, {sa_family=AF_NETLINK, pid=27747, groups=00000000}, [12]) = 0
time(NULL)                              = 1251817881
sendto(3, "\24\0\0\0\26\0\1\3\2319\235J\0\0\0\0\0\0\0\0"..., 20, 0,
{sa_family=AF_NETLINK, pid=0, groups=00000000}, 12) = 20
recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"0\0\0\0\24\0\2\0\2319\235Jcl\0\0\2\10\200\376\1\0\0\0\10\0\1\0
\177\0\0\1\10"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 108
recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"@\0\0\0\24\0\2\0\2319\235Jcl\0\0\n\200\200\376\1\0\0\0\24\0\1\
0\0\0\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 128
recvmsg(3, {msg_name(12)={sa_family=AF_NETLINK, pid=0, groups=00000000},
msg_iov(1)=[{"\24\0\0\0\3\0\2\0\2319\235Jcl\0\0\0\0\0\0\1\0\0\0\24\0\1\0\0\0
\0\0\0"..., 4096}], msg_controllen=0, msg_flags=0}, 0) = 20
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = -1
ENOENT (No such file or directory)
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"...}, 110) = -1
ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY)    = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=475, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, "# /etc/nsswitch.conf\n#\n# Example "..., 4096) = 475
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
open("/etc/host.conf", O_RDONLY)        = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=9, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, "multi on\n"..., 4096)          = 9
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
getpid()                                = 27747
open("/etc/resolv.conf", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=96, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, ";nameserver 207.228.46.194\n;names"..., 4096) = 96
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25644, ...}) = 0
mmap2(NULL, 25644, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f77000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libnss_files.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\320\30\0\0004\0\0\0\250"...
, 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=42504, ...}) = 0
mmap2(NULL, 45720, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7ca3000
mmap2(0xb7cad000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9) = 0xb7cad000
close(3)                                = 0
munmap(0xb7f77000, 25644)               = 0
open("/etc/hosts", O_RDONLY|O_CLOEXEC)  = 3
fcntl64(3, F_GETFD)                     = 0x1 (flags FD_CLOEXEC)
fstat64(3, {st_mode=S_IFREG|0644, st_size=235, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, "127.0.0.1\tlocalhost\n\n# The follow"..., 4096) = 235
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
open("/etc/hosts", O_RDONLY|O_CLOEXEC)  = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=235, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, "127.0.0.1\tlocalhost\n\n# The follow"..., 4096) = 235
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=25644, ...}) = 0
mmap2(NULL, 25644, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7f77000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or
directory)
open("/lib/i686/cmov/libnss_dns.so.2", O_RDONLY) = 3
read(3,
"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\v\0\0004\0\0\0x"...,
512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=17880, ...}) = 0
mmap2(NULL, 20616, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) =
0xb7c9d000
mmap2(0xb7ca1000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3) = 0xb7ca1000
close(3)                                = 0
munmap(0xb7f77000, 25644)               = 0
stat64("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=96, ...}) = 0
open("/etc/resolv.conf", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=96, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
0xb7f7d000
read(3, ";nameserver 207.228.46.194\n;names"..., 4096) = 96
read(3, ""..., 4096)                    = 0
close(3)                                = 0
munmap(0xb7f7d000, 4096)                = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("127.0.0.1")}, 28) = 0
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
gettimeofday({1251817881, 838910}, NULL) = 0
poll([{fd=3, events=POLLOUT}], 1, 0)    = 1 ([{fd=3, revents=POLLOUT}])
send(3, "\303!\1\0\0\1\0\0\0\0\0\0\3ts4\te-quantum\3net\0\0\34"..., 35,
MSG_NOSIGNAL) = 35
poll([{fd=3, events=POLLIN}], 1, 5000)  = 1 ([{fd=3, revents=POLLIN}])
ioctl(3, FIONREAD, [88])                = 0
recvfrom(3, "\303!\205\200\0\1\0\0\0\1\0\0\3ts4\te-quantum\3net\0\0\34"...,
1024, 0, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("127.0.0.1")}, [16]) = 88
close(3)                                = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("127.0.0.1")}, 28) = 0
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
gettimeofday({1251817881, 839972}, NULL) = 0
poll([{fd=3, events=POLLOUT}], 1, 0)    = 1 ([{fd=3, revents=POLLOUT}])
send(3, "\373.\1\0\0\1\0\0\0\0\0\0\3ts4\te-quantum\3net\te-"..., 49,
MSG_NOSIGNAL) = 49
poll([{fd=3, events=POLLIN}], 1, 5000)  = 1 ([{fd=3, revents=POLLIN}])
ioctl(3, FIONREAD, [102])               = 0
recvfrom(3, "\373.\205\203\0\1\0\0\0\1\0\0\3ts4\te-quantum\3net\te-"...,
1024, 0, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("127.0.0.1")}, [16]) = 102
close(3)                                = 0
stat64("/etc/resolv.conf", {st_mode=S_IFREG|0644, st_size=96, ...}) = 0
socket(PF_INET, SOCK_DGRAM, IPPROTO_IP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(53),
sin_addr=inet_addr("127.0.0.1")}, 28) = 0
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
gettimeofday({1251817881, 840925}, NULL) = 0
poll([{fd=3, events=POLLOUT}], 1, 0)    = 1 ([{fd=3, revents=POLLOUT}])
send(3, "\317\216\1\0\0\1\0\0\0\0\0\0\3ts4\te-quantum\3net\0\0\1"..., 35,
MSG_NOSIGNAL) = 35
poll([{fd=3, events=POLLIN}], 1, 5000)  = 1 ([{fd=3, revents=POLLIN}])
ioctl(3, FIONREAD, [153])               = 0
recvfrom(3,
"\317\216\205\200\0\1\0\1\0\3\0\3\3ts4\te-quantum\3net\0\0\1"..., 1024, 0,
{sa_family=AF_INET, sin_port=htons(53), sin_addr=inet_addr("127.0.0.1")},
[16]) = 153
close(3)                                = 0
socket(PF_INET, SOCK_STREAM, IPPROTO_TCP) = 3
connect(3, {sa_family=AF_INET, sin_port=htons(12489),
sin_addr=inet_addr("207.228.46.211")}, 16) = 0
send(3, "password&4&c"..., 14, 0)     = 14
select(4, [3], NULL, NULL, {9, 0})      = 1 (in [3], left {8, 948000})
recv(3, "UNKNOWN: Could not get free space"..., 8191, 0) = 138
close(3)                                = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
################################################

Looks that it receives this " UNKNOWN: Could not get free space" but why?
With the drive d it works so well.

I did another test:
telnet servername 12489
password&4&c
UNKNOWN: Could not get free space for: c: c: reason: 32: The process cannot
access the file because it is being used by another process.

This is the problem: but why? What is wrong in the nsclient++ installation?
I try to investigate (on google) on this windows error 32.


> What's the value that gets returned when using /test?
# /usr/local/nagios/libexec/check_nt -H servername -p 12489 -s password -v
USEDDISKSPACE -l c ; echo $?       
c:\ - total: 50.09 Gb - used: 6.47 Gb (13%) - free 43.63 Gb (87%) | 'c:\
Used Space'=6.47Gb;0.00;0.00;0.00;50.09
0

Thank you for the help
Massimo





------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
Nagios-users mailing list
Nagios-users at lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nagios-users
::: Please include Nagios version, plugin version (-v) and OS when reporting any issue. 
::: Messages without supporting info will risk being sent to /dev/null





More information about the Users mailing list