Este capítulo describe los problemas del tiempo de ejecución conocidos.
Las siguientes descripciones de errores del tiempo de ejecución se han agregado a este capítulo desde que este documento se publicó en el CD de documentación Solaris 8 10/00 y en el quiosco de instalación del CD de Solaris 8 10/00.
El nombre de este producto es Solaris 8 10/00, pero puede que el código y las rutas o las rutas de los paquetes utilicen en el nombre Solaris 2.8 o SunOS 5.8. Siga siempre el código o la ruta tal como están escritos.
Una acción conocida como "Brown Orifice" crea un servidor HTTP como una miniaplicación Java, lo que, a su vez, convierte al navegador Netscape en un servidor de web. Esto permite que los usuarios remotos puedan acceder a los archivos locales y los que están en la red. Estos archivos crean URL ubicados detrás de cortafuegos usando "file://", "http://", "https://", "ftp://" y otros tipos de conexiones. No hay síntomas que muestren que se ha producido el problema.
No se trata de un problema de arquitectura del modelo de seguridad de Java.
Están afectadas las versiones de Netscape Communicator incluidas entre la versión 4.04 y la versión 4.74. Para obtener información adicional acerca de esta vulnerabilidad, consulte la asesoría CERT CA-2000-15 en:
Para corregir este problema, descargue e instale Netscape Communicator de la versión 4.75 desde: http://www.sun.com/software/solaris/netscape
ypbind presenta un desbordamiento de memoria intermedia que se puede activar de forma remota para obtener acceso de root en el sistema comprometido.
Solución alternativa: para evitar este problema, aplique la modificación 110322-01 .
Se produce un problema al compilar un programa Motif en el sistema operativo Solaris 8, cuando enlaza con una biblioteca compartida compilada en los sistemas operativos Solaris 2.4, 2.5, 2.5.1 o 2.6, y la biblioteca antigua usa también la interfaz de programación de la aplicación (API) de Motif.
El programa Motif usa la versión 2.1 de Motif y la biblioteca compartida antigua usa la versión 1.2. Se produce un volcado del núcleo central. Éste no es un problema de compatibilidad binaria de las aplicaciones compiladas en los sistemas operativos Solaris 2.4, 2.5, 2.5.1 o 2.6, que deberían funcionar correctamente en Solaris 8.
Solución alternativa: si tiene una biblioteca compartida anterior que enlaza directamente con la biblioteca Motif y desea compilar un programa en el sistema operativo Solaris 8 que enlace tanto con la biblioteca Motif como con la biblioteca anterior, use una línea como esta para compilar:
cc foo.c -o programa -DMOTIF12_HEADERS -I/usr/openwin/include -I/usr/dt/include -lXm12 -lXt -lX11 |
Los iconos sdtwinlst (lista de ventanas) y sdtgwm (gestor de ventanas) no aparecen en el gestor de aplicaciones. En su lugar, aparece un icono genérico. Esto se debe a que faltan los dos archivos de acciones sdtgwm.dt y sdtwinlst.dt en el directorio /usr/dt/appconfig/types/C.
Solución alternativa: para agregar los iconos que faltan:
Cree un archivo nuevo en /usr/dt/appconfig/type/C y asígnele el nombre sdtgwm.dt.
Edite el archivo e inserte el texto siguiente:
ACTION SDtgwm { LABEL GWM TYPE COMMAND EXEC_STRING sdtgwm ICON SDtgwm WINDOW_TYPE NO_STDIO } |
Cree un archivo nuevo en /usr/dt/appconfig/type/C y asígnele el nombre sdtwinlst.dt.
Edite el archivo e inserte el texto siguiente:
ACTION SDtWinLst { LABEL Window List TYPE COMMAND EXEC_STRING sdtwinlst ICON SDtWinLst WINDOW_TYPE NO_STDIO } |
Para verificar que se han vuelto a cargar todas las acciones, salga de la sesión de CDE y vuelva a iniciar la sesión.
Puede ocurrir que un CÐROM con una disposición poco usual de los datos no se monte automáticamente. Puede que la ventana del gestor de archivos no presente el contenido del CÐROM después de insertarlo en la unidad.
Solución alternativa: monte manualmente el CÐROM:
Conviértase en usuario root.
Pare el gestor de volúmenes:
/etc/init.d/volmgt stop |
Monte el CÐROM:
mount -F hsfs -r ruta_dispositivo /mnt |
Donde (ruta_dispositivo) es la ruta de acceso al lugar del sistema al que está conectada la unidad de CÐROM. Por ejemplo, /dev/dsk/c0t6d0s0.
Por lo general, en fábrica se conectan las unidades de CÐROM a c0t6d0s0 o a c0t2d0s0, pero para que este comando funcione es preciso usar la ruta de acceso correcta.
Reinicie el gestor de volúmenes:
/etc/init.d/volmgt start |
Si introduce un disquete en su unidad, en un sistema con dispositivos extraíbles SCSI, y después selecciona Comprobar disquete, en el menú Archivo del Gestor de archivos de OpenWindowsTM, el Gestor de archivos monta el disquete en el directorio /floppy, pero no muestra el contenido del disco en ninguna de sus pantallas de visualización. Las opciones Formatear disquete y Expulsar disquete no aparecen en el menú Archivo del Gestor de archivos.
Solución alternativa: elija una de las soluciones alternativas siguientes.
Para visualizar el contenido de un disquete, siga estos pasos:
Haga clic en la carpeta /, en la Ruta de iconos del Gestor de archivos.
Haga doble clic en la carpeta floppy, en la ventana de visualización /.
Haga doble clic en la carpeta disquete0, en la ventana de visualización /floppy.
Para formatear un disquete, siga estos pasos:
Desmonte el disquete.
% volrmmount -e disquete0 |
Formatee el disquete.
% fdformat disquete0 |
Para crear un nuevo sistema de archivos en un disquete, siga estos pasos:
Si ya ha desmontado el disquete, vaya al paso 2 de esta solución alternativa.
Desmonte el disquete.
% volrmmount -e disquete0 |
Crear el sistema de archivos adecuado en el disquete.
Para crear un nuevo sistema de archivos UFS en el disquete, use el comando newfs:
% newfs /vol/dev/aliases/disquete0 |
Para crear un sistema de archivos PCFS en el disquete, use el comando mkfs:
% mkfs -F pcfs /vol/dev/aliases/disquete0 |
Monte el disquete.
% volrmmount -i disquete0 |
Para expulsar el disquete, use el comando eject.
% eject disquete0 |
Para evitar este problema, aplique la modificación 109463-01.
Después de eliminar el último elemento del escritorio (por ejemplo, la última cita de la Agenda o la última dirección del Gestor de direcciones), se vuelve a restaurar desde el dispositivo manual al escritorio, durante la sincronización del dispositivo manual.
Solución alternativa: borre manualmente la última entrada del dispositivo manual antes de realizar la sincronización.
Si intercambia datos multibyte entre un dispositivo PDA y el CDE de Solaris, es posible que se corrompan los datos en ambos entornos.
Solución alternativa: guarde una copia de seguridad de los datos en su ordenador personal, con la utilidad de realización de copias de seguridad de PDA, antes de ejecutar la aplicación PDASync. Si intercambia accidentalmente datos multibyte y los corrompe, restaure sus datos desde la copia de seguridad.
Después de seleccionar Ayuda -> Información en el Panel frontal, aparece una lista de archivos obsoletos. El archivo correcto es S8FCSreleasenotes.
Cuando la memoria está baja aparece el siguiente mensaje de error:
CIM_ERR_LOW_ON_MEMORY |
Solución alternativa: para restaurar el Depósito del gestor de objetos de CIM:
Conviértase en usuario root.
Detenga el gestor de objetos de CIM.
# /etc/init.d/init.wbem stop |
Retire el directorio de registro JavaSpaces.
# /bin/rm -rf /var/sadm/wbem/log |
Reinicie el gestor de objetos de CIM.
# /etc/init.d/init.wbem start |
Perderá cualquier definición de propietario que tenga en el almacén de datos. Deberá volver a compilar los archivos MOF que contienen estas definiciones con el comando mofcomp. Por ejemplo:
# /usr/sadm/bin/mofcomp -u root -p contraseña_raíz su-archivo_mof |
Al ejecutar /usr/sadm/bin/mofcomp o /usr/sadm/bin/wbemadmin aparece el siguiente mensaje de error:
NO_SUCH_QUALIFIER1: Qualifier association not found. |
Solución alternativa: para restaurar el Depósito del gestor de objetos de CIM:
Conviértase en usuario root.
Detenga el gestor de objetos de CIM.
# /etc/init.d/init.wbem stop |
Asigne un nuevo nombre al directorio de registro de JavaSpaces.
# mv /var/sadm/wbem/log /var/sadm/wbem/logprepatch |
Reinicie el gestor de objetos de CIM.
# /etc/init.d/init.wbem start |
Perderá cualquier definición de propietario que tenga en el almacén de datos. Deberá volver a compilar los archivos MOF que contienen estas definiciones con el comando mofcomp. Por ejemplo:
# /usr/sadm/bin/mofcomp -u raíz -p contraseña_raíz su_archivo_mof |
Si enumera instancias de la clase Solaris_FileSystem con CIM WorkShop o las API de WBEM, ya no se ejecutará CIMON y aparecerá el mensaje de error siguiente:
Attempted to complete RMI action enumInstances and received exception java.rmi.UnmarshalException: Error unmarshaling return header; nested exception is: java.io.EOFException |
Solución alternativa: en modo usuario root, reinicie el CIMOM con el siguiente comando:
# /etc/init.d/init.wbem start |
Los sistemas habilitados para USB con configuraciones de memoria reducida pueden dar avisos graves al arrancar desde un disco, desde un CD o desde la red cuando hay varios dispositivos USB conectados. En ese caso, aparece uno de los siguientes avisos graves:
panic[cpu0]/thread=1040800: main: unable to fork init. |
o
panic[cpu0]/thread=2a1000fdd40: BAD TRAP: type=31 rp=2a1000fd0a0 addr=c0 mmu_fsr=0 occurred in module "genunix" due to a NULL pointer dereference |
Solución alternativa: si dispone de más de 4 dispositivos USB, arranque el sistema sólo con el teclado y el ratón USB conectados. Después de que aparezca el indicador de inicio de sesión de Solaris, conecte los demás dispositivos USB.
El módulo Java Plug-in 1.2 es el predeterminado que ejecuta las miniaplicaciones de Java 2, aunque no ejecuta todas las miniaplicaciones Java 1.1. Si necesita el módulo Java 1.1, puede descargarlo en la dirección http://www.sun.com/solaris/netscape.
Si decide tener los módulos Java 1.1 y Java 1.2 en el mismo sistema, siga las instrucciones para instalar el módulo Java 1.1 y configure el sistema en función de ello.
Este procedimiento se describe en la sección "Installing Java Plug-in" del manual Java Plug-in for Solaris Users Guide que está disponible en http://www.sun.com/solaris/netscape/jpis/usersguide_java_plugin.html.
libjvm.so no funciona correctamente si se integra en el proceso con dlopen. Debe enlazarse con el ejecutable cuando se crea ese objeto.
Solución alternativa: al crear un ejecutable, indique explícitamente que libjvm.so (-ljvm) y libjava.so (-ljava) son dependencias.
El controlador de dispositivos ata de Solaris tiene inhabilitada la función DMA de forma predeterminada para los dispositivos ATA/ATAPI.
Se ha inhabilitado esta función para evitar problemas en algunos sistemas que no admiten correctamente DMA en unidades ATA/ATAPI. La mayoría de los problemas están relacionados con una BIOS del sistema caducada.
Para habilitar (o inhabilitar) el DMA del controlador ata después de instalar el sistema operativo Solaris 8:
Ejecute el Asistente de configuración de dispositivos de Solaris (Edición Intel) desde el disquete de arranque o desde el CD de instalación (si su sistema admite el arranque desde el CD-ROM).
Al arrancar desde el disquete, el nuevo valor de propiedad habilitado para ATA-DMA se conservará en aquél. Por tanto, el valor cambiado será efectivo al volver a usar el disquete de arranque.
Pulse F2_Continue para realizar una exploración de dispositivos.
Pulse F2_Continue para visualizar una lista de dispositivos de arranque.
Pulse F4_Boot Tasks, seleccione Ver/Editar los valores de propiedades y pulse F2_Continue.
Cambie el valor de la propiedad habilitada para ATA-DMA a 1 para habilitar el DMA (si el valor es 0, se inhabilita):
Seleccione la propiedad de habilitación para ATA-DMA de la lista y pulse F3_Change.
Escriba 1 y pulse F2_Continue para la habilitación (escriba 0 y pulse F2_Continue para la inhabilitación).
Pulse F2_Back y después F3_Back para volver al menú de arranque de Solaris.
Seleccione el dispositivo desde el que desea instalar (adaptador de red o unidad de CD-ROM) y pulse F2_Continue.
Si se produce algún problema después de habilitar DMA, inhabilítelo (fije la propiedad de habilitación de ata-dma en 0 con el procedimiento indicado anteriormente), actualice el sistema con la BIOS más actualizada del fabricante del hardware y vuelva a habilitar DMA.
Si falla el comando ab2admin, el mensaje de error incluirá información adicional, además de command failed. Por ejemplo, puede incluir también path not found o invalid ID.
Solución alternativa: si aparece el mensaje command failed, cerciórese de que la operación ha fallado. Por ejemplo, si el comando que ha enviado debería haber borrado una de las colecciones de la base de datos AnswerBook2, escriba el siguiente comando para verificar que aparece la colección en la base de datos.
# ab2admin -o list |
Durante el inicio de un servidor AnswerBook2TM, es posible que la secuencia ab2cd muestre el siguiente mensaje de error incorrecto:
sort: can't read /tmp/ab1_sort.XXX: No such file or directory |
Este mensaje de error indica que la secuencia ab2cd no ha encontrado ninguna de las colecciones de AnswerBook (Display PostScriptTM) en el CD.
Solución alternativa: haga caso omiso del mensaje de error.
Siga estos pasos para imprimir desde cualquier entorno nacional que no sea ISO8859-1 con Font Downloader.
Inicie una sesión en CDE.
Escriba fdl en la línea de comando para iniciar Font Downloader.
Especifique la impresora, seleccionando Agregar en el menú Impresoras.
Seleccione Grupo de fuentes en el menú de Download.
Así, los grupos de fuentes se descargan en la impresora especificada, según el juego de códigos que sea necesario para imprimir.
Los alias del tipo de letra LucidaSansLat4 no están disponibles, por lo que pueden aparecer mensajes de error al ejecutar una aplicación de Java en cualquier entorno nacional UTF-8.
Solución alternativa: regístrese en el equivalente ISO-1 del entorno nacional y ejecute desde ese punto la aplicación de Java.
sdtwinlst (lista de ventanas) y sdtgwm (gestor del área de trabajo gráfica) no están adaptados al entorno nacional en las codificaciones seleccionadas de UTF-8 para los idiomas europeos.
Solución alternativa: conéctese a una codificación ISO8859-1 y después ejecute sdtwinlst y sdtgwm.
Algunas combinaciones de teclas muertas no funcionan correctamente en CDE. Además, los nombres de los meses no funcionan correctamente en el Gestor de agenda, dentro del entorno griego.
Si intenta imprimir caracteres ampliados mientras usa Gestor de agenda en un entorno nacional parcial, no se imprimirán correctamente.
No puede cortar ni pegar texto árabe entre una aplicación o ventana que se ejecute bajo en_US.UTF-8 en modo de escritura en árabe y una que se ejecute en ar_EY.ISO8859-6 en modo de escritura en árabe.
Al hacer clic con el botón derecho del ratón en cualquier aplicación de CDE en un entorno nacional Europeo, el menú desplegable de extras de CDE no muestra ninguna opción.
Los entornos nacionales UTF-8 europeos y en_US.UTF-8 admiten el uso de Complex Text Language (CTL) para escribir en hebreo, árabe o tailandés, pero los entornos nacionales ja_JP.UTF-8, ko.UTF-8, también denominado ko_KR.UTF-8, zh.UTF-8, también llamado zh_CH.UTF-8, así como zh_TW.UTF-8 no lo admiten.
Solución alternativa: use el entorno nacional en_US.UTF-8 si necesita escribir en tailandés, árabe o hebreo con CTL. Si desea introducir estos idiomas en los entornos nacionales UTF-8 japonés y asiático:
Cree un enlace simbólico con los módulos de CTL comunes. En el caso de 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 |
Edite el archivo /usr/openwin/lib/locale/ja_JP.UTF-8/XLC_LOCALE: convierta en comentario la línea load_option delay_nocheck de las entradas tailandesa, árabe o hebrea. Por ejemplo, en el caso del tailandés:
# fs14 class (Thai) fs14 { charset TIS620.2533-0:GR font { # load_option delay_nocheck <--- comment out primary TIS620.2533-0:GR }} |
Varias pantallas de la aplicación Smart Card no están completamente adaptadas al entorno nacional.
Las pantallas Agregar, Modificar y Eliminar usuario están en blanco en el entorno nacional griego del software Solstice AdminTool.
Solución alternativa: en modo usuario root, copie el archivo siguiente:
# cp /usr/openwin/lib/locale/C/app-defaults/Admin /usr/openwin/lib/locale/el_GR.ISO8859-7/app-defaults/Admin |
En el entorno nacional italiano de Font Downloader, los botones Agregar y Cancelar del cuadro de diálogo Add Printer (Agregar impresora) están etiquetados incorrectamente: ambos tienen la etiqueta A ....
El botón de la izquierda debería tener la etiqueta Aggiungi (Agregar).
El botón de la derecha debería tener la etiqueta Annulla (Cancelar).
La tabla siguiente describe las diferencias entre el teclado árabe de Sun para Solaris y el de Microsoft.
Tabla 2-1 Diferencias entre los teclados árabes de Sun y Microsoft
Tecla |
Distribución del teclado de Sun |
Distribución del teclado de Microsoft |
---|---|---|
T |
T |
Lam_alef árabe con hamza inferior |
U |
U |
Comilla derecha sencilla |
I |
I |
Signo de multiplicación árabe |
O |
O |
Signo de división árabe |
A |
; |
Kasra árabe |
S |
S |
Kasratan árabe |
Z |
Z |
Tilde |
X |
X |
Sukún árabe |
C |
Kasratan árabe |
Llave izquierda |
V |
Kasra árabe |
Llave derecha |
M |
Sukún |
Comilla sencilla baja |
< |
< |
Coma árabe |
SEAM usa algunos de los archivos de recursos del sistema operativo Solaris 8, pero sólo cuando se seleccionan los valores Kerberos durante la instalación.
El símbolo del euro no aparece cuando se pulsa AltGr+E en el entorno nacional UTF-8.
Solución alternativa: lleve a cabo los pasos siguientes para introducir el símbolo del euro en el entorno nacional UTF-8 :
Seleccione Búsqueda en la ventana de Selección del modo de escritura UTF-8
Seleccione Símbolos de divisas.
Seleccione el símbolo del euro.
En el entorno nacional griego escriba dumpcs detrás del indicador de la consola. Después, copie y pegue el símbolo del euro.
En los entornos nacionales UTF-8 europeos la opción Ordenar no funciona correctamente.
Solución alternativa: antes de intentar ordenar dentro de un entorno nacional FIGGS UTF-8, fije la variable LC_COLLATE en su equivalente ISO1.
# echo $LC_COLLATE > es_ES.UTF-8 # setenv LC_COLLATE es_ES.IS08859-1 |