Skip Navigation Links | |
Exit Print View | |
System Administration Guide: Basic Administration Oracle Solaris 10 8/11 Information Library |
1. Oracle Solaris Management Tools (Road Map)
2. Working With the Solaris Management Console (Tasks)
3. Working With the Oracle Java Web Console (Tasks)
4. Managing User Accounts and Groups (Overview)
5. Managing User Accounts and Groups (Tasks)
6. Managing Client-Server Support (Overview)
7. Managing Diskless Clients (Tasks)
8. Introduction to Shutting Down and Booting a System
9. Shutting Down and Booting a System (Overview)
10. Shutting Down a System (Tasks)
11. Modifying Oracle Solaris Boot Behavior (Tasks)
12. Booting an Oracle Solaris System (Tasks)
13. Managing the Oracle Solaris Boot Archives (Tasks)
14. Troubleshooting Booting an Oracle Solaris System (Tasks)
15. x86: GRUB Based Booting (Reference)
16. x86: Booting a System That Does Not Implement GRUB (Tasks)
17. Working With the Oracle Solaris Auto Registration regadm Command (Tasks)
18. Managing Services (Overview)
20. Managing Software (Overview)
21. Managing Software With Oracle Solaris System Administration Tools (Tasks)
Oracle Solaris Product Registry and Solaris GUI Installation Tools for Managing Software
Adding Software With the Oracle Solaris Installation GUI
How to Install Software With the Oracle Solaris Installation GUI Program
Managing Software With the Oracle Solaris Product Registry GUI (Task Map)
How to Install Software With the Oracle Solaris Product Registry GUI
How to Uninstall Software With the Oracle Solaris Product Registry GUI
Managing Software With the Oracle Solaris Product Registry Command-Line Interface (Task Map)
Managing Software With the Oracle Solaris Product Registry Command-Line Interface
How to View Installed or Uninstalled Software Information (prodreg)
How to View Software Attributes (prodreg )
How to Check for Software Dependencies ( prodreg)
How to Identify Damaged Software Products (prodreg)
How to Uninstall Software (prodreg)
22. Managing Software by Using Oracle Solaris Package Commands (Tasks)
The prodreg command is the command-line interface (CLI) to the Oracle Solaris Product Registry. The prodreg command supports several subcommands that enable you to manage the software on your system.
You can use the prodreg command in a terminal window to perform the following tasks:
View a list of installed and registered software and software attributes.
View all Oracle Solaris system products that you installed in their localized version in the System Software Localizations directory.
Identify damaged software.
Remove software entries from the Oracle Solaris Product Registry.
Uninstall software and individual software packages.
For more information on how to manage the Oracle Solaris Product Registry by using the command-line interface, see the prodreg(1M) man page.
You can view information about software in the Oracle Solaris Product Registry in a terminal window by using the browse subcommand to the prodreg command.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software
The browse subcommand to the prodreg command displays the following information about registered software.
When you use the prodreg browse command, the Oracle Solaris Product Registry generates a browse number for each registered software component. This number can be used as an argument to either the prodreg browse command or the info subcommand to descend the hierarchy of specific registered components.
Note - Browse numbers might change when you reboot or reinstall your system. Do not store browse numbers in scripts or attempt to reuse them between separate login sessions.
This field indicates if a software component has additional software component children registered in the Oracle Solaris Product Registry.
The following characters are displayed in this field:
+ indicates that the software component has additional children components that are not currently displayed.
- indicates that the software component has additional children components that are currently displayed.
. indicates that the software component does not have children components.
This field lists the software's unique identifier in the Oracle Solaris Product Registry.
This field indicates the instance number of the software component on the system. If the system contains multiple instances of a software component, the Oracle Solaris Product Registry assigns a separate instance number to each instance of the component.
This field lists the localized name of the software. The name of the Oracle Solaris OS in this sample output is the Oracle Solaris 10 system software.
% prodreg browse -m "name"
The -m “name” command displays information on the software component with the name name.
% prodreg browse -u name-UUID -i instance -n number
Displays information on the name software component with the unique identifier name-UUID.
Displays information on the name software component with the instance number instance.
Displays software information by referencing the component's browse number number.
Example 21-1 Viewing Software Information by Component Name (prodreg)
The following example shows how to view software information by referencing the component's name.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg browse -m "Solaris 10 System Software"
Example 21-2 Viewing Software Information by Component Browse Number (prodreg)
The following example shows how to use the -n option with the prodreg browse command to view software information by referencing the component's browse number.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg browse -n 2
Example 21-3 Viewing Software Information by Component UUID (prodreg)
The following example shows how to use the -u option with the prodreg browse command to view software information by referencing the component's UUID. The UUID is the software's unique identifier in the Oracle Solaris Product Registry.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg browse -u a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b
You can view specific software attributes by using the info subcommand of the prodreg command.
The prodreg info command displays a variety of information about registered software, including the following items:
Software component name
Software component description
Required components of the software
Other components that require the software
Base directory of the software
Path to the software component
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software
% prodreg info -m "name"
The -m “name” command displays the attributes of the software component with the name name.
Example 21-4 Viewing Software Attributes by Component Name (prodreg)
The following example shows how to view software attributes by referencing the component's name.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg info -m "Solaris 10 System Software"
Example 21-5 Viewing Software Attributes by Component Browse Number (prodreg)
The following example shows how to use the -n option with the prodreg info command to view software attributes by referencing the component's browse number.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg info -n 2
Example 21-6 Viewing Software Attributes by Component UUID (prodreg)
The following example shows how to use the -u option with the prodreg info command to view software attributes by referencing the component's UUID. The UUID is the software's unique identifier in the Oracle Solaris Product Registry.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software % prodreg info -u a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b
You can use the prodreg info command to view components that depend on a specific software component. You might want to check dependencies between software products before you uninstall specific components.
% prodreg browse BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software
Repeat the prodreg browse command until the software component you want to check is displayed. See How to View Installed or Uninstalled Software Information (prodreg) for more information on browsing the Oracle Solaris Product Registry by using the prodreg browse command.
% prodreg info -m "name" -a "Dependent Components"
Displays the attributes of the software component with the name name.
Displays components that depend on name software by displaying the values of the Dependent Components attribute.
This command output lists the software components that depend on name software.
Example 21-7 Viewing Components That Depend on Other Software Products (prodreg )
The following example shows how to view the components that depend on the software product that is named ExampleSoft.
% prodreg -m "ExampleSoft" -a "Dependent Components" Dependent Components: Name UUID # --------------------------- ------------------------------------ - ExampleSoftA 7f49ecvb-1ii2-11b2-a3f1-0800119u7e8e 1
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 of the prodreg command to help you determine if a software product is damaged.
% prodreg browse -m name
% prodreg info -u name-UUID -i 1 -d
% prodreg info -u name-UUID -i 1 -a PKGS
The output of this command might list more than one package.
% pkginfo component-a-pkg % pkginfo component-b-pkg . . .
Example 21-8 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 10 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 field. The ExampleSoft software might be damaged. You would 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 isDamaged=TRUE indicates that the ExampleSoft software is damaged. You would use the -a PKGS option of 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
To verify that the EXSOzzt and EXSOblob packages are installed on the system, you would use the pkginfo command.
% 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. Thus, the ExampleSoft software is damaged.
You can use the uninstall subcommand of the prodreg command to remove software from your system. When you uninstall software by using the prodreg uninstall command, you remove a specified software and all the child components associated with that software. Before you remove software, verify that other software does not depend on the software you want to uninstall. See How to Check for Software Dependencies ( prodreg).
After you uninstall software, you can remove that software and all the child components of that software from the Oracle Solaris Product Registry by using the prodreg unregister -r command.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
# prodreg browse -u name-UUID
# prodreg uninstall -u name-UUID
# prodreg info -u name-UUID
Check the following information in the output of the prodreg info command.
Child Components – Lists the software components that are associated with the name software component. When you unregister the name software, you also unregister the child components of name software. If the output of the previous prodreg info command lists any child components, verify that you want to unregister these child components.
Required Components – Lists the software components that are required by the name software component. Software components might require other components that are not child components. When you uninstall and unregister a component, only child components are unregistered and uninstalled.
Dependent Components – Lists the components that require name software to run. When you unregister the name software, you also unregister the dependent components of name software. If the output of the prodreg info command lists any dependent components, verify that you want to unregister these dependent components.
In the previous sample output, name software does not have any dependent components.
# prodreg info -u component-a-UUID -i l -a "Dependent Components"
The sample output shows that no other software depends on the child components of name software.
# prodreg unregister -r -u name-UUID -i 1
Recursively unregisters software with the unique identifier name-UUID and all the child components of this software.
Specifies the unique identifier of the software you want to unregister.
Specifies the instance of the software you want to unregister.
Example 21-9 Uninstalling Software Components (prodreg)
The following example shows how to uninstall ExampleSoft software and all the child components of ExampleSoft software.
# prodreg browse -m "ExampleSoft" BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software 1423 - 95842091-725a-8501-ef29-0472985982be 1 ExampleSoft 1436 . 90209809-9785-b89e-c821-0472985982be 1 Example Doc 1437 - EXSOzzt 1 Example Data 1462 . EXSOblob 1 Example Data # prodreg uninstall -u 95842091-725a-8501-ef29-0472985982be -i 1 # prodreg info -u 95842091-725a-8501-ef29-0472985982be Title: ExampleSoft Software . . . Child Components: Name UUID # -------------------------- ------------------------------------ - Example Doc 90209809-9785-b89e-c821-0472985982be 1 Example Data EXSOzzt 1 Required Components: Name UUID # -------------------------- ------------------------------------ - Example Doc 90209809-9785-b89e-c821-0472985982be 1 Example Data EXSOzzt 1 # prodreg info -u 90209809-9785-b89e-c821-0472985982be -i 1 -a "Dependent Components" Dependent Components: Name UUID # --------------------------- ------------------------------------ - ExampleSoft 95842091-725a-8501-ef29-0472985982be 1 # prodreg info -u EXSOzzt -i 1 -a "Dependent Components" Dependent Components: Name UUID # --------------------------- ------------------------------------ - ExampleSoft 95842091-725a-8501-ef29-0472985982be 1 # prodreg info -u EXSOblob -i 1 -a "Dependent Components" Dependent Components: Name UUID # --------------------------- ------------------------------------ - Example Data EXSOzzt 1 # prodreg unregister -r -u 95842091-725a-8501-ef29-0472985982be -i 1
If you try to uninstall a damaged software component by using the prodreg uninstall command, the command might fail. This failure can occur if the uninstaller program for the software component has been removed from the system.
Follow these steps to uninstall a software component with no associated uninstaller program on the system.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
# prodreg browse -m "name"
# prodreg uninstall -u UUID -i 1
# prodreg info -m "name" -a uninstallprogram
# ls uninstaller-location uninstaller-location
# prodreg unregister -u UUID -i 1
# pkgrm component-a-UUID
Example 21-10 Uninstalling Damaged Software (prodreg)
The following example shows how to uninstall the damaged ExampleSoft software. In this example, the uninstaller program is not readily available on a system backup.
# prodreg browse -m Examplesoft BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 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 # prodreg uninstall -u 95842091-725a-8501-ef29-0472985982be -i 1 The install program requested could not be found # prodreg info -m "ExampleSoft" -a uninstallprogram uninstallprogram: /usr/bin/java -mx64m -classpath /var/sadm/prod/org.example.ExampleSoft/987573587 uninstall_ExampleSoft # ls /var/sadm/prod/org.example.ExampleSoft/987573587 /var/sadm/prod/org.example.ExampleSoft/987573587: No such file or directory # prodreg unregister -u 95842091-725a-8501-ef29-0472985982be -i 1 # pkgrm EXSOblob
If other software depends on a damaged software component, you might want to reinstall the damaged component, rather than uninstall the component and the other dependent software. You can use the -f option with the prodreg unregister command to forcibly the unregister the damaged component. Then, you can reinstall the component.
Roles contain authorizations and privileged commands. For more information about roles, see Configuring RBAC (Task Map) in System Administration Guide: Security Services.
# prodreg browse -m "name"
# prodreg info -m "name" -a "Dependent Components"
# prodreg unregister -f -u UUID
# /usr/bin/java -cp /usr/installers/installer
The installer option specifies the name of the installer program for name software.
Example 21-11 Reinstalling Damaged Software Components (prodreg)
The following example shows how to reinstall the damaged software component ComponentSoft without unregistering or uninstalling the dependent component ExampleSoft.
# prodreg browse -m "ComponentSoft" BROWSE # +/-/. UUID # NAME ======== ===== ==================================== = ============ 1 - root 1 System Registry 2 + a01ee8dd-1dd1-11b2-a3f2-0800209a5b6b 1 Solaris 10 System Software 3 + 8f64eabf-1dd2-11b2-a3f1-0800209a5b6b 1 Unclassified Software 4 . 86758449-554a-6531-fe90-4352678362fe 1 ComponentSoft # prodreg info -m "ComponentSoft" -a "Dependent Components" Dependent Components: Name UUID # --------------------------- ------------------------------------ - ExampleSoft 95842091-725a-8501-ef29-0472985982be 1 # prodreg unregister -f -u 86758449-554a-6531-fe90-4352678362fe -i 1 # /usr/bin/java -cp /usr/installers/org.example.componentsoft