Esta sección incluye:
Definición de las variables de entorno
Definición de recursos
Uso de sesiones dependientes de la pantalla
Ejecución de secuencias de comandos al inicio de la sesión
Recuperación de la copia de seguridad de una sesión
Para establecer variables de entorno accesibles en el sistema, cree un archivo en el directorio /etc/dt/config/Xsession.d que defina y exporte la variable.
Por ejemplo, si crea una secuencia de comandos ejecutable ksh, /etc/dt/config/Xsession.d/misvars, que contenga:
export MIVARIABLE="valor"
se establecerá la variable MIVARIABLE
en el entorno de cada usuario durante su siguiente inicio de sesión.
Por ejemplo:
export MIVARIABLE="valor"
establece la variable MIVARIABLE
en el entorno de cada usuario durante su siguiente inicio de sesión.
El Gestor de sesiones no lee automáticamente los archivos .profile o .login. Sin embargo, puede configurarse para que los utilice; véase "Toma opcional como fuente de las secuencias de comandos .profile o .login".
Para establecer los recursos accesibles en el sistema, agréguelos al archivo /etc/dt/config/idioma/sys.resources (es posible que tenga que crearlo).
.dtprofile sólo admite la sintaxis /bin/sh o /bin/ksh.
Por ejemplo si especifica en /etc/dt/config/C/sys.resources:
AnAplicacion*resource: valor
se establecerá el recurso AnApplication*resource en la propiedad RESOURCE_MANAGER
de cada usuario durante el siguiente inicio de sesión.
Para establecer los recursos personales, agréguelos al archivo DirectorioInicio/.Xdefaults.
Se pueden establecer recursos específicos de una pantalla para todos los usuarios de escritorio del sistema. Asimismo, éstos pueden establecer recursos específicos de pantalla limitados a sus propias sesiones, lo que ofrece la posibilidad de especificar éstos en función de la pantalla utilizada por el usuario para iniciar la sesión de escritorio.
Para establecer recursos específicos de pantalla para todos los usuarios de escritorio del sistema, cree un archivo /etc/dt/config/idioma/sys.resources que especifique los recursos específicos de pantalla.
Para establecer recursos específicos de pantalla personales, especifique el recurso en DirectorioInicio/.Xdefaults.
Estos recursos se delimitan incluyéndolos en sentencias condicionales cpp. Se define una macro DISPLAY_
nombrepantalla en función del valor de la variable $DISPLAY
. Esto se realiza convirtiendo todos los caracteres . (punto) y : (dos puntos) en _ (subrayado), eliminando cualquier especificación de pantalla y finalmente poniendo DISPLAY_
delante del resultado.
Por ejemplo, un valor de $DISPLAY
de :0 sería DISPLAY_0
, y un valor de $DISPLAY
de blanco.gato.com:0.0 sería DISPLAY_blanco_gato_com_0. El valor resultante puede utilizarse como parte de una comprobación de cpp en un archivo de recursos de sesión. Por ejemplo si especifica en /etc/dt/config/C/sys.resources:
MiApl*resource: valor
#ifdef DISPLAY_blanco_gato_com_0 Miapl*resource: valorespecial1 #endif
#ifdef DISPLAY_pablo_gato_com_0 MiApl*resource: valorespecial2 #endif
el recurso MiApl*resource se establecería en RESOURCE_MANAGER
con el valor valorespecial1 cuando el usuario iniciara la sesión en la pantalla blanco.gato.com:0, con el valorespecial2 cuando el usuario iniciara la sesión en pablo.gato.com:0 y con el valor cuando el usuario iniciara la sesión en otra pantalla.
Se pueden especificar aplicaciones alternativas para iniciarlas como parte de la sesión inicial de un usuario.
Copie /usr/dt/config/idioma/sys.session en /etc/dt/config/idioma/sys.session.
Modifique el archivo sys.session nuevo.
Cada entrada de sys.session aparece como:
dtsmcmd -cmd comando_y_opciones
Para iniciar una aplicación adicional como parte de la sesión inicial de un usuario, especifique una nueva entrada de sys.session con un nombre de ruta completo. Por ejemplo, para iniciar /usr/bin/X11/xclock como parte de la sesión inicial de un usuario, agregue una entrada xclock al archivo /etc/dt/config/C/sys.session:
# # Iniciar xclock... # dtsmcmd -cmd "/usr/bin/X11/xclock -digital"
Un usuario puede establecer una sesión para una pantalla concreta que adapte la sesión a una pantalla determinada.
Copie el directorio DirectorioInicio/.dt/sessions a DirectorioInicio/.dt/pantalla donde pantalla es el nombre de sistema real y no calificado (pablo:0 es válido, pero pablo.gato.com:0 o unix:0 no lo son).
Por ejemplo, para crear una sesión concreta de pantalla para la pantalla pablo.gato.com:0:
cp -r DirectorioInicio/.dt/sessions DirectorioInicio/.dt/pablo:0
La próxima vez que el usuario inicie la sesión en la pantalla pablo.gato.com:0, el Gestor de sesiones iniciará la sesión concreta para esa pantalla.
Los usuarios pueden especificar que se ejecuten comandos adicionales al iniciar sus sesiones de escritorio. Esto es útil para definir las configuraciones de X que el Gestor de sesiones no guarda. Por ejemplo, el usuario puede utilizar xsetroot para establecer el puntero de root (área de trabajo). Otra utilidad podría ser iniciar aplicaciones que el Gestor de sesiones no puede guardar ni restablecer. Si una aplicación no vuelve a ejecutarse al restablecer la sesión, el usuario puede utilizar este método para iniciar el cliente.
Generalmente, este archivo es una secuencia de comandos y debe tener permiso de ejecución. Los procesos iniciados en sessionetc deben ejecutarse de fondo.
No utilice sessionetc para iniciar los clientes que Gestor de sesiones restablece automáticamente. Si lo hace, puede provocar que se inicien varias copias de la aplicación, que posiblemente no vea inmediatamente porque las ventanas pueden estar apiladas unas encima de otras.
El archivo sessionexit es parecido a sessionetc. Utilícelo para ejecutar al final de la sesión operaciones que no sean manejadas por el Gestor de sesiones.
Cree un archivo DirectorioInicio/.dt/sessions/sessionexit que contenga los comandos.
De igual manera que sessionetc, este archivo es una secuencia de comandos con permiso de ejecución.
Cuando el Gestor de sesiones guarda una sesión, se almacena la información de la sesión en DirectorioInicio/.dt/sessions o en DirectorioInicio/.dt/pantalla si se está utilizando una sesión con una visualización concreta. En ellos, el Gestor de sesiones crea un subdirectorio llamado current o home para almacenar la información de las respectivas sesiones actual o inicial. Antes de guardar la información de la sesión, el Gestor de sesiones realiza una copia de seguridad de la sesión anterior con el mismo nombre, y la guarda en current.old o home.old.
Inicie la sesión mediante Sesión a prueba de fallos o Inicio de sesión por línea de comandos en la pantalla de inicio de sesión.
Copie el directorio de copia de seguridad de la sesión en el nombre activo. Por ejemplo para recuperar la copia de seguridad de la sesión inicial:
cp -r DirectorioInicio/.dt/sessions/home.old \ DirectorioInicio/.dt/sessions/home
Las sesiones concretas de pantalla se pueden recuperar con el mismo método.
El Gestor de sesiones registra el proceso de arranque de cada sesión de usuario en este archivo.