        |
Arranque (de X-Windows) en las OPs de Alto Arenal
El objetivo del estudio era reiniciar el Servidor-X en una OP de AltoArenal (Captura+CTC+Radiotelefonía, sin POI).
Para lograrlo, lo primero fue analizar el modo de arranque de las X-windows, y las aplicaciones en estas máquinas.
Y esto precisamente es lo que se pretende documentar aquí.
Orden de arranque, NombreProceso (Fichero asociado):
dtrc (/sbin/init.d/dtlogin.rc)
|
|--> dtlogin (/usr/dt/bin/Xsession)
|
|--> X [ Servidor X ]
|--> dtlogin (/usr/local/dt/bin/Xsession.dsa)
|
|--> ksh -c DT=true; export DT; (/home/opermm/.login y .xsession)
|
|--> mwm [ Windows Manager ]
- Tras haber arrancado el servidor X, se llama al proceso dtlogin con un fichero Xsession particular.
- Dentro del fichero Xsession.dsa se hace la llamada a los ficheros .xsession y .login del usuario opermm.
- Y finalmente, es dentro del archivo .xsession donde se va invocando tanto a las aplicaciones
(CTC, Captura y Radiotelefonía) como al Windows Manager.
Forzar arranque automático de las X con un usuario concreto (sin identificarse en el cajetin del Login):
Añadir en el archivo /etc/dt/config/Xaccess una línea con la siguiente sintaxis:
<hostname> BYPASS_LOGIN <user_login>
Ej: op23_mm BYPASS_LOGIN opermm
Problemas encontrados:
Creamos el Script /sbin/init.d/Operador donde se mata las aplicaciones y después se matan los procesos X, mwm y dtlogin.
Para este ultimo, no vale con ejecutar:
/sbin/init.d/dtlogin.rc stop
porque si no se matan los 2 procesos dtlogin, la existencia o no del fichero Xaccess no se detecta.
Para conseguir el arranque automático con el usuario adecuado (hay un usuario de sesion y otro para el POI) fue necesario dar permiso recursivo 777 a:
/users/ctcs (ya que de ahi cuelgan todos los ejecutables del CTC)
/home/etc (ya que existe una base de datos de operadores en /home/etc/ws/mmbd_claves.op)
Además, fue necesario actualizar la variable $DISPLAY y la variable $HOME utilizadas en /home/opermm/.xsession
También modificamos /usr/local/dt/bin/Xsession.dsa para añadir un ficherillo de trazas.
Arranque:
Es necesario invocar el script /sbin/init.d/Operador desde el "crontab" ya que si se invoca desde una ventana, al matar el propio script el "Entorno gráfico", éste nunca termina.
|