Configurando init para iniciar getty: el archivo /etc/inittab

Cuando init comienza su ejecuci�n, lee el archivo de configuraci�n /etc/inittab. Mientras el sistema se est� ejecutando, puede releerse este archivo de configuraci�n si la se�al HUP es enviada al proceso; [27] esta acci�n permite que no sea necesario reiniciar todo el sistema para que los cambios en la configuraci�n de init tomen efecto.

El archivo /etc/inittab es un poco complicado. Debido a esto, comenzaremos su explicaci�n con el simple caso de configurar l�neas getty. Las l�neas de texto dentro del archivo /etc/inittab consisten de cuatro campos delimitados por dos puntos:

 id:runlevels:action:process 

La descripci�n de cada uno de los campos est�n explicados en los p�rrafos sucesivos. Adem�s, /etc/inittab puede contener l�neas vac�as y l�neas que comiencen con el s�mbolo numeral (`#'), las cuales son ignoradas al ser le�das por init.

id

Este campo identifica a la l�nea dentro del archivo. Para l�neas getty, especifica la terminal en que debe ejecutarse (los caracteres despu�s de /dev/tty en el nombre del archivo de dispositivo). Para otros tipos de l�neas, este campo no tiene importancia. El valor en este campo debe ser �nico (no se permite que existan dos id iguales) y la longitud no puede exceder la de cuatro caracteres.

runlevels

Los niveles de ejecuci�n en los cuales la l�nea debe ser considerada. Los niveles de ejecuci�n est�n dados por d�gitos simples, sin delimitadores. (los niveles de ejecuci�n ser�n descriptos en la pr�xima secci�n).

action

Define la manera en que debe ser tratada la l�nea. Por ejemplo, si el valor es respawn, entonces el comando que se detalle en el pr�ximo campo se ejecutar� nuevamente cada vez que finalice, en cambio, si el valor es once, el comando se ejecuta una �nica vez.

process

El comando a ejecutar.

Para iniciar un getty en la primera terminal virtual (/dev/tty1), en todos los niveles de ejecuci�n multiusuarios normal (2-5), debe escribir la siguiente l�nea:

 1:2345:respawn:/sbin/getty 9600 tty1 

El primer campo se�ala que esta es la l�nea para el archivo de dispositivo /dev/tty1. El segundo campo indica que esta entrada se aplica a los niveles de ejecuci�n 2,3,4 y 5. El tercer campo significa que el comando debe ser ejecutado nuevamente, despu�s de que este termine (para que uno pueda ingresar al sistema, salir y entonces poder ingresar nuevamente). El �ltimo campo es el comando que ejecuta a getty en la primera terminal virtual [28]

.

Si desea agregar terminales o l�neas m�dem (dial-in) a un sistema, debe agregar mas l�neas a /etc/inittab, una para cada terminal o l�nea de auto-respuesta. Si necesita conocer mas detalles, lea las p�ginas de manual para init, inittab y getty.

En caso de que un comando falle cuando comience su ejecuci�n, e init est� configurado para reiniciarlo, el sistema consumir� una gran cantidad de recursos, debido a que la acci�n de ejecutar el comando se repetir� infinitamente. Para prevenir este tipo de problemas, init registra que tan frecuentemente reinicia un comando, y si la frecuencia crece a valores muy altos, init espera por cinco minutos antes de reiniciarlo nuevamente.



[27] Utilizando el comando kill -HUP 1 como root, por ejemplo

[28] Diferentes versiones de getty son ejecutadas diferentemente. Lea la p�gina de manual para conocer mayores detalles, y tambien est� seguro de estar leyendo la p�gina de manual correcta.