Notas de la versión de Solaris 10 8/07

Comandos y normas de Solaris

La siguiente sección describe los cambios de comportamiento en determinados comandos y normas en el Sistema operativo Solaris 10.

Opciones no admitidas en la página del comando man ddi_dma_mem_alloc (9F) (6571030)

La página del comando man ddi_dma_mem_alloc(9F) describe tres opciones que no se admiten. Las opciones no admitidas son:

Solución: ninguna.

Las páginas de comando man modificadas para Solaris Trusted Extensions sólo están en referencia manual

Para esta versión, se han revisado las siguientes páginas de comando man de Solaris Trusted Extensions:

Las páginas de comando man revisadas no se pueden ver mediante el comando man. Para ver las páginas del comando man revisadas, consulte el documento Solaris Trusted Extensions Reference Manual.

Es posible que un comando cfgadm unconfigure erróneo más adelante se convierta en válido sin avisar (6483258)

En ocasiones, el comando cfgadm -c unconfigure falla debido que hay pendientes entradas y salidas. Con el núcleo cambiado, el comando se intenta ejecutar de nuevo sin conexión. Ahora bien, posteriormente el comando cfgadm unconfigure podría ser válido sin que el usuario tuviera constancia de ello.

Solución: ejecute el comando cfgadm - al.

Bash 2.0.5b ya no define determinadas variables de entorno

El Sistema operativo Solaris 10 incluye Bash 2.0.5b. Este intérprete de comandos ya no exporta automáticamente las siguientes variables al entorno:

Este nuevo comportamiento se produce incluso si el intérprete de comandos asigna valores predeterminados a estas variables.

Solución: exporte estas variables manualmente.

La nueva utilidad ln requiere la opción -f

Se ha modificado el comportamiento de /usr/bin/ln para adecuarlo a todos los estándares de SVID3 a XCU6. Si utiliza el comando ln sin la opción -f para enlazarlo a un determinado archivo de destino, no se establece el enlace. En su lugar, se escribe un mensaje de diagnóstico en el error estándar y el comando enlaza todos los archivos de origen restantes. Por último, el comando ln se cierra con un valor de error.

Por ejemplo, si el archivo b existe, la sintaxis ln a b genera el siguiente mensaje:


ln: b: File exists

Este cambio de comportamiento afecta a las secuencias de comandos del intérprete existentes o a los programas que incluyen el comando ln sin la opción -f. Las secuencias de comandos que solían funcionar es posible que ahora den un error en el Sistema operativo Solaris 10.

Solución: utilice la opción -f con el comando ln. Si tiene secuencias de comandos existentes que ejecuten la utilidad de vínculo, modifique estas secuencias de comandos para que sean acordes con el nuevo comportamiento del comando.

El nuevo tcsh rechaza los nombres de variable setenv que utilizan los signos de guión o igual

En el Sistema operativo Solaris 10, tcsh se ha modernizado a la versión 6.12. Esta versión no acepta variables de entorno cuyos nombres utilicen un signo de guión o igual. Las secuencias de comandos que contienen líneas setenv y que funcionaban en versiones anteriores de Solaris pueden generar errores en la versión actual de Solaris 10. Aparecerá el siguiente mensaje de error:


setenv: Syntax error

Para obtener más información, consulte la página de comando man tcsh para el Sistema operativo Solaris 10.

Solución: no utilice guiones o el símbolo igual (=) para las variables de entorno.

Cambio de comportamiento de la condición EOF de la familia STDIO getc

Las aplicaciones que se crearon en un modo cumplimiento estricto con C estándar se verán afectadas por cambios de comportamiento en determinadas funciones de biblioteca. Por ejemplo, las aplicaciones que se compilaron utilizando el modo de compilación cc -Xc o c89. El comportamiento se ha cambiado para las siguientes funciones de biblioteca:

Una interpretación formal de la norma 1990 C requiere que después de definir una condición de final de archivo, el archivo no devuelve más datos en las siguientes operaciones de entrada. La excepción es si el puntero del archivo se vuelve a colocar o si la aplicación elimina explícitamente el error y los indicadores de fin de archivo.

El comportamiento del resto de modos de compilación se mantiene igual. Específicamente, las interfaces pueden leer datos adicionales recién escritos en la cadena después de haber definido el indicador de fin de archivo.

Solución: llame a las funciones fseek() o clearerr() en la cadena para leer datos adicionales después de que la condición EOF se haya notificado en la cadena.

Las columnas de resultados del comando ps se han ensanchado

Debido a que los UID, los ID de procesador y el tiempo de ejecución acumulado son más grandes, las columnas de resultados del comando ps se han ensanchado. Las secuencias de comandos del cliente no asumirán las columnas de resultados fijas.

Solución: las secuencias de comandos deberían utilizar la opción - o del comando ps.

Si desea obtener más información, consulte la página de comando man ps(1).

El comando ping -v no funciona en las direcciones IPv6 (4984993)

El comando ping -v produce un error cuando el comando se aplica a las direcciones que utilizan la versión 6 de protocolo de Internet (IPv6). Aparecerá el siguiente mensaje de error:


ping: setsockopt IPV6_RECVRTHDRDSTOPTS Invalid argument

Solución: ninguna. Para obtener la misma información del paquete ICMP que proporciona ping -v, utilice el comando snoop.