Capítulo 10. Entrando y saliendo del sistema

Tabla de contenidos

Accediendo a través de terminales
Accediendo a través de la red
Lo que hace login
X y xdm
Control de acceso
Intérprete de comandos

"Jamás pertenecería a un club en el que me aceptaran como miembro" ”(Groucho Marx)

Esta sección describe lo que ocurre cuando un usuario accede o sale del sistema. Las diferentes interacciones de los procesos en segundo plano, ficheros de bitácora, ficheros de configuración, y demás serán descritas en mayor o menor medida.

Accediendo a través de terminales

Figura 10.1, “Accediendo a través de terminales: la interacción de init, getty, login y el intérprete de comandos.” muestra cómo se realiza la entrada a través del terminal. En primer lugar, "init" se asegura que hay un programa "getty" disponible para la conexión del terminal (o consola). "getty" escucha el terminal y espera para notificar al usuario que está listo para acceder al sistema (generalmente eso significa que el usuario debe escribir algo). Cuando se detecta a un usuario, "getty" escribe un mensaje de bienvenida (almacenado en /etc/issue), pregunta por el nombre de usuario, y finalmente ejecuta el programa "login". "login" coge el nombre de usuario como parámetro, y le solicita al usuario su contraseña. Si estos concuerdan, "login" ejecuta el intérprete de comandos configurado para el usuario; de otra forma simplemente sale y termina el proceso (quizá después de dar otra oportunidad al usuario para introducir su nombre de usuario y contraseña). "init" percibe que el proceso ha terminado, y ejecuta un nuevo "getty" para el terminal.

Figura 10.1. Accediendo a través de terminales: la interacción de init, getty, login y el intérprete de comandos.

Accediendo a través de terminales: la interacción de init, getty, login y el intérprete de comandos.

Tenga en cuenta que el único proceso nuevo es aquél creado por "init" (utilizando la llamada al sistema "fork"); "getty" y "login" únicamente reemplazan el programa ejecutado durante el proceso (utilizando la llamada al sistema "exec").

Se necesita un programa independiente, para avisar al usuario, en el caso de líneas series, ya que puede ser complicado (y tradicionalmente así es) darse cuenta cuándo se activa un terminal. "getty" también se adapta a la velocidad y otros parámetros de la conexión, lo que es especialmente importante para conexiones telefónicas, donde estos parámetros pueden variar entre llamada y llamada.

Existen varias versiones de "getty" e "init" que se pueden utilizar, cada una con sus ventajas e inconvenientes. Es buena idea aprender las versiones de su sistema, y también las otras versiones (puede utilizar el "Linux Software Map" para buscarlas). Si no tiene conexión telefónica, probablemente no deba preocuparse sobre getty, pero init será todavía importante.