Solaris Common Desktop Environment: Guía avanzada del usuario y del administrador del sistema

Capítulo 1 Configuración del Gestor de inicio de sesión

El Gestor de inicio de sesión es un servidor responsable de mostrar la pantalla de inicio de sesión, autentificar los usuarios e iniciar una sesión de usuario. El inicio de sesión gráfico es una alternativa atractiva al inicio de sesión tradicional en modo texto para pantallas de mapa de bits. Las pantallas gestionadas por el servidor de inicio de sesión pueden estar conectadas directamente a éste, o bien a una terminal o estación de trabajo X de red.


Nota -

Para iniciar, detener o personalizar el servidor de inicio de sesión hay que ser usuario root.


El servidor de inicio de sesión:

Las pantallas gestionadas por el Gestor de inicio de sesión pueden estar directamente conectadas al servidor que ejecuta aquél o a un terminal o estación de trabajo X de red. Para pantallas locales, el servidor de inicio de sesión iniciará automáticamente un servidor X y mostrará una pantalla de inicio de sesión. En el caso de pantallas de red, el servidor de inicio de sesión admite el X Display Manager Protocol (XDMCP) 1.0, que permite a las pantallas solicitar que el servidor de inicio de sesión muestre una pantalla de inicio de sesión.

Inicio del servidor de inicio de sesión

El servidor de inicio de sesión arranca normalmente al ejecutarse el sistema. También se puede iniciar desde una línea de comandos.

Para obtener más información sobre la utilidad de configuración del escritorio, dtconfig, véase el Apéndice A. Le proporcionará una copia de la página de comando man dtconfig.1.


Nota -

Aunque el arranque del servidor de inicio de sesión desde una línea de comandos está disponible para realizar pruebas de configuración temporales, es conveniente iniciar el servidor de inicio de sesión al arrancar el sistema.


Gestión de pantallas locales y de red

La Figura 1-1 muestra una posible configuración del servidor de inicio de sesión.

Figura 1-1 Posible configuración del servidor de inicio de sesión

Graphic

Búsqueda del ID del proceso del servidor de inicio de sesión

De forma predeterminada, el servidor de inicio de sesión almacena su ID de proceso en /var/dt/Xpid.

Para cambiar esta ubicación, se puede configurar el recurso Dtlogin.pidFile del archivo Xconfig. Si se modifica, el directorio especificado debe existir cuando se inicia el servidor de inicio de sesión.

Para modificar Xconfig, cópielo desde /usr/dt/config a /etc/dt/config. Después de modificar /etc/dt/config/Xconfig, indique al servidor de inicio de sesión que vuelva a leer Xconfig; escriba:

/usr/dt/bin/dtconfig -reset

que emite el comando kill -HUP ID_de_proceso_de_servidor_de_inicio_de_sesión.

Por ejemplo, para almacenar el ID de proceso del servidor de inicio de sesión en /var/myservers/Dtpid, establezca en el archivo Xconfig:

Dtlogin.pidFile: /var/myservers/Dtpid

Cuando se reinicie, el servidor de inicio de sesión almacenará su ID de proceso en /var/myservers/Dtpid. El directorio /var/myservers debe existir al iniciar el servidor de inicio de sesión.

Muestra de una pantalla de inicio de sesión en una pantalla local

Durante el inicio, el servidor de inicio de sesión comprueba el archivo Xservers para determinar si necesita iniciarse un servidor X y para determinar si deben mostrarse pantallas de entrada al sistema en visualizaciones locales o de red y cómo deben mostrarse.

Para modificar Xservers, cópielo desde /usr/dt/config a /etc/dt/config. Después de modificar /etc/dt/config/Xservers, indique al servidor de inicio de sesión que vuelva a leer Xservers; escriba:

/usr/dt/bin/dtconfig -reset

que emite el comando kill -HUP ID_de_proceso_de_servidor_de_inicio_de_sesión.

El formato de una línea de Xservers es:

nombre_pantalla  clase_pantalla  tipo_pantalla  comando_servidor_X 

donde

nombre_pantalla: nombre de conexión que debe utilizar al conectarse al servidor X (:0 en el ejemplo siguiente). Un valor de * (asterisco) se expande a nombre_sistema:0. El número especificado debe coincidir con el especificado en el número de conexión en comando_servidor_X.

clase_pantalla: identifica los recursos específicos de esta pantalla (Local en el ejemplo siguiente).

tipo_pantalla: indica al servidor de inicio de sesión si la pantalla es local o de red, y cómo gestionar la opción Inicio de sesión por línea de comandos de la pantalla de inicio de sesión ( local@console en el ejemplo siguiente).

comando_servidor_X: identifica la línea de comandos, número de conexión y otras opciones que el servidor de inicio de sesión utilizará para iniciar el servidor X (/usr/bin/X11/X: 0 en el ejemplo siguiente). El número de conexión especificado debe coincidir con el definido en nombre_pantalla.

La línea de Xservers predeterminada es similar a:

:0 Local local@console /usr/bin/X11/X :0 

Ejecución del servidor de inicio de sesión sin pantalla local

Si su sistema servidor de inicio de sesión no tiene una pantalla de mapa de bits, ejecútelo sin una visualización local creando un comentario para la línea de Xservers de la visualización local mediante el signo #. Por ejemplo,

# :0 Local local@console /usr/bin/X11/X :0

Cuando el servidor de inicio de sesión arranca, se ejecuta en segundo plano en espera de las solicitudes de las pantallas de red.

Acceso al inicio de sesión por línea de comandos en una pantalla local

Cuando el usuario selecciona Inicio de sesión por línea de comandos, el servidor de inicio de sesión termina temporalmente el servidor X, para permitir el acceso al inicio de sesión por línea de comandos tradicional que se ejecuta en el dispositivo terminal de pantalla de mapa de bits. Después que el usuario haya iniciado y terminado posteriormente la sesión, o tras un tiempo de espera especificado, el servidor de inicio de sesión reiniciará el servidor X.


Nota -

La opción Inicio de sesión por línea de comandos no está disponible para las pantallas en red.


El tipo_pantalla controla el comportamiento del Inicio de sesión por línea de comandos. El formato de tipo_pantalla es:

Cuando se especifica local@dispositivo_terminal_pantalla, el servidor de inicio de sesión asume que el servidor X y /dev/dispositivo_terminal_pantalla están en el mismo dispositivo físico y que se está ejecutando un inicio de sesión por línea de comandos (habitualmente getty) en él. Si el usuario selecciona Inicio de sesión por línea de comandos, el servidor X termina, para permitir el acceso al inicio de sesión por línea de comandos ( getty) que se está ejecutando en /dev/dispositivo_terminal_pantalla.

Para inhabilitar la opción Inicio de sesión por línea de comandos, especifique none como dispositivo_terminal_pantalla. El predeterminado es console, que es el que se toma cuando se especifica local. Si se especifica foreign, se inhabilita Inicio de sesión por línea de comandos.


Nota -

La opción Inicio de sesión por línea de comandos queda inhabilitada en la pantalla local cuando se inicia el servidor de inicio de sesión desde la línea de comandos.


Acomodación de una consola de pantalla de caracteres

Si el sistema del servidor de inicio de sesión tiene conectada una pantalla de caracteres directamente que sirve de consola, también es conveniente establecer el dispositivo_terminal_pantalla en none para inhabilitar Inicio de sesión por línea de comandos en la pantalla de inicio de sesión de la pantalla de mapa de bits.

Como alternativa, si se está ejecutando un inicio de sesión por línea de comandos (getty), tanto en la consola de pantalla de caracteres como en la pantalla de mapa de bits, puede cambiar el dispositivo_terminal_pantalla por el dispositivo de inicio de sesión por línea de comandos (getty) en la pantalla de mapa de bits.

Por ejemplo, si el inicio de sesión por línea de comandos (getty) de la pantalla de mapa de bits está en el dispositivo /dev/tty01, cambie el tipo_pantalla a local@tty01.

Muestra de una pantalla de inicio de sesión en una pantalla de red

El servidor de inicio de sesión puede aceptar peticiones de pantallas de red para mostrar la pantalla de inicio de sesión en una pantalla determinada. La pantalla de red suele ser un terminal X, pero también puede ser una estación de trabajo.

Para gestionar las peticiones de las pantallas de red, el servidor de inicio de sesión admite el X Display Manager Protocol (XDMCP) 1.0, que permite al servidor de inicio de sesión negociar y aceptar o rechazar peticiones de las pantallas de red. La mayoría de los terminales X incorporan XDMCP.

Peticiones de XDMCP en modo directo desde pantallas de red

Cuando se configura un terminal X para utilizar XDMCP directo (modo consulta), se le indica al terminal X el nombre del sistema que ejecuta el servidor de inicio de sesión. Al arrancar el terminal X, éste contacta automáticamente con el servidor de inicio de sesión, que muestra una pantalla de inicio de sesión en el terminal X. Para obtener información sobre cómo configurar el terminal X para XDCMP en modo directo, consulte la documentación del terminal X.

La mayoría de servidores X admiten también la opción -query . En este modo, el servidor X se comporta como si fuera un terminal X, poniéndose en contacto con el sistema del servidor de inicio de sesión directamente y solicitando que muestre una pantalla de inicio de sesión en el servidor X. Por ejemplo, si se inicia el servidor X en una pantalla de mapa de bits de la estación de trabajo bridget el servidor de inicio de sesión anita mostrará una pantalla de inicio de sesión en el servidor X:

X -query anita

Peticiones de XDMCP en modo indirecto desde pantallas de red

Cuando se configura el terminal X para utilizar XDMCP en modo indirecto, se le indica el nombre del sistema del servidor de inicio de sesión. Al arrancar el terminal X, se pondrá en contacto con el servidor de inicio de sesión, que mostrará, en una pantalla de selección, una lista de otros sistemas de servidores de inicio de sesión de la red. En esta lista el usuario puede seleccionar un sistema, y éste mostrará en el terminal X del usuario una pantalla de inicio de sesión. Para obtener información sobre cómo configurar el terminal X para el modo indirecto de XDMCP, consulte la documentación de su terminal X.

Igual que en el modo directo, la mayoría de servidores X admiten la opción -indirect, que hace que el servidor X se ponga en contacto con el servidor de inicio de sesión en modo XDMCP indirecto.

Gestión de pantallas de red no XDMCP

Es posible que los terminales X más antiguos no admitan XDMCP. Para que el servidor de inicio de sesión muestre una pantalla de inicio de sesión en un terminal X de este tipo, incluya el nombre del terminal X en el archivo Xservers.

Como la pantalla está en la red, nombre_pantalla incluye el nombre del sistema como parte de su nombre. Se puede utilizar clase_pantalla para especificar los recursos específicos de una clase concreta de terminales X (la documentación de su terminal X debe informarle de la clase de pantalla de su terminal). Un tipo_pantalla de foreign indica al servidor de inicio de sesión que se conecte a un servidor X existente, en vez de iniciar uno propio. En este caso no se especifica comando_servidor_X.

Ejemplo

Las siguientes líneas del archivo Xservers indican al servidor de inicio de sesión que muestre una pantalla de inicio de sesión en dos terminales X no XDMCP, ruby y wolfie:

ruby.blackdog.com:0 AcmeXsta foreign 
wolfie:0 PandaCo foreign

Control de acceso al servidor de inicio de sesión

De manera predeterminada, cualquier sistema de red que tenga acceso al sistema del servidor de inicio de sesión puede solicitar que se muestre una pantalla de inicio de sesión. Puede limitar el acceso al servidor de inicio de sesión modificando el archivo Xaccess.

Para modificar Xaccess, cópielo desde /usr/dt/config a /etc/dt/config. Después de modificar /etc/dt/config/Xaccess, indique al servidor de inicio de sesión que vuelva a leer Xaccess; escriba:

/usr/dt/bin/dtconfig -reset

que emite el comando kill -HUP ID_de_proceso_del_servidor_de_inicio_de_sesión.

XDMCP directo

Cuando un sistema intenta conectarse al servidor de inicio de sesión mediante XDMCP directo, se compara su nombre con las entradas en Xaccess para determinar si se le permite acceder al servidor de inicio de sesión. Cada entrada de Xaccess consiste en un nombre de sistema, incluidos los caracteres comodín * (asterisco) y ? (interrogante). Un * (asterisco) coincide con cero o más caracteres y un ? (interrogante) coincide con cualquier carácter individual. Una ! (exclamación) al principio de una entrada prohíbe el acceso, mientras que, si no hay ningún signo, el acceso está permitido.

Por ejemplo, imaginemos que Xaccess contiene las tres entradas siguientes:

amazon.waterloo.com 
*.dept5.waterloo.com 
!*

La primera entrada permite el acceso al servidor de inicio de sesión desde el sistema amazon.waterloo.com, la segunda permite el acceso a cualquier sistema cuyo nombre de dominio completo termine por dept5.waterloo.com y la última entrada prohíbe el acceso desde cualquier otro sistema.

XDMCP indirecto

Cuando un sistema intenta conectarse al servidor de inicio de sesión mediante XDMCP indirecto, se compara su nombre con las entradas en Xaccess para determinar si se le permite acceder al servidor de inicio de sesión. Cada entrada de Xaccess es similar a las entradas para XDMCP directo, incluidos los comodines, con la excepción de que cada entrada está marcada con una cadena CHOOSER. Por ejemplo:

amazon.waterloo.com   CHOOSER BROADCAST 
*.dept5.waterloo.com  CHOOSER BROADCAST 
!*		CHOOSER BROADCAST

También, la primera entrada permite el acceso al servidor de inicio de sesión desde el sistema amazon.waterloo.com, la segunda permite acceso desde cualquier sistema cuyo nombre de dominio completo termine por dept5.waterloo.com y la última prohíbe el acceso desde cualquier otro sistema.

Después de CHOOSER puede aparecer uno de los siguientes elementos:

BROADCAST indica al servidor de inicio de sesión que difunda en la subred del servidor de inicio de sesión que se genere una lista de servidores de inicio de sesión disponibles. Una lista de nombres de sistemas indica al servidor de inicio de sesión que utilice esa lista como lista de sistemas de inicio de sesión disponibles. Por ejemplo:

amazon.waterloo.com   CHOOSER shoal.waterloo.com alum.waterloo.com 
*.dept5.waterloo.com  CHOOSER BROADCAST 
!*		CHOOSER BROADCAST

Si amazon.waterloo.com se conecta mediante XDMCP indirecto, se mostrará una lista que contendrá shoal y alum. Si se conecta alice.dept5.waterloo.com, se mostrará una lista de todos los sistemas de servidor de inicio de sesión disponibles, en la subred del servidor de inicio de sesión. Se rechazarán otras peticiones de XDMCP indirecto.

En lugar de especificar una lista de nombres de sistema, se puede definir una o más macros que contengan la lista de nombres de sistema. Por ejemplo:

%list1			shoal.waterloo.com alum.waterloo.com 
amazon.waterloo.com  CHOOSER %list1

Verificación de errores

De manera predeterminada, el servidor de inicio de sesión registra los errores en el archivo /var/dt/Xerrors. Para cambiar esta ubicación, se puede configurar el recurso Dtlogin.errorLogFile del archivo Xconfig. El directorio especificado debe existir al iniciar el servidor de inicio de sesión.

Por ejemplo, para que el servidor de inicio de sesión registre los errores en el archivo /var/mylogs/Dterrors en el archivo Xconfig establezca:

Dtlogin.errorLogFile: /var/mylogs/Dterrors

Cuando se reinicie el servidor de inicio de sesión, éste registrará los errores en el archivo /var/mylogs/Dterrors. El directorio /var/mylogs debe existir al iniciar el servidor de inicio de sesión.

Parada del servidor de inicio de sesión

	/usr/dt/bin/dtconfig -d

Así indica al sistema que no inicie el servidor de inicio de sesión en el próximo arranque.

	/usr/dt/bin/dtconfig -kill

Así emite el comando kill ID_de_proceso_del_servidor_de_inicio_de_sesión)


Nota -

Si se finaliza el proceso del servidor de inicio de sesión, terminan todas las sesiones de usuario que él gestiona.


También se puede detener el servidor de inicio de sesión finalizando el ID de proceso. El ID del proceso del servidor de inicio de sesión se almacena en /var/dt/Xpid o en el archivo especificado en Xconfig por el recurso Dtlogin.pidFile.

Si se ha conectado al escritorio en el momento en que se cancela el servidor de inicio de sesión, la sesión de escritorio terminará inmediatamente.

Pantalla de inicio de sesión

La pantalla de inicio de sesión que muestra el servidor de inicio de sesión es una alternativa a la pantalla de inicio de sesión en modo texto atractiva y que ofrece más capacidades que ésta.

Figura 1-2 Pantalla de inicio de sesión del escritorio

Graphic

Al igual que sucede con el inicio de sesión en modo texto, el usuario escribe un nombre de usuario seguido de una contraseña. Si se autentifican, el servidor de inicio de sesión inicia una sesión de escritorio para el usuario. Cuando éste sale de la sesión de escritorio, el servidor de inicio de sesión muestra una nueva pantalla de inicio de sesión, y el proceso empieza de nuevo.

Para personalizar la pantalla de inicio de sesión, puede:

Cada una de estas acciones se puede realizar para todas las pantallas o para una pantalla cada vez.

Cambio de la presentación de la pantalla de inicio de sesión

Para personalizar la pantalla de inicio de sesión, se puede cambiar el logotipo o el gráfico, los mensajes de bienvenida y las fuentes.

Para modificar Xresources, cópielo de /usr/dt/config/idioma a /etc/dt/config/idioma. La pantalla de inicio de sesión reflejará los cambios la próxima vez que se muestre. Para forzar que se vuelva a mostrar una pantalla de inicio de sesión, seleccione Restablecer pantalla de inicio de sesión en el menú Opciones de la pantalla de inicio de sesión.

Los atributos de la pantalla de inicio de sesión que pueden determinarse mediante especificaciones de recursos en el archivo Xresources incluyen:

Dtlogin*logo*bitmapFile. Archivo de mapa de bits o de mapa de píxels para mostrar la imagen de logotipo

Dtlogin*greeting*persLabelString. Mensaje de bienvenida personalizado.

Dtlogin*greeting*labelString. Mensaje de bienvenida

Dtlogin*greeting*fontList. Fuente para los mensajes de bienvenida

Dtlogin*labelFont. Fuente para los botones y etiquetas

Dtlogin*textFont. Fuente para los mensajes de ayuda y error

Dtlogin*idioma*languageName. Texto alternativo para el entorno nacional idioma

Para cambiar el logotipo

    Establezca el recurso Dtlogin*logo*bitmapFile en Xresources.

El logotipo puede ser un archivo de mapa de píxels en color o de mapa de bits.

El siguiente ejemplo utiliza el mapa de bits Milogo como logotipo:

Dtlogin*logo*bitmapFile: /usr/local/lib/X11/dt/bitmaps/Milogo.bm

Para cambiar el mensaje de bienvenida

De forma predeterminada, el servidor de inicio de sesión muestra el mensaje Bienvenidos a nombre_sistema en la pantalla de inicio de sesión. Para cambiar este mensaje:

    Establezca el recurso Dtlogin*greeting*labelString en Xresources.

El valor del recurso labelString puede contener %Sistema Local%, que se sustituirá por el nombre del sistema del servidor de inicio de sesión, y % Nombre Pantalla%, que se sustituirá por el nombre de la pantalla del servidor X.

El siguiente ejemplo cambia el mensaje de bienvenida por ¡Aquí está nombre_sistema!:

Dtlogin*greeting*labelString: ¡Aquí está %Sistema Local%!

Una vez entrado el nombre de usuario, el servidor de inicio de sesión muestra el mensaje predeterminado Bienvenido nombre_usuario. Se puede cambiar el mensaje estableciendo el recurso Dtlogin*greeting*persLabelString en Xresources. El valor de persLabelString puede contener %s, que se sustituirá por el nombre de usuario.

El siguiente ejemplo cambia el mensaje de bienvenida personalizado por Hola nombreusuario.

Dtlogin*greeting*persLabelString: Hola %s 

Para cambiar las fuentes

Puede cambiar las fuentes utilizadas en la pantalla de inicio de sesión estableciendo uno de los siguientes recursos de fuente en Xresources:

Dtlogin*greeting*fontList: fuente para mensajes de bienvenida

Dtlogin*labelFont: fuente para etiquetas y botones de acción

Dtlogin*textFont: fuente para mensajes de ayuda y error

Para ver una lista de las fuentes disponibles, escriba:

xlsfonts [-opciones] [-fn patrón]

El siguiente ejemplo utiliza una fuente grande para el mensaje de bienvenida (el valor especificado debe estar contenido en una sola línea):

Dtlogin*greeting*fontList: -dt-interface \ 
	system-medium-r-normal-xxl*-*-*-*-*-*-*-*-*:

Para proporcionar texto alternativo que mostrar para cada idioma

Para mostrar texto dependiente del entorno nacional en el menú Idioma de la pantalla de inicio de sesión, en lugar del nombre de entorno nacional predeterminado, modifique el recurso Dtlogin*idioma*languageName en Xresources:

Dtlogin*Es_ES*languageName: Español

Ahora se mostrará el texto Español en lugar del nombre de entorno nacional Es_ES.

Cambio de comportamiento de la pantalla de inicio de sesión

Para personalizar el comportamiento de la pantalla de inicio de sesión, se pueden modificar algunos de los recursos especificados en el archivo Xconfig.

Para modificar Xconfig, cópielo desde /usr/dt/config a /etc/dt/config. Después de modificar /etc/dt/config/Xconfig, indique al servidor de inicio de sesión que vuelva a leer Xconfig: escriba:

/usr/dt/bin/dtconfig -reset

que emite el comando kill -HUP ID de proceso del servidor de inicio de sesión)

Los recursos especificados en el archivo Xconfig incluyen:

Dtlogin*authorize: especificación del archivo Xaccess

Dtlogin*environment: entorno del servidor X

Dtlogin*language: idioma predeterminado

Dtlogin*languageList: lista de idiomas para el menú Idioma de la pantalla de inicio de sesión

Dtlogin*resources: especificación de Xresources

Dtlogin*setup: especificación del archivo Xsetup

Dtlogin*startup: especificación del archivo Xstartup

Dtlogin*session: especificación del archivo Xsession

Dtlogin*failsafeClient: especificación de la secuencia de comando Xfailsafe

Dtlogin*reset: especificación de la secuencia de comando Xreset

Dtlogin*userPath: ruta de acceso para Xsession y Xfailsafe

Dtlogin*systemPath: ruta de acceso para Xsetup, Xstartup y Xfailsafe

Dtlogin*systemShell: shell para Xsetup, Xstartup y Xfailsafe

Dtlogin.timeZone: zona horaria para todas las secuencias de comando

Cambio del comportamiento de la pantalla de inicio de sesión para una pantalla

En los ejemplos siguientes, el cambio de un recurso de Xconfig cambia el comportamiento de la pantalla de inicio de sesión para todas las pantallas. Los recursos mostrados con un * (asterisco) pueden especificarse para cada pantalla, lo cual permite especificar un comportamiento personalizado de la pantalla de inicio de sesión para pantallas determinadas. Un recurso para una pantalla concreta se debe especificar como Dtlogin*nombre_pantalla*recurso. Por ejemplo, si quisiera desactivar el control de acceso basado en el usuario para la pantalla expo:0 pero dejarlo activado para las demás pantallas, debería especificar:

Dtlogin*expo_0*authorize: False

Nota -

Todos los caracteres especiales del nombre de la pantalla, por ejemplo : (dos puntos) o . (punto), se sustituyen por _ (subrayado).


Cambio del acceso al servidor X

De manera predeterminada, el Gestor de inicio de sesión permite un control de acceso al servidor X basado en usuario, de acuerdo con los datos de autorización almacenados y protegidos en el archivo DirectorioInicio/.Xauthority. Únicamente se permite conectar con el servidor X a los usuarios que puedan leer este archivo. Generalmente, es el método preferido de control de acceso al servidor X.

Una alternativa al control de acceso basado en el usuario es el que se basa en el sistema. Con este método, si a un sistema se le permite acceder al servidor X, cualquier usuario de ese sistema puede también conectarse con el servidor X. Entre las razones para utilizar el control basado en el sistema se incluyen:

Para cambiar el entorno del servidor X

Si desea dotar al servidor X de una o más variables de entorno y valores cuando lo inicie el servidor de inicio de sesión, puede especificarlos mediante el recurso Dtlogin*environment en Xconfig. Por ejemplo:

Dtlogin*environment: VAR1=foo VAR2=bar

dejará disponibles las variables VAR1 y VAR2 para el proceso local del servidor X. Asimismo, estas variables se exportarán a las secuencias de comandos Xsession y Xfailsafe.

Para cambiar el idioma predeterminado

Cuando el usuario inicia la sesión de escritorio desde la pantalla de inicio de sesión, la sesión de usuario se ejecuta según el entorno nacional seleccionado en el submenú Idioma del menú Opciones. Si el usuario no selecciona un idioma, se utiliza el predeterminado del servidor de inicio de sesión, que se puede controlar estableciendo el recurso Dtlogin*language en Xconfig. Por ejemplo:

Dtlogin*language: Ja_JP

Consulte la documentación de su sistema para determinar los idiomas instalados en él.

Para cambiar el contenido del menú Idioma de la pantalla de inicio de sesión

De manera predeterminada, el servidor de inicio de sesión crea un menú Idioma de la pantalla de inicio de sesión que contiene una lista de todos los entornos nacionales instalados en el sistema. Cuando el usuario selecciona un entorno nacional, el servidor de inicio de sesión vuelve a mostrar la pantalla de inicio de sesión en el entorno nacional seleccionado. Cuando el usuario inicia la sesión, el servidor de inicio de sesión iniciará una sesión de escritorio para el usuario en ese entorno nacional.

Se puede especificar una lista propia de idiomas modificando el recurso Dtlogin*languageList en Xconfig:

Dtlogin*languageList: En_US De_DE

El servidor de inicio de sesión mostrará ahora únicamente En_US y De_DE en el menú Idioma de la pantalla de inicio de sesión.

Emisión de comandos antes de que aparezca la pantalla de inicio de sesión

Una vez iniciado el servidor de X, pero antes de que aparezca la pantalla de inicio de sesión, el servidor de inicio de sesión ejecuta la secuencia de comando Xsetup, que se ejecuta con autorización de root, y emite los comandos que deben ejecutarse antes de la aparición de la pantalla de inicio de sesión.

Para modificar Xsetup, cópielo desde /usr/dt/config a /etc/dt/config. La próxima vez que se muestre la pantalla de inicio de sesión se ejecutará la secuencia de comando Xsetup modificada.

Emisión de comandos antes del inicio de la sesión de usuario

Una vez el usuario ha escrito su nombre y contraseña y éstos se han autentificado, pero antes de que se inicie la sesión de usuario, el servidor de inicio de sesión ejecuta la secuencia de comando Xstartup, con autorización de root, y emite comandos que es necesario ejecutar como usuario root antes del inicio de la sesión de usuario.

Para modificar Xstartup, cópielo desde /usr/dt/config a /etc/dt/config. La próxima vez que el usuario inicie una sesión, se ejecutará el Xstartup modificado.

Inicio de una sesión de escritorio

De manera predeterminada, el servidor de inicio de sesión inicia la sesión de usuario gracias a la secuencia de comando Xsession, que se ejecuta con la autorización del usuario y emite comandos necesarios para iniciar el escritorio.


Nota -

No actualice directamente la secuencia de comando Xsession.


Véase Capítulo 2 para obtener información sobre cómo personalizar el inicio de sesión de escritorio del usuario.

Inicio de una sesión a prueba de fallos

Si el usuario selecciona Sesión a prueba de fallos desde el submenú Sesión del menú Opciones de la pantalla de inicio de sesión, el servidor de inicio de sesión ejecuta la secuencia Xfailsafe con la autorización del usuario, y emite los comandos necesarios para iniciar un entorno de ventanas mínimo, generalmente una ventana Terminal y opcionalmente un gestor de ventanas.

Para modificar Xfailsafe, cópielo desde /usr/dt/config a /etc/dt/config. La próxima vez que el usuario inicie una sesión, se ejecutará el Xfailsafe modificado.

Después de finalizar la sesión de usuario

Cuando el usuario ha salido de la sesión de escritorio o de a prueba de fallos, el servidor de inicio de sesión ejecuta la secuencia de comando Xreset, con autorización de root, y emite los comandos que es necesario ejecutar después de finalizar la sesión de usuario.

Si desea modificar Xreset, cópielo de /usr/dt/config a /etc/dt/config. La próxima vez que el usuario finalice la sesión, se ejecutará la secuencia de comando Xreset modificada.

Entorno del servidor de inicio de sesión

El servidor de inicio de sesión proporciona un entorno que exporta las secuencias de comandos Xsetup, Xstartup, Xsession, Xfailsafe y Xreset. Este entorno se describe en la Tabla 1-1. El servidor de inicio de sesión puede también exportar variables adicionales.

Tabla 1-1 Entornos del servidor de inicio de sesión

Variable de 

entorno 

Xsetup

Xstartup

Xsession

Xreset

Descripción 

LANG

Idioma predeterminado o seleccionado 

XAUTHORITY

Archivo de autorizaciones X alternativo (opcional) 

PATH

Valor del recurso Dtlogin*userPath (Xsession, Xfailsafe) o del recurso Dtlogin*systemPath (Xsetup, Xstartup, Xreset)

DISPLAY

Número de conexiones del servidor X 

SHELL

Shell especificado en /etc/passwd (Xsession, Xfailsafe) o en el recurso Dtlogin*systemShell (Xsetup, Xstartup, Xreset)

TZ

Valor del recurso Dtlogin.timeZone o zona horaria determinada desde el sistema

USER

 

Nombre de usuario 

HOME

 

Directorio de inicio especificado en /etc/passwd

LOGNAME

 

Nombre de usuario 

Cambio de la ruta del usuario o del sistema

El servidor de inicio de sesión establece la variable de entorno PATH al ejecutar las secuencias de comandos Xsession y Xfailsafe. Se puede proporcionar una ruta alternativa a la de estas secuencias de comandos.

Para cambiar la ruta del usuario

    Establezca el recurso Dtlogin*userPath en Xconfig. Por ejemplo:

	Dtlogin*userPath: /usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11

Para cambiar la ruta del sistema

    Establezca el recurso Dtlogin*systemPath en Xconfig. Por ejemplo:

	Dtlogin*systemPath: /usr/bin/X11:/etc:/bin:/usr/bin:/usr/ucb

Para cambiar el shell del sistema

El servidor de inicio de sesión establece la variable de entorno SHELL cuando ejecuta las secuencias Xsetup, Xstartup y Xfailsafe. El valor predeterminado es /bin/sh. Si desea proporcionar un shell alternativo al de estas secuencias de comandos, puede establecer el recurso Dtlogin*systemShell en Xconfig. Por ejemplo:

Dtlogin*systemShell: /bin/ksh

Para cambiar la zona horaria

El servidor de inicio de sesión establece la variable de entorno TZ al ejecutar las secuencias de comandos Xsetup, Xstartup, Xsession, Xfailsafe y Xreset. El valor predeterminado procede del sistema, de modo que en general no será necesario cambiar este comportamiento. Para proporcionar una zona horaria alternativa a la de estas secuencias de comandos, establezca el recurso Dtlogin.timeZone en Xconfig. Por ejemplo:

Dtlogin.timeZone: CST6CDT

Administración del Gestor de inicio de sesión

Al iniciarse el servidor de inicio de sesión, arranca un proceso dtlogin, que lee el archivo Xconfig para determinar la configuración inicial del servidor de inicio de sesión y localizar otros archivos de configuración del servidor de inicio de sesión. Después, el servidor de inicio de sesión lee los archivos Xservers, para ver si contiene pantallas que haya que gestionar de forma explícita, y Xaccess, para controlar el acceso al servidor de inicio de sesión.

Si el servidor de inicio de sesión descubre en el archivo Xservers que debe gestionar alguna pantalla local, iniciará un servidor X según se indique en el archivo Xservers y luego mostrará una pantalla de inicio de sesión en esa pantalla.

Si el servidor de inicio de sesión descubre en el archivo Xservers que debe gestionar una pantalla de red, supondrá que ya se está ejecutando un servidor X con el nombre de la pantalla especificada y mostrará una pantalla de inicio de sesión en dicha pantalla.

Luego, el servidor de inicio de sesión esperará peticiones XDMCP de la red.

Para cada una de las pantallas gestionadas, el servidor de inicio de sesión crea primero un nuevo proceso dtlogin para la pantalla en cuestión. Esto significa que, si el servidor de inicio de sesión está gestionando n pantallas, habrá n+1 procesos dtlogin. El servidor de inicio de sesión ejecutará la secuencia de comando Xsetup, cargará el archivo Xresources y luego ejecutará dtgreet para mostrar la pantalla de inicio de sesión. Una vez el usuario haya introducido un nombre y una contraseña y haya sido autentificado, el servidor de inicio de sesión ejecutará la secuencia Xstartup y luego la secuencia Xsession o Xfailsafe. Finalizada la sesión, el servidor de inicio de sesión ejecutará la secuencia de comando Xreset.

Si el servidor de inicio de sesión recibe una petición de XDMCP indirecto, ejecutará dtchooser para mostrar en la pantalla una lista de sistemas de servidores de inicio de sesión. Cuando el usuario seleccione un sistema de la lista, el servidor de inicio de sesión de dicho sistema gestionará la pantalla.

En el caso de los archivos de configuración Xaccess, Xconfig, Xfailsafe, Xreset, language/Xresources, Xservers, Xsetup y Xstartup, el servidor de inicio de sesión buscará primero de modo predeterminado en /etc/dt/config y luego en /usr/dt/config, y utilizará el primer archivo que encuentre.

Archivos del Gestor de inicio de sesión

Las ubicaciones predeterminadas de los archivos del Gestor de inicio de sesión son:

/usr/dt/bin/dtlogin: el servidor de inicio de sesión y el gestor de pantallas

/usr/dt/bin/dtgreet: muestra una pantalla de inicio de sesión en una pantalla

/usr/dt/bin/dtchooser: muestra una pantalla de selección en una pantalla

/usr/dt/bin/Xsession: inicia una sesión de escritorio

/usr/dt/config/Xfailsafe: inicia una sesión a prueba de fallos

/usr/dt/config/Xconfig: archivo de configuración del servidor de inicio de sesión

/usr/dt/config/Xservers: archivo de descripción de pantalla del servidor de inicio de sesión

/usr/dt/config/Xaccess: archivo de descripción de acceso al servidor de inicio de sesión

/usr/dt/config/idioma/Xresources: recursos de disposición de pantalla

/usr/dt/config/Xsetup: archivo de configuración de pantalla

/usr/dt/config/Xstartup: archivo de arranque previo a la sesión

/usr/dt/config/Xreset: archivo de restablecimiento posterior a la sesión

/var/dt/Xpid: ID de proceso del servidor de inicio de sesión

/var/dt/Xerrors: archivo de registro de errores del servidor de inicio de sesión