本节讨论了在卸载过程中可能会遇到的下列问题。
Java ES 安装程序会将卸载程序置于系统上的以下位置:
Solaris OS:/var/sadm/prod/SUNWentsys4
Linux:/var/sadm/prod/sun-entsys4
如果卸载程序不在此目录中,则可能发生了下列情况之一:
该主机上从未安装过 Java ES。
Java ES 卸载程序之前从此主机上删除了所有组件及卸载程序本身。
在卸载过程中,如果卸载程序检测到主机上已没有 Java ES 组件,便会卸载其自身。
在发生失败的安装过程中,发生了下列情况之一:
该主机上从未安装过此卸载程序。
尽管删除了卸载程序,但某些 Java ES 组件仍保留在主机上。
建议修复。按照卸载失败而遗留文件中所述手动清理系统。
如果由于卸载程序遗留文件或进程而需要手动清理,请执行下列过程,以从系统中删除软件包。
确定要删除的软件包。
将系统上的软件包与 《Sun Java Enterprise System 2005Q4 安装参考》中的第 5 章 “可安装软件包列表”中列出的 Java ES 软件包相比较。可以使用 Solaris pkginfo 或 prodreg 实用程序或 Linux rpm 命令来确定安装了哪些软件包。参见由于卸载过程中的遗留文件导致安装失败
停止 Java ES 组件的所有正在运行的进程。
有关停止进程的简要说明,参见第 6 章,安装后配置组件组件文档。
备份所有规划在以后安装时要使用的自定义配置和用户数据。
查看 Java ES 组件的卸载行为提供了有关应备份的配置和用户数据的一些信息。有关更多信息,参阅各个组件的组件文档。
使用 pkgrm 或 rpm -e 命令删除 Java ES 组件软件包。
删除所有不打算在后续安装过程中使用的剩余组件目录及其内容。如果确实规划以后使用这些目录,请将它们移动到其他位置。
更新位于以下位置的产品注册表文件:
在 Solaris OS 上:/var/sadm/install/productregistry
在 Linux 上:/var/opt/sun/install/productregistry
卸载程序使用此注册表来确定主机上安装了哪些组件。安装程序和卸载程序都将在安装或卸载完成时更新产品注册表。
如果是手动删除软件包,而不是使用卸载程序,则必须编辑产品注册表,使其正确反映系统上安装的软件。
清除位于以下位置的系统日志文件:
Solaris OS:/var/sadm/install/logs
Linux: /var/opt/sun/install/logs
在手动删除软件包后,这些日志文件可能没有正确反映系统的状态。
在卸载过程中,卸载程序将使用产品注册表文件来确定要卸载的内容:
在 Solaris OS 上:/var/sadm/install/productregistry
在 Linux 上:/var/opt/sun/install/productregistry
如果卸载程序失败,您可能需要在从备份副本恢复产品注册表之后重试。
如果手动删除软件包,产品注册表不会自动更新。可能会在以后运行卸载程序时遇到问题,因为产品注册表不再正确反映系统状态。在这种情况下,可以尝试重新安装,然后再次运行卸载程序。