niminv Command

Purpose

Allows system administrators to gather, conglomerate, compare, and download fixes based on installation inventory of NIM objects.

Syntax

To get installation inventory:

niminv -o invget -a targets=object1,object2,... [ -a location=path ] [ -a colonsep=yes|no ]

To conglomerate installation inventory:

niminv -o invcon -a targets=object1,object2,... [ -a base=highest|lowest ] [ -a location=path ] [ -a colonsep=yes|no ]

To compare installation inventory:

niminv -o invcmp -a targets=object1,object2,... [ -a base=object|any ] [ -a location=path ]

To get fixes based on conglomerate inventory:

niminv -o fixget -a targets=object1,object2,... [ -a download=yes|no ] [ -a lp_source=object ] [ -a location=path ] -a newlppname=name

Description

The niminv command (Network Install Manager Inventory) allows system administrators to accomplish the following tasks:
  • Gather installation inventory of several NIM objects.
  • Conglomerate installation inventory of several NIM objects.
  • Compare installation inventory of several NIM objects.
  • Download fixes base on the installation inventory of several NIM objects.

The niminv command can use any NIM object that contains installation information. Examples of such objects include standalone client objects, SPOT objects, lpp_source objects and mksysb objects.

Using the niminv command has the following advantages:
  • Hardware installation inventory is gathered alongside the software installation inventory.
  • Data files are saved with a naming convention that is easily recognizable.
  • All NIM objects that have installation inventory can be used.
  • The command provides a holistic view of all managed NIM objects.
The information displayed by niminv can be limited by any of the following factors:
  • Only software installation inventory is provided for objects that do not actually have physical devices (such as SPOT objects, lpp_source objects, and mksysb objects).
  • Software and hardware installation inventory on client objects are limited to what commands on the remote system can provide.
  • The recognition of fixes to download is based on the fix backend server. For more details, see Using the Software Service Management menu (including SUMA).

Flags

Item Description
-a attribute=value Specifies the attribute and value. The supported attributes and values are based on the operation.
-o operation Specifies the operation. The following operations are currently supported:
fixget
Gathers the latest fixes based on the installation inventory. This operation supports the following attributes:
targets
(required) A comma-separated list of NIM objects to base the gathering of fixes.
lpp_source
(optional) The NIM lpp_source object to use as a filter for downloading fixes. If the location and newlppname attributes are not used, this lpp_source object will also be where any fixes are downloaded to.
location
(optional) A directory to store the fixes. Use this attribute only if the fixes should not be downloaded to the object supplied to the lpp_source attribute. This attribute can only be used with the newlppname attribute.
newlppname
(optional) The NIM object name of the lpp_source to create at location. This attribute can only be used with the location attribute. The value supplied must be distinct and currently unused in the NIM environment.
download
(optional) Instructs the command whether or not to download the fixes. If no lpp_source or location field is specified and the value of this attribute is yes, fixes will be downloaded to the default location through the suma command.
Note: The suma command will increase the file system space according to the MaxFSSize field in the suma configuration.
-o operation (Continued)
invcmp
Compares installation inventory. This operation supports the following attributes:
targets
(required) A comma-separated list of NIM objects to compare installation inventory.
base
(required) The NIM object to use as the comparison base, or the keyword any. If the NIM object is supplied, the installation inventory in the object is the sole determinate of the data displayed, and only inventory in the base object is compared against inventory in the target objects. The keyword any forces the command to use any installation inventory of the targets.
location
(optional) A directory to store the data files. If this option is used, each inventory is saved with the format conglomeratebase_object.target_object_list.timestamp, where base_object is the NIM name of the base object used for comparison (or the keyword any), target_object_list is a colon-separated and sorted list of the NIM name of the objects, and timestamp is the time the command was run (year month day hour minute second). If the directory does not exist, it will be created. The default is to display the data to the screen.
-o operation (Continued)
invcon
Conglomerates installation inventory. This operation supports the following attributes:
targets
(required) A comma-separated list of NIM objects to conglomerate installation inventory.
base
(optional) Specifies whether the conglomerate inventory is based on the highest or lowest software levels.
location
(optional) A directory to store the data files. If this option is used, each inventory is saved with the format base.target_object_list.timestamp, where base indicates wther the conglomerate is based on the highest or lowest levels, target_object_list is a colon-separated and sorted list of the NIM name of the objects, and timestamp is the time that the command was run (year month day hour minute second). If the directory does not exist, it will be created. The default is to display the data to the screen.
colonsep
(optional) Instructs the command whether or not to produce colon-separated output. The default is no.
invget
Gathers installation inventory. This operation supports the following attributes:
targets
(required) A comma-separated list of NIM objects to gather installation inventory.
location
(optional) A directory to store the data files. If this option is used, each inventory is saved with the format conglomerate.target_object_name.timestamp, where target_object_name is the NIM name of the object, and timestamp is the time that the command was run (year month day hour minute second). If the directory does not exist, it will be created. The default is to display the data to the screen.
colonsep
(optional) Instructs the command whether or not to produce colon-separated output. The default is no.

Exit Status

Item Description
0 The command completed successfully.
>0 An error occurred.

Security

Access Control: You must have root authority to run the niminv command.

Attention RBAC users and Trusted AIX® users: The rbacqry command grants execute (x) access to the root user. The rbacqry command is a privileged command that is used to run privilege operations. You must activate a role that has the authorization to run the command successfully.

Examples

  1. To gather installation inventory of a two clients and save the output to /tmp/inventory, enter:
    niminv -o invget -a targets=client1,client2 -a location=/tmp/inventory
    Output similar to the following is displayed:
    Installation Inventory for client1 saved to 
    	/tmp/inventory/inventory.client1.060406140453.
    Installation Inventory for client2 saved to 
    	/tmp/inventory/inventory.client2.060406140453.
    
    The information in the files is similar to the output of lslpp -L
  2. To conglomerate installation inventory of two clients and save the output to /tmp/inventory, enter:
    niminv -o invcon -a targets=client1,client2 -a location=/tmp/inventory
    Output similar to the following is displayed:
    Installation Inventory for client1 saved to 
    	/tmp/inventory/conglomerate.client1:client2.060406140500.
    
    The information in the files is similar to the output of lslpp -L.
  3. To compare installation inventory of a mksysb, SPOT, and lpp_source to what's currently installed on the master, and save the output to /tmp/inventory, enter:
    niminv -o invcon -a targets=mksysb1,spot1,lpp_source1 -a base=master -a \
    location=/tmp/inventory
    Output similar to the following is displayed:
    Installation Inventory for client1 saved to 
    	/tmp/inventory/comparison.master.mksysb1:spot1:lpp_source1.060406140610.
    
    The information in the file is listed in column format. The comparison only includes installation inventory on the master.
  4. To do the same comparison as in the preceding example but also include software on any of the objects, enter:
    niminv -o invcon -a targets=mksysb1,spot1,lpp_source1,master -a base=any -a \
    location=/tmp/inventory
    Output similar to the following is displayed:
    Installation Inventory for client1 saved to 
    	/tmp/inventory/comparison.any.mksysb1:spot1:lpp_source1.060406140733.
    
    The information in the file is listed in column format. The comparison includes any installation inventory in any of the target objects.
  5. To see the fixes that can be downloaded based on the lowest installations in a mksysb, SPOT and lpp_source, enter:
    niminv -o fixget -a targets=mksysb1,spot1,lpp_source1
    Output similar to the following is displayed:
    ****************************************
    Performing preview download.
    ****************************************
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/Java14.debug.1.4.1.0.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/Java14.debug.1.4.1.7.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100100.com.5.2.0.50.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100300.diag.5.2.0.75.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100f00.rte.5.2.0.85.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.13100560.rte.5.2.0.85.bff
    
    Summary:
           6 downloaded
           0 failed
           0 skipped
    
  6. To download the latest fixes based on the lowest installations in a mksysb, SPOT and lpp_source, enter:
    niminv -o fixget -a targets=mksysb1,spot1,lpp_source1 -a download=yes
    Output similar to the following is displayed:
    Extending the /usr filesystem by 30 blocks.
    File System size changed to 8126464
    
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/Java14.debug.1.4.1.0.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/Java14.debug.1.4.1.7.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100100.com.5.2.0.50.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100300.diag.5.2.0.75.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.00100f00.rte.5.2.0.85.bff
    Download SUCCEEDED: /usr/sys/inst.images/installp/ppc/devices.pci.13100560.rte.5.2.0.85.bff
    
    Summary:
           6 downloaded
           0 failed
           0 skipped
    
    Note: Any installations already contained in the default download path (as specified by the suma command) will not be downloaded again. The default download path in this example was /usr/sys/inst.images. Refer to the suma command for specifics on where the default download path will be.
  7. To download the latest fixes based on the lowest installations in a mksysb, SPOT and lpp_source to an existing lpp_source, enter:
    niminv -o fixget -a targets=mksysb1,spot1,lpp_source1 -a download=yes -a \
    lpp_source=lpp_source2
    Output similar to the following is displayed:
    Download SUCCEEDED: /nim/lpps/lpp_source2/installp/ppc/Java14.debug.1.4.1.0.bff
    Download SUCCEEDED: /nim/lpps/lpp_source2/installp/ppc/Java14.debug.1.4.1.7.bff
    
    Summary:
           2 downloaded
           0 failed
           0 skipped
    
    Note: Any installations already contained in lpp_source2 will not be downloaded again. In this example, the filesets device already existed in the lpp_source2.
  8. To download the latest fixes based on the lowest installations in a mksysb, SPOT and lpp_source to a newlpp_source while filtering filesets in an existing lpp_source, enter:
    niminv -o fixget -a targets=mksysb1,spot1,lpp_source1 -a download=yes -a \
    location=/nim/lpps/newlpp1 -a newlppname=newlpp1
    Output similar to the following is displayed:
    Download SUCCEEDED: /nim/lpps/newlpp1/installp/ppc/Java14.debug.1.4.1.0.bff
    Download SUCCEEDED: /nim/lpps/newlpp1/installp/ppc/Java14.debug.1.4.1.7.bff
    
    Summary:
           2 downloaded
           0 failed
           0 skipped
    
    Note: Any installations already contained in lpp_source2 will not be downloaded again. In this example, the filesets device already existed in the lpp_source2.
  9. To download the latest fixes based on the lowest installations in a mksysb, SPOT and lpp_source to a newlpp_source, enter:
    niminv -o fixget -a targets=mksysb1,spot1,lpp_source1 -a download=yes -a \
    location=/nim/lpps/newlpp2 -a newlppname=newlpp2
    Output similar to the following is displayed:
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/Java14.debug.1.4.1.0.bff
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/Java14.debug.1.4.1.7.bff
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/devices.pci.00100100.com.5.2.0.50.bff
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/devices.pci.00100300.diag.5.2.0.75.bff
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/devices.pci.00100f00.rte.5.2.0.85.bff
    Download SUCCEEDED: /nim/lpps/newlpp2/installp/ppc/devices.pci.13100560.rte.5.2.0.85.bff
    
    Summary:
           6 downloaded
           0 failed
           0 skipped
    

Location

/usr/sbin/niminv