Tabla de contenidos
“"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.
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.
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.