Discovery_UNIX fails to discover some file systems. (NETIQKB54685)

  • 7754685
  • 02-Feb-2007
  • 11-Oct-2007

Environment

AppManager 5.0.x
AppManager 6.0.x
AppManager for UNIX 6.5
Discovery_UNIX Knowledge Script

HP-UX
IBM AIX
Red Hat Linux
Sun Solaris
SuSE Linux

Situation

The file system exists and is mounted and the file system appears in df output.

Resolution

You can manually adjust the Discovery_UNIX KS to correct this issue.  In addition, a test has been provided within the KB Article to confirm a manual modification is required.

Use df in the second place in Discovery_UNIX as it is used in the first place: pipe the df output to awk instead of cat.  The second location is on line 1191 of Discovery_UNIX and looks like this:

if (NetIQ::Nqext::ExecCmd("df -k $1 | cat -u") =~ /\n\S+\s+(\S+).+$/) {

Technical Support has tested this by changing the line to this:

if (NetIQ::Nqext::ExecCmd("df -k $1 | awk 'NF < 2 { printf \$0; next } { print }'") =~ /\n\S+\s+(\S+).+$/) {

This change enables the Discovery_UNIX KS to successfully join word-wrapped lines.

Please Note customizing Knowledge Scripts is beyond the scope of Technical Support, but available through our Professional Services group.  Contact your Account Representative for more details about having a KS customized for your environment.

Cause

Discovery_UNIX relies on the output of "df".  Any Filesystem of sufficient length in the device name will be word-wrapped.  When lines in df output are word-wrapped, Discovery_UNIX does not acknowledge them as they have too few characters.

Additional Information

Formerly known as NETIQKB54685

To prove this from the command line, try these two commands:

  • df -k /dev/mapper/VolGroup00-LogVol00 | cat -u
  • df -k /dev/mapper/VolGroup00-LogVol00 | awk 'NF < 2 { printf $0; next } { print }'