Notas de la versión de Oracle Solaris 10 9/10

Estándares y comandos de Oracle Solaris

En la sección siguiente se describen los cambios de comportamiento en determinados estándares y comandos del Sistema operativo Oracle Solaris 10.

El comando winbind sólo obtiene los 1.000 primeros usuarios de Active Directory

Este error se da al utilizar el servidor Samba con winbind en un entorno de Active Directory. La versión Solaris 10 10/09 incluye la versión de software Samba 3.0.28. Al consultar a todos los usuarios o más de 1.000 en el servidor Active Directory, winbind obtiene sólo los 1.000 primeros resultados.

Solución: ninguna.

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

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

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

Bash 3.00 ya no define determinadas variables de entorno

El Sistema operativo Oracle Solaris 10 incluye Bash 3.00. 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 Oracle 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 Oracle Solaris 10, tcsh se ha actualizado a la versión 6.12. Esta versión ya 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 Oracle Solaris pueden generar errores en la versión actual. 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 Oracle 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).