Preparación para el examen LPI 101

Tema 110.2
Configurando el inicio de sesiones gráficas

Créditos y licencia de uso

Coordinación:

Manuel Guillán (xLekOx) lpi@xlekox.org

Traducción:

Dani Donisa (kasei) kasei@flashmail.com

Maquetación:

Manuel Guillán (xLekOx) lpi@xlekox.org

Versión 1.0 (07-03-2005 14:00)

Distribuido por FreeUOC (www.freeuoc.org) bajo licencia: Attribution-NonCommercial-ShareAlike2.0 de commons creative

http://creativecommons.org/licenses/by-nc-sa/2.0/

ÍNDICE

Índice de contenido

Tema 110.2
Configurando el inicio de sesiones gráficas	1

Créditos y licencia de uso	2

ÍNDICE	3

Introducción	4

Configurando el proceso de inicio	5

Los arranques gráficos: xdm	7

Activando y desactivando XDM	7

Configurando XDM	7

KDM y GDM	8

Bibliografia y enlaces recomendados	9

Introducción

En este capítulo se verá como configurar el gestor de sesiones gráficas, arrancar en modo gráfico, usar kdm, gdm, xdm ...

Este tema tiene un peso (importancia) de 3 de cara al examen final de la certificación LPI 101. El total de la suma de pesos de todos los temas es de 106.

Configurando el proceso de inicio

Después de ejecutarse LILO, el kernel ejecuta su primer proceso: init. Es importante resaltar que al ser el primer proceso, Init siempre tendrá el pid=1. Todos los demás procesos iniciados después de Init, son procesos hijos suyos. Eso puede verse reflejado en el siguiente fragmento:

[invitado@iMac invitado]$ ps -eaf

UID PID PPID C STIME TTY TIME CMD

root 1 0 0 Feb24 ? 00:00:00 init [5]

root 2 1 0 Feb24 ? 00:00:00 [ksoftirqd/0]

root 3 1 0 Feb24 ? 00:00:00 [events/0]

root 4 3 0 Feb24 ? 00:00:00 [khelper]

root 18 3 0 Feb24 ? 00:00:00 [kblockd/0]

Cuando se ejecuta Init, este obtiene su configuración del fichero /etc/inittab. Cada una de las entradas en el fichero /etc/inittab tiene la siguiente sintaxis:

id:runlevels:acción:proceso

En cualquiera de las líneas en las que aparezca el símbolo #, se ignorará todo su contenido a la derecha de este. La siguiente tabla describe los campos:

Campo	Descripción
id	Una cadena única de uno a cuatro caracteres que identifica una entrada en el fichero inittab.
runlevels	La lista de runlevels, o niveles de ejecución para los que la acción de esta entrada va a llevarse a cabo.
acción	Especifica la acción que se llevará a cabo.
proceso	El proceso que deberá ejecutarse.

La siguiente tabla describe las acciones a tomar

Acción	Descripción
Respawn	El proceso se regenerará en cuanto sea terminado. Lo podréis ver con el proceso de login getty, que necesita ser regenerado siempre.
Wait	El proceso se iniciará una sola vez e Init esperará a que termine antes de continuar.
Once	El proceso se iniciará una sola vez, cuando corresponda, en su runlevel.
Boot	El proceso se iniciará durante el arranque y se ignorará cualquier entrada de runlevel que pudiera tener.
Bootwait	El proceso se iniciará durante el arranque e Init esperará a que termine antes de continuar.
Initdefault	Especifica el runlevel que se ejecutará por defecto durante el arranque.
Sysinit	Esta entrada se ejecutará durante el arranque, antes que cualquier otra entrada boot o bootwait. Init ignorará el campo runlevel para este tipo de entradas.
Powerwait	Esta entrada se procesa cuando falla la toma de energía del sistema. Por ejemplo cuando lo indica un SAI. Init esperará a que termine antes de continuar.
Powerfail	Esta entrada se procesa cuando falla la toma de energía del sistema, con la diferencia que Init no esperará a que termine para continuar.
Powerokwait	Esta entrada se ejecuta cuando la toma de energía vuelve a estar disponible e Init esperará a que termine antes de continuar.
Powerfailnow	Esta entrada se ejecuta cuando el SAI indica al sistema que sus baterías están a punto de agotarse.
Ctrlaltdel	Esta entrada se procesa cuando un usuario pulsa la combinación de teclas Ctrl-Alt-Supr.
Kbrequest	Ejecuta el proceso indicado cuando se pulsa la combinación especial de teclas definida.

Veamos un ejemplo de un fichero /etc/inittab:

id:3:initdefault

Initdefault establece el runlevel por defecto que el sistema usará para arrancar, en este caso el runlevel 3.

# System initialization

si::sysinit:/etc/rc.d/rc.sysinit

Esta linea ejecuta el script /etc/rc.d/rc.sysinit durante la inicialización del sistema. Este script va a ejecutarse antes que ningún otro, e init esperará a que acabe antes de proseguir.

l0:0:wait:/etc/rc.d/rc 0

l1:1:wait:/etc/rc.d/rc 1

l2:2:wait:/etc/rc.d/rc 2

l3:3:wait:/etc/rc.d/rc 3

l4:4:wait:/etc/rc.d/rc 4

l5:5:wait:/etc/rc.d/rc 5

l6:6:wait:/etc/rc.d/rc 6

Estas líneas configuran los scripts a ejecutar bajo cada runlevel. Si por ejemplo el sistema cambia a runlevel 5, se ejecutará “/etc/rc.d/rc 5”. En este caso el tercer campo a “wait” especifica que init también esperará a que finalice la ejecución antes de proseguir.

# Things to run in every runlevel

ud::once:/sbin/update

Esta línea establece que /sbin/update deberá ser ejecutado en cualquier runlevel.

# Trap CTRL-Alt-Del

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Esta otra línea establece que cuando se pulse la combinación Ctrl-Alt-Del, deberá ejecutarse el comando “/sbin/shutdown -t3 -t now”.

pf::powerfail:/sbin/shutdown -f -h +2 “Power failure: System shuting down”

Esta linea establece que si ocurre un fallo en la toma de energía, debe apagarse el sistema.

pr:12345:powerokwait:/sbin/shutdown -c “Power restored: Shutdown cancelled”

Esta línea aborta el cierre del sistema si este detecta que la energía ha sido restablecida.

1:2345:respawn:/sbin/mingetty tty1

2:2345:respawn:/sbin/mingetty tty2

3:2345:respawn:/sbin/mingetty tty3

4:2345:respawn:/sbin/mingetty tty4

5:2345:respawn:/sbin/mingetty tty5

6:2345:respawn:/sbin/mingetty tty6

El proceso “/sbin/mingetty” se ejecutará para los runlevels 2,3,4 y 5. mingetty establece el login de las consolas. “Respawn” indica que se deberá regenerar en caso de que finalice su ejecución.

x:5:respawn:/etc/X11/prefdm -nodaemon

Esta última línea inicia el sistema gráfico para el runlevel 5.

Los arranques gráficos: xdm

Dentro de los diversos tipos de arranques en modo gráfico, xdm (que viene de serie con Xfree86), es el más sencillo. xdm presenta una GUI sencilla para registrar el login en el sistema, cuando nos identificamos correctamente, aparecemos directamente en nuestra sesión X Window. Si salimos de la sesión, el sistema nos devolverá a xdm.

Activando y desactivando XDM

Cuando está activado, xdm se inicia durante el arranque a través de un runlevel. En Debian por ejemplo, se activa usando un enlace a un script llamado S99xdm, mientras que en Red Hat, el sistema cambia de runlevel 3 al 5.

Configurando XDM

Xdm puede ser difícil y complicado de configurar, puesto que tiene varios ficheros que deben ser

mantenidos. Las secciones siguientes cubren la configuración de los ficheros más importantes para configurar xdm.

xdm-config

Este es el fichero de configuración principal de xdm. Este fichero establece la operativa básica de xdm, que para la mayoría de instalaciones no deberá ser cambiado nunca, pero si es necesaria la configuración del sistema para permitir logins remotos, deberá ser necesario realizar algún ajuste. No entraremos en mucho detalle, pero por ejemplo, si deseáramos permitir logins remotos a través de xdm, deberíamos cambiar la siguiente línea:

DisplayManager.requestPort: 0

Y comentarla para permitir a xdm escuchar consultas:

!DisplayManager.requestPort: 0

Xsession

Xdm usa el script Xsession para varias cosas:

Recoger los errores durante la inicialización de las sesión y redirigirlo al fichero
${HOME}/.xsession-errors.

Cargar variables.

Cargar los mapas de teclado correspondientes.

Y averiguar que escritorio debe proporcionar a cada usuario para su sesión (KDE, Gnome ...)

Xresources

En Xresources se definen los recursos que permiten personalizar la pantalla de login para xdm. Se usa el formato estándar Xresource, discutido más adelante, para cambiar colores, tipos de fuente y demás.

KDM y GDM

Kdm no es más que la versión del KDE del xdm, y el GDM la versión de Gnome. Con un aspecto mucho más mejorado y con más opciones.

Para escoger que gestor de arranque utilizar en el arranque:

Red Hat: hay que editar el fichero /etc/inittab, buscar la cadena xdm y reemplazarla con kdm o gdm.

Debian: Editar el fichero /etc/X11/default-display-manager y poner el gestor deseado.

Bibliografia y enlaces recomendados

LPIC 1 Certification Bible (Bible) by Angie Nash, Jason Nash

John Wiley & Sons; Bk&CD-Rom edition (July 1, 2001) ISBN: 0764547720
LPI Linux Certification in a Nutshell by Jeffrey Dean
O'Reilly & Associates; 1st ed edition (May 15, 2001) ISBN: 1565927486
CramSession's LPI General Linux Part 1 : Certification Study Guide
CramSession.com; ISBN: B000079Y0V; (August 17, 2000)

Referencias Unix Reviews

http://www.unixreview.com/documents/s=7459/uni1038932969999/

Página LPI: www.lpi.org

Apuntes IBM: http://www-106.ibm.com/developerworks/edu/l-dw-linux-lpir21-i.html

Manuales GPL: http://www.nongnu.org/lpi-manuals/

Tema 110.2 Configurando el inicio de sesiones gráficas

Página 9 de 9

Tema 110.2 LPI

2004-07-21T14:39:00