本章描述已知的运行时问题。
当本文档出版于 Solaris 8 10/01 文件 CD 和 Solaris 8 10/01 安装 CD 中的安装 Kiosk 时, 以下运行时错误的描述已经加入本章。
本产品的名称是 Solaris 8 10/01, 但是代码和路径或软件包路径名称可能使用 Solaris 2.8 或 SunOS 5.8。请总是遵循编写的代码或路径。
如果系统在启动时没有附带重新配置选项并且没有连接 USB 键盘或鼠标,不会自动附加 USB 驱动程序。系统不会认可热插 USB 设备。
解决办法:要使系统认可热插 USB 设备,选择以下解决办法中的一种。
在 /etc/system 中添加下列行然后重新启动系统。
forceload:drv/uhci |
在命令行中键入下列命令。
# devfsadm -i uhci |
更多信息,请参见 devfsadm( 1M)。
当热拔 USB 音频设备时,到 /dev/audio 的链接中断。其结果,某些音频应用程序可能不认可音频设备,包括在主板上的音频设备。重新启动系统或热插该 USB 音频设备不会有效。
成为超级用户。
在命令行中键入下列命令,校正中断的链接。
# rm /dev/audio* # /usr/sbin/devfsadm -c audio |
更多信息,请参见 devfsadm( 1M)。
附加 USB 驱动程序后,第三方 USB 扬声器可能不发声。提高扬声器音量或热插该设备可能不会有效。
解决办法:重复开关该 USB 扬声器电源。
如果您更改了智能卡身份验证缺省设置,而且没有包括 PIN 身份验证机制,则对智能卡的访问将被拒绝。随后的身份验证机制也无法访问,智能卡用户将无法登录。
不要修改缺省身份验证设置。
如果您修改了缺省身份验证设置,则必须包括 PIN 身份验证机制并对它进行相应的配置。
如果ocfserv 终止而且显示被锁定,则不论插入还是取出智能卡,系统都将保持锁定状态。
使用 rlogin 连接到 ocfserv 进程终止的系统上。
在终端窗口中输入以下命令,终止 dtsession 进程。
% pkill dtsession |
智能卡管理控制台中的"Edit Configuration File"菜单项不能编辑位于 /etc/smartcard/opencard.properties 的智能卡配置文件。如果选择该菜单项,将出现一条警告消息,指出只有经技术支持人员请求才能继续。
解决办法: 不要使用智能卡管理控制台中的"Edit Configuration File"菜单项。有关智能卡配置的信息,请参见 Solaris Smart Cards Administration Guide
下列情况下,在 Solaris 8 操作环境中编译 Motif 程序时会出现问题。当链接到一个在 Solaris 2.4、 2.5、 2.5.1 或 2.6 操作环境中被编译过的共享库时,旧的库仍在使用 Motif 应用程序设计接口 (API)。
Motif 程序使用 Motif 2.1 版而旧的共享库使用 Motif 1.2 版。发生核心转储。这不是二进制兼容性问题,因为在 Solaris 2.4、2.5、2.5.1 或 2.6 操作环境中编译的应用程序应当能够在 Solaris 8 操作环境中正常运行。
解决办法:如果您有一个直接链接到 Motif 库的旧的共享库,并且要在 Solaris 8 操作环境中编译同时链接到 Motif 和旧的共享库的程序,请使用以下行来编译:
cc foo.c -o program -DMOTIF12_HEADERS -I/usr/openwin/include \ -I/usr/dt/include -lXm12 -lXt -lX11 |
该行中 program 是您正在编译的程序名称。
在一定情况下,OpenWindowsTM 文件管理器无法显示列有软盘内容的文件管理器视图。当在连有 SCSI 可删除媒体设备的系统中插入软盘时会出现该问题。当在文件管理器中"文件"菜单中选择 "检查软盘"时,文件管理器将软盘安装到 /floppy 目录,但无法显示列有软盘内容的文件管理器视图。
解决办法:选择以下解决方法之一。
要查看软盘的内容,请执行这些步骤:
单击文件管理器图标路径中的 / 文件夹。
双击 / 显示窗口中的 floppy 文件夹。
双击 /floppy 显示窗口中的 floppy0 文件夹。
要格式化软盘,请执行以下步骤:
卸载软盘。
% volrmmount -e floppy0 |
格式化该软盘。
% fdformat floppy0 |
要在软盘上创建一个新的文件系统,请执行以下步骤:
如果您已经卸载了软盘,请转至此解决方法的第 2 步。
要弹出软盘,请使用 eject 命令。
% eject floppy0 |
要防止此问题,请应用修补程序 109464-01。
当从桌面删除最后一项后,在同步手持设备时,该项会从手持设备恢复到桌面。在"日历"中的最后约会或 "地址管理器"中的最后地址是这些被删除后又被恢复的项的实例。
解决办法:在同步前从便携设备中手动删除当您同步便携设备时,此最后一个项目会从便携设备恢复到桌面系统中一项。
如果您在 PDA 设备与 Solaris CDE 之间交换多字节数据,数据可能会在两种环境中都遭到破坏。
解决办法:在运行 PDASync 应用程序之前,使用 PDA 备份公用程序来备份个人计算机上的数据。如果您意外地交换了多字节数据并破坏了该数据,请从备份中恢复数据。
在Solaris 8 7/01 或 10/01 操作环境中远程显示 Solaris 管理控制台时,在控制台中打开对话框会导致控制台,包括对话框挂起。
解决办法:在本地系统上使用 Solaris 管理控制台连接和管理运行 Solaris 8 7/01 或 10/01 操作环境的系统。请遵循以下步骤执行。
关闭挂起的控制台窗口。
在本地系统中启动 Solaris 管理控制台。
在控制台菜单中选择"打开工具箱"。
单击"服务器工具箱"标签并选择或键入要管理的远程系统的名称。
单击"打开"按纽。
现在可以使用控制台管理远程系统。
Solaris 操作环境中 WBEM HTTP 服务不能自动启动。如果想使用 HTTP 连接到 WBEM,必须手工启动 WBEM HTTP 服务。
解决办法: 要人工启动 WBEM HTTP 服务,按以下步骤操作。
成为超级用户。
终止 WBEM 服务器(如果它在运行的话)。
# /etc/init.d/init.wbem stop |
设置类路径包括以下 .jar 文件。
# CLASSPATH=/usr/sadm/lib/wbem/cimapi.jar:/usr/sadm/lib/xml.jar: \ /usr/sadm/lib/wbem/cimom.jar # export CLASSPATH |
启动 HTTP 服务。
# java com.sun.wbem.client.HttpService & |
启动 Common Information Model (CIM) Object Manager 服务。
# /usr/sadm/lib/wbem/wbemconfig & |
如果某 Solaris 提供程序产生提示,而且类名称被设为大写,则事件发送将失败。
解决办法: 使用大写字符定义指示类名称。
如果您运行 flarcreate 命令时同时使用 -e 和 -E 选项,则会遇到一个错误。系统会显示以下消息:
ERROR: Options-D and -f are mutually exclusive |
消息应该显示如下:
ERROR:Options -E and -e are mutually exclusive |
解决办法:忽略此错误消息。不要同时使用 -e 和 -E 选项。
从前面板选择"帮助"->"信息"后,会返回旧文件的列表。正确的文件是 S8FCSreleasenotes。
当内存不足时会显示以下错误消息:
CIM_ERR_LOW_ON_MEMORY |
解决办法:要重置 CIM 对象管理器系统信息库,按下列步骤操作。
成为超级用户。
关闭"CIM 对象管理器":
# /etc/init.d/init.wbem stop |
删除 JavaSpaces 日志目录。
# /bin/rm -rf /var/sadm/wbem/logr |
重新启动"CIM 对象管理器"。
# /etc/init.d/init.wbem start |
您将丢失数据仓库中所有的所有权定义。您必须使用 mofcomp 命令重新编译包含这些定义的 MOF 文件。例如:
# /usr/sadm/bin/mofcomp -u root -p root_password your_mof_file |
Java 插件 1.2 是缺省插件,它运行 Java 2 applet 但不能运行所有 Java 1.1 applet。若需要 Java 插件 1.1,可从 http://www.sun.com/solaris/netscape 下载。
若选择在一个系统上同时安装 Java 插件 1.1 和 Java 插件 1.2,就必须遵循关于如何安装 Java 插件 1.1 的提示,并随后相应地配置环境。
这个过程在 Java Plug-in for Solaris User's Guide的" Installing Java Plug-in "一节中有摘要叙述,该用户指南可从 http://www.sun.com/solaris/netscape/jpis/usersguide_java_plugin.html 获得。
缺省情况下,Solaris ata 设备驱动程序的 DMA 功能对于 ATA/ATAPI 设备是禁用的。
禁用该功能的目的是为了避免在某些不能充分支持 ATA/ATAPI 设备的 DMA 的系统上出现问题。绝大多数问题都与系统的 BIOS 有关。
在安装 Solaris 8 操作环境后,要启用(或禁用)ata 驱动程序的 DMA,请执行下列操作:
从引导软盘或安装 CD(若系统支持 CD-ROM 引导)上运行"Solaris(Intel 平台版本)设备配置助理"。
在使用引导软盘引导时,新的 ata-dma-enabled 的属性值将保留在此软盘上。因此,再次使用该引导软盘时,已经更改的值便能生效。
按 F2_Continue 扫描设备。
按 F2_Continue 显示引导设备的列表。
按 F4_Boot Tasks 并且选择"查看/编辑 属性设置"
按 F2_Continue。
将启用 ata-dma 的属性的值改为 1 来启用 DMA(其值为 0 时禁用 DMA):
从列表中选择启用 ata-dma 的属性并按 F3_Change。
键入 1 并按 F2_Continue 以启用(键入 0 并按 F2_Continue 以禁用)。
按 F2_Back,再按 F3_Back 来返回到"引导 Solaris"菜单。
选择安装要使用的设备(网络适配器或 CD-ROM 驱动器)并按下 F2_Continue。
如果启用 DMA 后发生问题,通过设置 ata-dma-enabled 属性为 0 来禁用 DMA 并且按上述程序操作。 用从硬件生产商提供的最新版 BIOS 升级系统,然后重新启用 DMA。
若 ab2admin 命令失败,则错误消息中还会包括除 command failed 以外的其他信息。例如,它可能还包括 path not found 或 invalid ID 等信息。
解决办法:如果显示 command failed 消息,请查明操作是否真的失败了。例如,若您提交的命令本应该删除 AnswerBook2TM 数据库中的一个集合,请键入以下命令来验证该集合是否仍显示在此数据库中:
# ab2admin -o list |
在 AnswerBook2 服务器启动期间,ab2cd 脚本可能显示以下不正确的错误消息。
sort: can't read /tmp/ab1_sort.XXX: No such file or directory |
此错误消息说明 ab2cd 脚本未找到 CD 上的任何 AnswerBook(显示 PostScriptTM)集合。
解决办法:忽略此错误消息。
请执行下列步骤来使用字体下载程序从任何非 ISO8859-1 语言环境打印。
登录到 CDE。
在命令行键入 fdl 以启动字体下载程序。
通过从打印机菜单选择"添加"来指定打印机。
从"下载"菜单选择"字体束"。
于是字体束便被下载到指定的打印机,具体是什么字体束取决于打印所需的代码集。
UTF-8 版本的语言环境,使用标准组合键 ALTGr+E,存取欧元符号。
解决办法:登录到任何 ISO8859-15 语言环境,然后使用 Alt+E 存取欧元符号。
由于 LucidaSansLat4 字体别名不存在,从任何 UTF-8 语言环境中启动 Java 应用程序时都可能出现相关的警告消息。
解决办法:登录到等效的 ISO-1 语言环境,然后启动 Java 应用程序。
一些死键组合在 CDE 中不能正常工作。此外,希腊语言环境的"日历管理器"中的月份名称也不能正常工作。
若您在部分语言环境中使用日历管理器时尝试打印扩展字符,则扩展字符不能正确打印。
在en_US.UTF-8 阿拉伯文输入状态下运行的应用程序或窗口与在 ar_EY.ISO8859-6 阿拉伯文输入状态下运行的应用程序或窗口之间无法剪切和粘贴阿拉伯文本。
在某一欧洲语言环境的任何 CDE 应用程序中用鼠标右键单击时,"附加"下拉式菜单都不显示任何选项。
en_US.UTF-8 和欧洲 UTF-8 语言环境已经实现了用于输入希伯来文、阿拉伯文和泰文的复杂文本语言 (CTL) 支持,但 ja_JP.UTF-8、ko.UTF-8(又称为 ko_KR.UTF-8)、zh.UTF-8(又称为 zh_CH.UTF-8)和 zh_TW.UTF-8 等语言环境不支持 CTL。
解决办法:在需要使用 CTL 输入泰文、阿拉伯文或希伯来文时,请使用 en_US.UTF-8 语言环境。若想在亚洲和日文 UTF-8 语言环境中输入这些语言,则请:
创建一个指向公共 CTL 模块的符号链接。在 ja_JP.UTF-8 实例中,使用下列命令:
# cd /usr/lib/locale/ja_JP.UTF-8 # mkdir LO_LTYPE ; cd LO_LTYPE # ln -s ../../common/LO_LTYPE/umle.layout.so.1 \ ja_JP.UTF-8.layout.so.1 # mkdir sparcv9 ; cd sparcv9 # ln -s ../../../common/LO_LTYPE/sparcv9/umle.layout.so.1 \ ja_JP.UTF-8.layout.so.1 |
编辑 /usr/openwin/lib/locale/ja_JP.UTF-8/XLC_LOCALE 文件,从泰文、阿拉伯文或希伯来文项目中对 load_option delay_nocheck 行进行注释。例如,在泰语言环境中,使用下列命令。
# fs14 class (Thai) fs14 { charset TIS620.2533-0:GR font { # load_option delay_nocheck <--- comment out primary TIS620.2533-0:GR } } |
在 Solstice AdminTool 软件的希腊文语言环境中,"添加用户"、"修改用户"和"删除用户"屏幕的内容均为空。
解决办法:以超级用户模式复制下面的文件:
# cp /usr/openwin/lib/locale/C/app-defaults/Admin \ /usr/openwin/lib/locale/el_GR.ISO8859-7/app-defaults/Admin |
当您在意大利语言环境中使用字体下载程序时,添加打印机对话框中的 Add 和 Cancel 均标记错误;两个按纽都标记为 A。
左边的按钮应该被标为 Aggiungi (添加)。
右边的按钮应该被标为 Annulla (取消)。
下表描述 Sun 的 Solaris 阿拉伯文键盘和 Microsoft 的阿拉伯文键盘之间的区别。
表 2-1 Sun 和 Microsoft 的阿拉伯文键盘之间的区别。
键 |
Sun 键盘布局 |
Microsoft 的键盘布局 |
---|---|---|
T |
T |
下方带有 Hamza 的阿拉伯文 Lam_alef |
U |
U |
右单引号 |
I |
I |
阿拉伯文乘号 |
O |
O |
阿拉伯文除号 |
A |
; |
阿拉伯文 Kasra |
S |
S |
阿拉伯文 Kasratan |
Z |
Z |
Tilde |
X |
X |
阿拉伯文 Sukun |
C |
阿拉伯文 Kasratan |
左花括号 |
V |
阿拉伯文 Kasra |
右花括号 |
M |
Sukun |
单下引号 |
< |
< |
阿拉伯文逗号 |
UTF-8 语言环境中,按住 AltGr+E 组合键时不能生成欧元符号。
解决办法:执行下列步骤来在 UTF-8 语言环境中输入欧元符号:
在"UTF-8 输入模式选择"窗口中选择查看。
选择货币符号。
选择欧元符号。
在希腊文语言环境中,在控制台提示符下键入 dumpcs。接着复制并粘贴欧元符号。
在欧洲 UTF-8 语言环境中排序产生意外的结果。
解决办法:在 FIGGS UTF-8 语言环境中尝试排序前,请把 LC_COLLATE 变量设置为相等的 ISO - 1 值。
# echo $LC_COLLATE > es_ES.UTF-8 # setenv LC_COLLATE es_ES.IS08859-1 |
下列应用程序未完全本地化。 某些部分将不完全翻译。
智能卡应用程序 (4304495)
SEAM 应用程序消息 (4306619)