System Administration Guide: Basic Administration

How to Identify Damaged Software Products (prodreg)

If you remove installed software files or packages without using the appropriate uninstaller, you can damage the software on your system. If software is damaged, the software might not function properly. You can use the info subcommand to the prodreg command to help you determine if a software product is damaged.

  1. View the Solaris Product Registry information on the software you want to check.


    % prodreg browse -m name
    BROWSE #  +/-/.  UUID                                  #  NAME
    ========  =====  ====================================  =  ============
    1         -      root                                  1  System 
                                                              Registry
    2          +     a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b  1  Solaris 9 8/03
                                                              System
                                                              Software
    3          +     8f64eabf-1dd2-11b2-a3f1-0800209a5b6b  1  Unclassified 
                                                              Software
    4          -     name-UUID                              1  name
    233         .    component-a-pkg                           1  component-a
    234         .    component-b-pkg                           1
    -mname

    Displays information on the software component with the name name.

    name-UUID

    Specifies the UUID of the name software component.

    component-a-pkg

    Specifies the package name of the component-a component that depends on name software.

    component-a

    Specifies the name of a component that depends on name software.

    component-b-pkg

    Specifies the package name of the component-b component that depends on name software.

    In the previous sample output, the component-b-pkg entry does not have an associated name in the Name column. If a software component name is not displayed in the Solaris Product Registry, the component might be damaged.

  2. Verify that the software component is damaged.


    % prodreg info -u name-UUID -i 1 -d
    isDamaged=TRUE
    -u name-UUID

    Displays information on the name software component.

    -i 1

    Displays information on the first instance of the name software component.

    -d

    Displays the value of the isDamaged attribute of the name software component.

    The isDamaged=TRUE output indicates that the name software component is damaged.

  3. Identify the packages that form the name-UUID software component.


    % prodreg info -u name-UUID -i 1 -a PKGS
    pkgs:
    component-a-pkg component-b-pkg
    
  4. Verify that these packages are installed on the system.


    % pkginfo component-a-pkg
    application component-a-pkg component-a
    
    % pkginfo component-b-pkg
    ERROR: information on "component-b-pkg" was not found

    The error message output of the pkginfo component-b-pkg command indicates that the component-b-pkg package has been removed from the system. The name software component might not work without the component-b-pkg package.

Example—Identifying Damaged Software Components (prodreg)

The following example shows how to determine if the ExampleSoft software component is damaged.


% prodreg browse -m Examplesoft
BROWSE #  +/-/.  UUID                                  #  NAME
========  =====  ====================================  =  ============
1         -      root                                  1  System 
                                                          Registry
2          +     a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b  1  Solaris 9 8/03
                                                          System
                                                          Software
3          +     8f64eabf-1dd2-11b2-a3f1-0800209a5b6b  1  Unclassified 
                                                          Software
4          -     95842091-725a-8501-ef29-0472985982be  1  ExampleSoft
233         .    90209809-9785-b89e-c821-0472985982be  1  Example Doc
234         .    EXSOzzt                               1
235         .    EXSOblob                              1  Example Data

The ExampleSoft child component EXSOzzt does not have an entry in the NAME column of the Solaris Product Registry. The ExampleSoft software might be damaged. Use the prodreg info command with the -u, -i, and -d options to determine if the ExampleSoft software is damaged.


% prodreg info -u 95842091-725a-8501-ef29-0472985982be -i 1 -d 
isDamaged=TRUE

The output of the previous command indicates that the ExampleSoft software is damaged. Use the -a PKGS option to the prodreg info command to identify the ExampleSoft software packages.


% prodreg info 
     -u 95842091-725a-8501-ef29-0472985982be 
     -i 1 -a PKGS 
pkgs: 
EXSOzzt EXSOblob

Use the pkginfo command to verify that the EXSOzzt and EXSOblob packages are installed on the system.


% pkginfo EXSOzzt 
ERROR: information for "EXSOzzt" was not found 

% pkginfo EXSOblob
application EXSOblob       Example Data

The output of the pkginfo command indicates that the EXSOzzt package is not installed on the system.