I was upgrading Netbackup yesterday to version 7.0.1 and faced a quite “funny” issue with the OpsCenter. The installation failed on pre-requirements checks saying that no space was available. Nothing strange at this point…except that we still had about 79GB free space! 🙄

Due to a little NetBackup 7.0 bug, I had to upgrade to version 7.0.1, including OpsCenter, at a customer of mine. The environment NetBackup runs on is a HP Server in SLES 11.0

I must admit that the upgrade itself was pretty handy and went straight forward. Symantec provides 3 tar files with an upgrade script, which implements all of them in a row.

The issue was on patching the OpsCenter files to 7.0.1. I extracted the patch’s tar file in /tmp and stopped all NetBackup services. Then I run the installOpsCenterServerPatch script to start the patching process. This one first makes some pre-checks and unfortunately always came out with the same message:

Verifying base dependencies:
 Checking OpsCenter Server installation .............................................................................................................. installed
CPI ERROR V-9-0-0 Available free space in /var/symantec/ is 0 kbytes and it requires minimum 61064 kbytes to upgrade database. Please create required space and
start installation again.
installOpsCenterServerPatch log files are saved at /var/VRTS/install/logs/installOpsCenterServerPatch-0exK1y

So I had a look at my disk usage:

netbackup@netbcksrv:~> df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/sysvg-rootlv 99G   16G   79G  17% /
udev                  2.0G  116K  2.0G   1% /dev
/dev/cciss/c0d0p1    1012M   32M  929M   4% /boot

Hmmm…strange, 79GB of free space, but the OpsCenter patch didn’t see them 😕
Finally, I found the solution in the following Symantec Note:

http://www.symantec.com/business/support/index?page=content&id=TECH140581&key=58330&actp=LIST

During the pre-checks, the scripts runs df -k on the base installation directory. If the mount point name’s length is more than ‘n’ characters (n can vary from one OS to another), df wraps the output and the script can’t get the free space information!!! As the server I was working on uses a logical volume, it typically falls in this case:

netbackup@netbcksrv:~> df -k /usr/openv
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/mapper/sysvg-rootlv
 103212320  16133384  81836056  17% /

The workaround is to run a df -kP to force the POSIX output usage:

netbackup@netbcksrv:~> df -kP /usr/openv
Filesystem         1024-blocks      Used Available Capacity Mounted on
/dev/mapper/sysvg-rootlv 103212320  16133384  81836056      17% /

So how do we implement this in the patch installer?

This is finally pretty simple. Inside the patch folder, go to ./scripts/CPI/plat/ and edit the file Linux.pm. On line 20, replace the command df -k by df -kP.

...
$CPI::PLAT{Linux}{DFK}="/bin/df -kl";
$CPI::PLAT{Linux}{DFKA}="/bin/df -kP";
$CPI::PLAT{Linux}{DIFF}="/usr/bin/diff";
...

Save the file and restart the installation.

...
/opt/SYMCOpsCenterServer/bin/startserver
/opt/SYMCOpsCenterGUI/bin/startgui.sh

You can access Symantec OpsCenter Patch from the web browser by using the following URL: http://dasv01y/opscenter
Installation log files, summary file, and response file are saved at:

/var/VRTS/install/logs/installOpsCenterServerPatch-oVOJmL

You have new mail in /var/spool/mail/root

Ops_7.0.1

It worked! 🙂
I hope this helps…