Solaris 9 12/02 发行说明

第 2 章 Solaris 运行时问题

本章描述已知的运行时问题。

自本文档在 Solaris 9 12/02 Documentation CD 和 Solaris 9 12/02 Installation CD 的安装 Kiosk 上发布以来,本章增加了以下运行时错误说明。

智能卡错误

系统对智能卡没有响应 (4415094)

如果 ocfserv 终止并且显示被锁定,则不论插入还是取出智能卡,系统都保持锁定状态。

解决方法:按照以下步骤解除系统锁定状态。

  1. 远程登录到 ocfserv 进程终止的机器。

  2. 成为超级用户。

  3. 在终端窗口中键入以下命令,终止 dtsession 进程。


    # pkill dtsession
    
ocfserv 重新启动,智能卡登录并恢复功能。

智能卡控制台中的“编辑配置文件”菜单项不起作用 (4447632)

智能卡控制台中的“编辑配置文件”菜单项不能编辑位于 /etc/smartcard/opencard.properties 的智能卡配置文件。如果选择该菜单项,将出现一条警告信息,指出除非技术支持人员要求如此,否则不能继续执行此操作。

解决方法:不要使用智能卡控制台中的“编辑配置文件”菜单项。有关智能卡配置的信息,请参见《Solaris Smartcard Administration Guide》。

公用桌面环境 (CDE) 错误

x86: CDE 启动应用程序可能以 root-window 输入法式样显示 (4770994)

如果在 SunTM LX50 的中文语言环境中启动公用桌面环境 (CDE) 会话,则启动时执行的 CDE 应用程序可能以 root-window 输入法式样显示,而非预期的 over-the-spot 输入法式样。

解决方法:/usr/dt/config/Xsession.d/0020.dtims 脚本的结尾处添加 sleep 1 行并启动新的 CDE 桌面会话。

CDE 可移动介质自动运行功能被删除 (4634260)

临时从 Solaris 9 12/02 操作环境中删除了 CDE 桌面环境中的可移动介质自动运行功能。

解决方法:要使用 CD-ROM 或其它可移动介质卷的自动运行功能,必须执行以下操作之一:

SPARC: 如果在从命令行启动时指定了 FontList 选项,dtmail 会崩溃 (4677329)

如果在从命令行启动 dtmail 时指定了 FontList 选项,则 dtmail 在连接到 IMAP 服务器后会崩溃。请参见以下示例:


/usr/dt/bin/dtmail -xrm "Dtmail*FontList: -*-r-normal-*:"

显示以下错误信息:


段故障

此问题在 C 和 ja 语言环境中都会发生。

解决方法:在从命令行启动 dtmail 时,不要指定 FontList 选项。

使用 CDE 邮件程序显示带有长行的电子邮件时似乎挂起 (4418793)

如果尝试在任何 Solaris 9 12/02 Unicode 或 UTF-8 语言环境中阅读包含许多长行的电子邮件,CDE 邮件程序 (dtmail) 似乎挂起,电子邮件不会立即显示。

解决方法:选择以下解决方法之一。

Solaris PDASync 不能从桌面删除最后一项 (4260435)

当从桌面删除最后一项后,在同步手持设备时,该项会从手持设备恢复到桌面。例如,“日历”中的最后一个约会或“地址管理器”中的最后一个地址。

解决方法:在同步前从手持设备中手动删除最后一项。

Solaris PDASync 不支持与多字节国际化 PDA 设备之间的数据交换 (4263814)

如果您在 PDA 设备与 Solaris CDE 之间交换多字节数据,数据可能会在两种环境中都遭到破坏。

解决方法:在运行 SolarisTM PDASync 应用程序之前,使用 PDA 备份公用程序备份个人计算机上的数据。如果您意外地交换了多字节数据并破坏了该数据,请从备份中恢复数据。

系统管理错误

x86: BIOS 引导过程中按 F4 键不能引导服务分区 (4782757)

当引导具有服务分区并且已安装 Solaris 9 12/02(x86 平台版)操作环境的 Sun LX50 时,可以选择按 F4 功能键来引导服务分区。但按 F4 键后屏幕变为空白,而且系统无法引导服务分区。

解决方法:当显示“BIOS 引导”屏幕时,请勿按 F4 键。超时后,将显示“当前磁盘分区信息”屏幕,选择“部分#”列中与 type=DIAGNOSTIC 相对应的编号并按回车键。系统将引导服务分区。

在 Solaris 9 12/02 操作环境中不能始终生成 UltraSPARC II CP 事件信息 (4732403)

在 Solaris 9 12/02 操作环境中基于 UltraSPARC II 的系统上,不能始终生成伴随某些无法纠正的内存错误信息的 CP 事件信息。这些系统包括 Sun EnterpriseTM 10000 和 Sun Enterprise 6500/6000/5500/5000/ 4500/4000/3500/3000 系统。结果是用于标识失败 CPU 的某些信息不能始终显示。

解决方法:有关此问题的最新信息,请参见 SunSolve Web 站点 http://sunsolve.sun.com

Solaris WBEM Services 2.5 守护程序找不到 com.sun 应用程序编程接口提供者 (4619576)

Solaris WBEM Services 2.5 守护程序找不到写入 com.sun.wbem.provider 接口或 com.sun.wbem.provider20 接口的提供程序。即使您为写入这些接口的提供程序创建了一个 Solaris_ProviderPath 实例,Solaris WBEM Services 2.5 守护程序也找不到该提供程序。

解决方法:为使守护程序能够找到这样一个提供程序,请停止并重新启动 Solaris WBEM Services 2.5 守护程序。


# /etc/init.d/init.wbem stop

# /etc/init.d/init.wbem start

注意:

如果使用 javax API 开发提供程序,则不需要停止并重新启动 Solaris WBEM Services 2.5 守护程序,因为 Solaris WBEM Services 2.5 守护程序会动态识别 javax 提供程序。


一些 com.sun 应用程序编程接口方法调用在 XML/HTTP 传输协议下会失败 (4497393, 4497399, 4497406, 4497411)

如果选择使用 com.sun 应用程序编程接口而不是使用 javax 应用程序编程接口来开发 WBEM 软件,则只有 CIM 远程方法调用 (RMI) 受到完全支持。其它协议,如 XML/HTTP,不一定完全支持 com.sun 应用程序编程接口。

下表列出了在 RMI 下能够成功执行、但在 XML/HTTP 下不能成功执行的调用示例。

方法调用 

错误信息 

CIMClient.close()

NullPointerException

CIMClient.execQuery()

CIM_ERR_QUERY_LANGUAGE_NOT_SUPPORTED

CIMClient.getInstance()

CIM_ERR_FAILED

CIMClient.invokeMethod()

XMLERROR: ClassCastException

使用 Solaris 管理控制台安装和共享工具不能修改文件系统安装属性 (4466829)

Solaris 管理控制台安装和共享工具不能修改对系统很重要的文件系统(如 /(根)、/usr/var)上的安装选项。

解决方法:选择以下解决方法之一。

试图通过 WBEM 添加数据时发生 CIM_ERR_LOW_ON_MEMORY 错误 (4312409)

当内存不足时会显示以下错误信息:


CIM_ERR_LOW_ON_MEMORY

如果在运行通用信息模型 (CIM) 对象管理器时内存不足,则不能再添加其它项。必须重置 CIM 对象管理器系统信息库:

解决方法:要重置 CIM 对象管理器系统信息库,请按照以下步骤执行操作。

  1. 成为超级用户。

  2. 关闭 CIM 对象管理器。


    # /etc/init.d/init.wbem stop
    
  3. 删除 JavaSpacesTM 日志目录。


    # /bin/rm -rf /var/sadm/wbem/log
    
  4. 重新启动 CIM 对象管理器。


    # /etc/init.d/init.wbem start
    

    注意:

    当重置 CIM 对象管理器系统信息库时,将丢失数据存储中的任何专用定义。必须使用 mofcomp 命令重新编译包含这些定义的 MOF 文件。请参见以下示例:


    # /usr/sadm/bin/mofcomp -u root -p root-password your-mof-file
    

Solaris 卷管理器问题

Solaris 卷管理器的 metattach 命令可能会失败

如果 Solaris 卷管理器镜像了根 (/) 文件系统,并且该文件系统不是从柱面 0 开始的,则您附加的所有子镜像也不能从柱面 0 开始。

如果试图将从柱面 0 开始的子镜像附加到某个镜像,并且该镜像中最初的子镜像不是从柱面 0 开始的,则会显示以下错误信息:


不能向无标签的镜像附加有标签的子镜像

解决方法:选择以下解决方法之一。


注意:

缺省情况下,JumpStart 安装过程会在柱面 0 开始交换片,并从磁盘上的其它位置开始根 (/) 文件系统。常见的系统管理方式是从柱面 0 开始片 0。如果将缺省的 JumpStart 安装(其根在片 0,而不在柱面 0)镜像到第二个典型磁盘(其片 0 从柱面 0 开始),就会出现问题,从而导致试图附加第二个子镜像时产生错误信息。 有关 Solaris 安装程序缺省行为的详细信息,请参见《Solaris 9 安装指南》。


Solaris 卷管理器错误

metadetach 命令分离子镜像时会自动调整镜像的大小 (4678627)

如果使用 metadetach 命令从镜像中删除子镜像,则可能无法重新附加该子镜像。这是由于在分离子镜像后,镜像会自动调整大小。

解决方法:在使用 metadetach 命令分离子镜像之前,先附加一个与要分离的子镜像大小相同的子镜像。

Solaris 卷管理器的 metareplace -e 命令在磁盘被删除又被替换之后无法启用软分区 (4645781)

如果从系统中实际删除一个软分区的磁盘,然后又用新磁盘替换它,则 metareplace -e 命令无法启用该软分区。不论在发出 metareplace -e 命令启用软分区之前是否使用了 metarecover 命令,都会发生此故障。

解决方法:在新磁盘上重新创建软分区。


注意:

如果软分区是镜像或 RAID 5 的一部分,则使用不带 -e 选项的 metareplace 命令,用新的软分区来替换旧的软分区。


# metareplace dx mirror or RAID 5 old_soft_partition new_soft_partition

在发生故障的热备用磁盘被交换出之后,Solaris 卷管理器的 metahs -e 命令在铜缆存储箱上失败 (4644106)

如果遇到以下情况,metahs -e 命令可能会失败。

  1. 热备用设备出现问题,例如在使用 metaverify 测试公用程序时引起的错误。

  2. 在元设备上发生错误时,Solaris 卷管理器软件试图激活热备用。热备用被标记为 broken

  3. 系统被关闭。包含热备用的故障磁盘被同一位置的新磁盘替换。

  4. 当系统引导时,Solaris 卷管理器软件不能识别新的热备用。

  5. 使用 metahs -e 命令在新磁盘上启用热备用。

系统会显示以下信息:


警告:md:d0:热备用打开错误(不可用)

这是由于 Solaris 卷管理器软件内部不能识别交换到同一物理位置的新的热备用磁盘。Solaris 卷管理器软件继续显示系统中不再存在的磁盘的设备 ID。


注意:

在 Photon 或存储机箱上不会发生此类故障,因为替换磁盘时设备号也变了。


解决方法:选择以下解决方法之一。

如果逻辑设备名称不再存在,则 Solaris 卷管理器的 metadevadm 命令会失败 (4645721)

不能用通过 Solaris 卷管理器软件配置的驱动器来替换发生故障的驱动器。Solaris 卷管理器软件必须是第一次识别出替换驱动器。如果一个磁盘从 Photon 上的一个插槽实际移动到另一个插槽,则 metadevadm 命令会失败。这是由于该片的逻辑设备名不再存在。但是,该磁盘的设备 ID 仍然存在于元设备复本上。系统会显示以下信息:


检测到未命名的设备。请运行 'devfsadm && 
metadevadm -r 来解决此问题。

注意:

此时,您可以在新位置访问该磁盘。但是,可能需要使用旧的逻辑设备名来访问该片。


解决方法:将该驱动器实际移回原来的插槽。

Solaris 卷管理器的 metarecover 命令无法更新 metadb 名称空间 (4645776)

如果从系统中删除并替换物理磁盘,然后用 metarecover -p -d 命令向该磁盘中写入适当的软分区特定信息,会导致一个打开故障。该命令不能更新元设备数据库名称空间,使其反映磁盘设备标识的变化。这种情况会使建立在该磁盘上的每个软分区都产生一个打开故障。系统会显示以下信息:


打开错误

解决方法:在新磁盘上创建软分区,而不是发出 metarecover 命令来恢复软分区。


注意:

如果软分区是镜像或 RAID 5 的一部分,则使用不带 -e 选项的 metareplace 命令,用新的软分区来替换旧的软分区。


# metareplace dx mirror or RAID 5 old_soft_partition new_soft_partition

联网错误

在两个启用了过滤功能的 IP 节点之间配置多个隧道可能导致数据包丢失 (4152864)

如果在两个 IP 节点之间配置多个隧道,并启用 ip_strict_dst_multihoming 或其它 IP 过滤器,会导致数据包丢失。

解决方法:选择以下解决方法之一。

安全错误

解除 CDE 屏幕锁的锁定时会删除 Kerberos 5 版凭据 (4674474)

如果解除一个 CDE 会话的锁定,则所有缓存的 Kerberos 5 版 (krb5) 凭据都可能会被删除。结果是您可能无法访问各种系统公用程序。此问题在以下情况下发生。

如果发生此问题,会显示以下错误信息。


锁定屏幕:PAM-KRB5(鉴定):检验 TGT 与 host/host-name 时出错:
权限被重播缓存代码拒绝

解决方法:/etc/pam.conf 文件中添加非 pam_krb5dtsession 项。


dtsession auth requisite pam_authtok_get.so.1
dtsession auth required  pam_unix_auth.so.1

如果在 /etc/pam.conf 文件中设置了这些项,则缺省情况下不会运行 pam_krb5 模块。

cronatbatch 不能为锁定的帐户调度作业 (4622431)

在 Solaris 9 12/02 操作环境中,锁定的帐户被视为过期的或不存在的帐户。结果,cronatbatch 公用程序不能调度锁定帐户的作业。

解决方法:要使锁定帐户能够接受 cronatbatch 作业,请用字符串 NP(无口令)替换锁定帐户的口令字段 (*LK*)。

其它软件错误

SPARC: 在运行 Solaris 9 12/02 操作环境的系统上,Veritas Volume Manager 可能会失败 (4642114)

如果在运行 Solaris 9 12/02 操作环境的系统上用 Veritas Volume Manager 执行任务,vxddladm addjobvxddladm addsupport 公用程序可能会发生信息转储。

解决方法:按照以下步骤执行操作。

  1. 成为超级用户。

  2. 检验 /var/ld/ld.config 文件和 /usr/bin/crle 公用程序是否在该系统上。

  3. 在终端窗口中键入以下命令。


     # /usr/bin/cp /var/ld/ld.config /var/ld/ld.config.save
     # /usr/bin/crle -E LD_LIBRARY_PATH=/usr/lib
     # appropriate-vxddladm-command
     # /usr/bin/mv /var/ld/ld.config.save /var/ld/ld.config
    

Documentation CD 问题

iPlanet Directory Server 5.1 文档链接不能正常使用

在 iPlanetTM Directory Server 5.1 Collection (Solaris Edition) - zh 中,标题为“DocHome”的链接以及在不同的书之间的链接不能正常使用。如果选择这些链接,浏览器会显示“找不到”错误。

解决方法:要在系统上的 iPlanet Directory Server 5.1 文档之间导航,请转至 http://docs.sun.com 上的 iPlanet Directory Server 5.1 Collection (Solaris Edition) - zh 页面。单击指向要查看的文档的链接。

删除其它文档软件包必须有 SUNWsdocs 软件包

如果您删除了 SUNWsdocs 软件包,然后试图删除其它文档软件包,删除将会失败。这是由于安装任何文档集时都会一起安装 SUNWsdocs 软件包,并由其提供浏览器入口点。

解决方法:如果删除了 SUNWsdocs 软件包,则从文档介质重新安装 SUNWsdocs 软件包,然后删除其它文档软件包。

Documentation CD 错误

只能通过 C 语言环境来使用欧洲语言环境 PDF 文档 (4674475)

在 Solaris 9 12/02 操作环境和其它基于 UNIX 的系统中,Solaris 9 12/02 Documentation 1 of 2 CD 上的 PDF 文档不能在以下欧洲语言环境中访问。

这是由于 Adobe Acrobat Reader 的限制。有关此问题的详细信息,请参见 Adobe Technote 站点 http://www.adobe.com:80/support/techdocs/294de.htm

解决方法:选择以下解决方法之一。

删除 Solaris 9 12/02 文档软件包可能会意外卸载某些 Solaris 9 12/02 文档集 (4641961)

如果发生以下情况,系统中某些 Solaris 9 12/02 文档集可能会被意外删除。

  1. 系统上同时安装了 Solaris 9 12/02 Documentation 1 of 2 CD 和 Solaris 9 12/02 Documentation 2 of 2 CD。

  2. 然后使用 prodreg 公用程序或 Solaris 9 12/02 Documentation CD 安装程序来删除某些文档软件包。

Solaris 9 12/02 Documentation 1 of 2 CD 和 Solaris 9 12/02 Documentation 2 of 2 CD 包含三个公共的文档集。如果从 Solaris 9 12/02 Documentation 1 of 2 CD 或 Solaris 9 12/02 Documentation 2 of 2 CD 安装中删除包含这些文档集的软件包,该软件包会同时从两个安装中删除。

下表列出了可能会被意外删除的软件包。

表 2–1 两张 Solaris 9 12/02 Documentation CD 上都包含的 Solaris 9 12/02 文档软件包

HTML 软件包名称 

PDF 软件包名称 

文档集说明 

SUNWaadm

SUNWpaadm

Solaris 9 System Administrator Collection  

SUNWdev

SUNWpdev

Solaris 9 Developer Collection 

SUNWids

SUNWpids

iPlanet Directory Server 5.1 Collection - zh 

解决方法:选择以下解决方法之一。

本地化错误

x86: 使用阿拉伯文和希伯来文语言环境时崩溃 (4770382)

如果使用 Solaris 9 12/02(x86 平台版)操作环境登录到阿拉伯文或希伯来文语言环境,dtlogin 将崩溃、重新启动并显示登录提示。显示以下错误信息:


X 服务器在显示以下信息时无法启动:0... 

如果在命令行将语言环境设置为 ar 或 he 之后尝试启动应用程序,该应用程序可能崩溃并发生信息转储。

解决方法:要避免此问题,请应用修补程序 114034-01,此修补程序可以从 http://sunsolve.sun.com 获得。

AltGraph-E 在 en_US.UTF-8 语言环境中不能生成欧元字符 (4633549)

en_US.UTF-8 语言环境中,不能通过同时按 AltGraph 和 E 键输入欧元字符。

解决方法:选择以下解决方法之一。

SPARC: Shift-U 在阿拉伯文语言环境中不能按预期方式工作 (4303879)

要在阿拉伯文语言环境中生成带音调符号的字符,请键入阿拉伯字符,然后按 Shift-U。

在欧洲 UTF-8 语言环境中排序不能正常工作 (4307314)

在欧洲 UTF-8 语言环境中排序不能正常工作。

解决方法:FIGGS UTF-8 语言环境中尝试排序前,请把 LC_COLLATE 变量设置为相等的 ISO–1 值。


# echo $LC_COLLATE
>  es_ES.UTF-8
# LC_COLLATE=es_ES.IS08859-1
# export LC_COLLATE

然后开始排序。

在本地化版本中,缺省管理控制台的 GUI 为英文 (4761017)

由于管理 GUI 和 asadmin CLI 上的管理服务器实例没有语言项,因此新安装的本地化版本或新创建的域实例将以英文显示。

解决方法:在 server.xml 文件中手动设置语言环境项。

asadmin 帮助在本地化的语言环境中不会选择本地化的手册页 (4758671)

当用户安装 Application Server 7 的本地化版本时,Application Server 7 的二进制软件包中并未包含本地化的手册页。

解决方法:

  1. 切换到 C 语言环境,获得英文版的手册页。

  2. 使用有关 asadmin 公用程序手册页的联机帮助或管理员指南。

Sun ONE Application Server 错误

缺省浏览器与 Sun ONE Application Server 7 不兼容 (4741123)

通过 Solaris 9 12/02 操作环境的缺省浏览器使用 Sun ONE Application Server 管理 UI 时,会显示以下错误信息:


不支持浏览器:Netscape 4.78

建议将浏览器升级到 Netscape 4.79 或 Netscape 6.2 (或更高版本)
来运行 Sun One Application Server 管理 UI。如果不升级并继续进行
操作,将导致性能降低或发生不可预知的结果。

解决方法:使用 /usr/dt/bin/netscape6,而不要使用 /usr/dt/bin/netscape

SPARC: 某些 Netscape Navigator 版本不支持编辑存取控制列表 (4750616)

某些 Netscape NavigatorTM 版本不支持编辑 Sun ONE Application Server 存取控制列表 (ACL)。如果在使用 Netscape Navigator 6.x 或 Netscape Navigator 7.x 版本时试图编辑 ACL 条目,则可能偶尔会遇到失效问题。

例如:

解决方法:选择以下解决方法之一。

使用 Oracle 9.2 客户端访问 Oracle 9.1 数据库可能会导致数据被破坏 (4707531)

使用 Oracle 9.2 客户端访问 Oracle 9.1 数据库时,如果数字列出现在时间标记类列的后面,可能会导致数据遭到破坏,

这可能是由于使用 ojdbc14.jar 文件访问 Oracle 9.1 数据库造成的。应用修补程序可能有助于解决 32 位 Solaris 机器(运行 Oracle 9.1 数据库)上的此类问题。这种适用于 Oracle 的 JDBCTM 驱动程序在 JDKTM 1.4 上运行。

解决方法:从 Oracle 的 Web 站点下载用于错误 2199718 的修补程序并将其应用到服务器中。

SPARC: 当查看从命令行创建的 Persistence Manager Factory 资源时,管理界面报告检验器错误 (4733109)

使用命令行界面创建 Persistence Manager Factory 资源时报告检验器错误。在 Sun ONE Application Server 管理界面中查看资源时,会显示以下错误。


ArgChecker 失败:jndiName 验证失败,对象必须非空

解决方法:按照以下步骤创建新的 Persistence Management Factory 资源。

  1. 使用数据源信息创建 jdbc 连接池,连接到数据库。

  2. 通过 Java Naming and Directory InterfaceTM (J.N.D.I.) 查找创建 jdbc 资源,使连接池可用。

  3. 使用第 2 步创建的 jdbc 资源来创建持久性管理资源。

SPARC: server.xml 文件中 iiop-listener 元素的地址属性不支持 any 值 (4743366)

server.xml 文件中 iiop-listener 元素的地址属性中的 any 值允许收听系统上所有可用的接口,此支持包括 IPv4 和 IPv6 接口。但是,Sun ONE Application Server 缺省配置在 iiop-listener 元素中使用 0.0.0.0 地址值,此缺省配置不支持收听 IPv6 接口,而仅收听系统上所有的 IPv4 接口。

解决方法:server.xml 文件 iiop-listener 元素的地址属性中使用 :: 值来收听系统上所有的 IPv4 和 IPv6 接口。

SPARC: 转换到启用 SSL 的环境时,Application Server 无法重新启动 (4723776)

如果在安装认证并启用安全设置后重新启动 Sun ONE Application Server,重新启动将失败。将显示一条信息,说明服务器无法接收口令。

如果不启用 SSL,口令将不被缓存,这会导致重新启动失败。restart 命令不支持从非 SSL 模式到启用 SSL 模式的切换。


注意:

这个问题只在服务器首次重新启动时发生,以后的重新启动则恢复正常。


解决方法:选择以下解决方法之一。

SPARC: Application Server 在动态重新装入过程中可能会崩溃 (4750461)

如果应用程序有许多 Enterprise JavaBeansTM 组件,服务器在动态重新装入应用程序的过程中可能会崩溃。动态重新装入功能用于在开发环境中对应用程序的小更改进行快速测试。此崩溃是由于试图使用过多的文件描述符造成的。

解决方法:按照以下步骤执行操作。

  1. 按以下格式向 /etc/system 文件添加行,加大文件描述符的限制值。

    • set rlim_fd_max=8192

    • set rlim_fd_cur=2048

    可以将限制值设置得高些或低些,这取决于应用程序的大小。

  2. 重新引导系统。

如果系统的缺省编码不是 UTF-8,控制台输出会被破坏 (4757859)

如果系统的缺省编码不是 UTF-8,则在 Application Server 的输出中,多字节字符的显示可能不正确。

解决方法:在浏览器中打开 server.log 文件。

管理界面别称列表中不显示外部认证别称 (4725473)

如果通过 Sun ONE Application 管理界面安装外部认证,则当您试图使用安装在外部加密模块上的认证为 http 收听者启用 SSL 时,会遇到问题。尽管能够成功安装认证,但认证别称并不显示在管理界面中。

解决方法:按照以下步骤执行操作。

  1. 以管理员用户身份登录到安装有 Sun ONE Application Server 软件的系统中。

  2. 使用 asadmin 命令将 http 收听者链接到安装在外部加密模块上的认证。有关 asadmin 命令的详细信息,请参见 asadmin(1AS) 手册页。


    # asadmin create-ssl --user admin user--password password --host host name \
    --port port --type http-listener --certname nobody@apprealm:Server-Cert \
    --instance instance --ssl3enabled=true \
    --ssl3tlsciphers +rsa_rc4_128_md5 http-listener-1

    以上命令在认证与服务器实例之间建立了链接,但该命令并不安装认证,认证是通过管理界面安装的。


    注意:

    尽管已将认证和 http 收听者链接起来,但 http 收听者只在非 SSL 模式中进行收听。


  3. 启用 http 收听者在 SSL 模式中进行收听,使用下面的命令:


    # asadmin set --user admin user --password password --host host name \
    --port port server1.http-listener.http-listener-1.securityEnabled=true

    以上命令将服务器实例的收听状态从非 SSL 切换到 SSL。执行完以上步骤后,认证将显示在管理界面中。

现在您可以根据需要使用管理界面来编辑 http 收听者。

SPARC: flexanlg 命令可能导致打开失败错误 (4742993)

如果在 Solaris 9 12/02 操作环境中运行 Sun ONE Application Server 软件,并使用 /usr/appserver/bin 中的 flexanlg 命令,则会显示打开失败错误。


ld.so.1:/usr/appserver/bin/flexanlg:严重:libplc4.so:打开失败:
文件不存在或目录已被删除

解决方法:按照以下步骤执行操作。

  1. 将下面的条目添加到 LD_LIBRARY_PATH 文件中。

    /usr/lib/mps

  2. 运行 flexanlg 命令。

    % /usr/appserver/bin/flexanlg

仅支持 IPv6 的客户机无法连接到 Application Server (4742559)


注意:

如果您的网络中未使用 IPv6,则不会出现这个问题。


缺省情况下,Sun ONE Application Server 7 实例和 Admin Server 实例使用 IPv4。所有能运行 Sun ONE Application Server 的操作环境都支持 IPv4。对于支持 IPv6 的平台,为了保持一致性,需要更改 Sun ONE Application Server 的配置。


注意:

如果要更改这些配置,您必须确保系统支持 IPv6。如果将 IPv6 相关的配置应用到仅支持 IPv4 的系统,Application Server 实例可能无法启动。


解决方法:执行以下配置更改:

  1. 启动管理服务器。

  2. 通过在浏览器中连接到管理服务器 HTTP 主机或端口,来启动管理控制台。

  3. 选择要配置 IPv6 的服务器实例,例如 server1。

  4. 在树视图中扩展 HTTP 收听者节点。

  5. 选择要配置 IPv6 的 HTTP 收听者,例如 http-listener1。

  6. 在“General”节中,将“IP Address”字段的值更改为 ANY

  7. 在“Advanced”节中,将“Family”字段的值更改为 INET6

    将“Family”字段设置为 INET6 不会禁用 IPv4 功能,除非选定一个 IPv6 地址作为 IP 地址。如果 IP 地址设置为 ANY,则匹配所有的 IPv4 和 IPv6 地址。

  8. 单击“Save”。

  9. 从左侧的面板选择您的服务器实例。

  10. 单击“Apply Changes”。

  11. 单击“Stop”。

  12. 单击“Start”。

    服务器将重新启动并实现您所做的更改。

修改的样例直到重新部署后才被更新 (4726161)

如果在进行小更改并重新封装应用程序后试图多次部署样例,将显示以下错误信息。


已经部署

这个问题影响到大多数样例,因为这些样例都使用 Ant 公用程序和 common.xml 文件,而它们都具有 deploy 目标。因此,这种组合用法将应用程序的部署与资源的登记混合起来。

解决方法:选择以下解决方法之一。

SPARC: 非零事务设置导致本地事务处理速度降低 (4700241)

本地事务管理器不支持具有非零的超时值设置的事务。如果将事务服务元素中的超时秒数属性设置为大于 0 的值,则所有本地事务都被作为全局事务处理。超时值为 0 意味着如果事务管理器未收到参与的数据源返回的信息,事务管理器将一直等待。


注意:

如果数据源驱动程序不支持全局事务,本地事务可能失败。


解决方法:将超时秒数复位为缺省值 0。

未启动 Oracle JDBC 驱动程序优化 (4732684)

要通过容器管理持久性 (CMP) bean 利用 Oracle JDBC 优化,必须在 server.xml 文件的 classpath-suffix 属性中指定 classes12.zip 文件。请勿将 classes12.zip 文件放置在 instance/lib/ 目录(第三方库的缺省目录)中。

解决方法:classes12.zip 文件添加到 server.xml 文件的 classpath-suffix 属性中。

动态重新装入和调用应用程序的过程中发生访问权限问题 (4756981)

如果管理服务器从属于根用户,而服务器实例从属于非根用户,则在动态重新装入和调用应用程序的过程中可能会发生访问权限问题。

解决方法:在部署和重新部署模块或应用程序(具有或不具有预编译选项)之后,将以下目录的拥有者从根用户更改为非根用户,非根用户与实例的拥有者相同。

根据应用程序的类型,目录拥有权的更改应该递归应用到以下列表中的各个目录:

  1. 成为超级用户。

  2. 根据实际情况,对每个目录键入以下命令。


    # chown -R non-root-instance-owner directory-name
    

由于 DNS 地址查找 IPv6 地址失败,RMI-IIOP 客户机不能使用 IPv6 地址 (4743419)

如果 DNS 查找 IPv6 地址失败,则远程方法调用因特网 Inter-ORB 协议 (RMI-IIOP) 的客户机不能使用 IPv6 地址。

解决方法:应该在部署站点中设置域名服务 (DNS),以便查找 IPv6 地址。

如果应用程序或系统不使用 UTF-8 编码,查看事件日志的 Only show entries with 字段中的值将遭到破坏 (4763655)

如果用户在 Only show entries with 字段中键入多字节字符并查找事件日志,则显示查找结果时 Only show entries with 字段中的值被破坏。这是由于信息格式从 UTF-16 转换到 UTF-8 造成的。

解决方法:无。

Sun ONE Application Server 安全错误

当根允许非根用户进行根存取时,Application Server 会启动所有实例 (4780076)

Sun ONE Application Server 作为 Solaris 的一部分进行安装时,Application Server 启动时会出现多个问题:

在安装 Sun ONE Application Server 的过程中,会安装 /etc/init.d/appserv 脚本以及 /etc/rc*.d/ 目录中 S84appservK05appserv 脚本的符号链接。这些脚本导致所有应用服务器实例和管理服务器实例(定义为应用程序服务器安装的一部分)随着 Solaris 系统的启动和停机而自动启动和停止。

/etc/init.d/appserv 脚本包含以下代码段:

case "$1" in
'start')
    /usr/sbin/asadmin start-appserv
    ;;
'stop')
    /usr/sbin/asadmin stop-appserv
    ;;

执行 asadmin start-appserv 命令导致管理服务器实例和(所有管理域中定义的)所有应用程序服务器实例在 Solaris 系统启动过程中启动。由于系统启动和停机脚本是作为根执行的,所以每个应用程序服务器和管理服务器实例的启动脚本也作为根执行。实例级启动脚本的名称为 startserv,位于 instance-dir/bin/startserv 中。因为非根用户也可以拥有实例,所以非根用户可以修改 startserv 脚本,作为根用户执行命令。

如果实例使用具有特权的网络端口,则该实例的 startserv 脚本必须作为根执行。但是,在根用户最初启动实例后,实例的配置中通常会设置 run as user,强制使实例以指定的用户运行。

解决方法:根据您的环境,执行以下解决方法之一。

启动注意事项:要自动启动特定的应用程序服务器管理域或特定的应用程序服务器实例,在修改 Solaris 操作环境启动脚本时,请注意以下事项。

有关通过 asadmin 命令行界面使用 startupshutdown 命令的详细信息,请参见《Sun ONE Application Server 7 Administrator's Guide》。

Sun ONE Directory Server(以前的 iPlanet Directory Server)问题

设置问题

在安装过程中键入独特名称时,使用 UTF-8 字符集编码。其它编码不受支持。安装操作不会将数据从本地字符集编码转换为 UTF-8 字符集编码。用于输入数据的 LDIF 文件必须也使用 UTF-8 字符集编码。输入操作不会将数据从本地字符集编码转换为 UTF-8 字符集编码。

架构问题

Sun Open Net Environment (Sun ONE) Directory Server(以前的 iPlanet Directory Server)5.1 提供的架构与 RFC 2256 中为 groupOfNames groupOfUniquenames 对象类指定的架构不同。在提供的架构中,memberuniquemember 属性类型是可选的。RFC 2256 指定在各自的对象类中必须至少存在一个这些类型的值。

aci 属性是一个可操作属性,除非您明确请求,否则在搜索中不会返回该属性。

复制问题

目前不支持通过 WAN 执行多主控复制。

服务器插件问题

Sun ONE Directory Server 5.1 提供 UID Uniqueness 插件。缺省情况下,该插件未被激活。要确保特定属性的属性唯一性,请为每个属性创建一个新的 Attribute Uniqueness 插件实例。有关 Attribute Uniqueness 插件的详细信息,请参见 http://docs.sun.com 中的《 iPlanet Directory Server 5.1 系统管理员指南》。

现在,Referential Integrity 插件在缺省情况下是关闭的。要避免解析循环冲突,在多主控复制环境中应只在一个主控复制中启用 Referential Integrity 插件。在发出链式请求的服务器上启用 Referential Integrity 插件之前,应分析性能资源、时间和完整性需求。完整性检查会消耗大量内存和 CPU 资源。

服务的角色和类问题

nsRoleDN 属性用于定义角色。不应该将此属性用于计算用户输入中的角色成员关系。在计算角色成员关系时,请查看 nsrole 属性。

索引问题

如果 VLV 索引涉及多个数据库,则 VLV 索引不能正确使用。

Sun ONE Directory Server 错误

不能通过控制台取消激活用户 (4521017)

如果启动 Sun ONE Directory Server 5.1 控制台并创建非激活的新用户或新角色,则新创建的用户或角色没有被取消激活。不能通过控制台创建非激活的用户和角色。

解决方法:要创建非激活的用户或角色,请按照以下步骤执行操作:

  1. 创建新用户或新角色。

  2. 双击新创建的用户或角色,或者选择新创建的用户或角色。在“对象”菜单中,单击“特性”项。

  3. 单击“帐户”选项卡。

  4. 单击“取消激活”按钮。

  5. 单击“确定”。

新创建的用户或角色被取消激活。

不能用包含空格的根后缀来配置目录 (4526501)

如果在配置 Sun ONE Directory Server 5.1 时指定了包含空格的基本 DN,例如 o=U.S. Government,C=US,则生成的 DN 被截断为 Government,C=US。在配置时,DN 应该输入为 o=U.S.%20Government,C=US

解决方法:要更正基本 DN 项,请按照以下步骤执行操作。

  1. 在控制台的“服务器和应用程序”选项卡的左侧导航窗格中选择顶级目录项。

  2. 编辑“用户”目录子树字段中的后缀。

  3. 单击“确定”。

口令策略信息在服务器之间不同步 (4527608)

如果在非主控目录服务器上更新口令策略信息,该信息不会复制到所有其它服务器上。这种信息包括帐户锁定。

解决方法:在每台服务器上手动管理口令策略信息。

更改用户口令后帐户锁定仍然有效 (4527623)

如果帐户锁定有效,并且用户口令被更改,则帐户锁定仍然有效。

解决方法:复位 accountUnlockTimepasswordRetryCountretryCountResetTime 锁定属性来解除帐户的锁定。

在安装后立即执行控制台备份会失败 (4531022)

如果您安装 Sun One Directory Server 5.1,启动控制台,用 LDIF 文件初始化目录,然后备份服务器,则控制台会报告备份成功,但实际上备份失败。

解决方法:在初始化数据库之后,从控制台执行以下任务:

  1. 停止服务器。

  2. 重新启动服务器。

  3. 执行备份。

服务器在规格化 DN 属性时忽略区分大小写语法 (4630941)

您不能使用 LDAP 命名服务来创建除大小写不同以外完全相同的自动安装路径名,因为这会导致非唯一的路径名。如果命名属性用区分大小写的语法来定义,并且已经存在一个名称相同(但大小写不同)的项,则目录服务器不允许创建该项。


注意:

/home/foo/home/Foo 路径不能同时存在。


例如,如果存在 attr=foo,dc=mycompany,dc=com 项,服务器就不允许创建 attr=Foo,dc=mycompany,dc=com。此问题的必然结果是在使用 LDAP 命名服务时,自动安装的路径名必须唯一(不区分大小写)。

解决方法:无。

在输出、备份、恢复或创建索引过程中停止服务器会导致服务器崩溃 (4678334)

如果服务器在输出、备份、恢复或创建索引的过程中停止,则服务器会崩溃。

解决方法:在执行这些操作的过程中不要停止服务器。

复制无法使用自签名认证 (4679442)

如果您试图通过安全套接字层 (SSL) 将复制配置为使用基于认证的鉴别,则存在以下任一条件时,复制不能工作。

解决方法:无。