31 ago. 2011

Deshabilitar terminales virtuales


Generalmente cuando trabajo en un entorno X no me preocupo mucho por las terminales virtuales (esas a las que uno accede con CTRL+ALT+[F1-F12]). De vez en cuando uso un par de ellas (sobre todo para lanzar nuevas X), pero nunca las utilizo todas (generalmente GNU/LINUX habilita 6).
Asi, que para que consumir memoria (asi sea poca) con terminales que no utilizamos?
Si chequeas tus procesos vas a ver que por cada terminal hay un proceso :
#ps -aux

[...]
root      1440  0.0  0.2  1336  468 tty1     Ss+  23:50   0:00 /sbin/agetty 3840
root      1441  0.0  0.2  1336  468 tty2     Ss+  23:50   0:00 /sbin/agetty 3840
root      1442  0.0  0.2  1336  468 tty3     Ss+  23:50   0:00 /sbin/agetty 3840
Para modificar el comportamiento de estas terminales, el archivo clave es /etc/inittab. Alli busca las siguientes lineas (o unas muy parecidas):
# These are the standard console login getties in multiuser mode:
c1:12345:respawn:/sbin/agetty 38400 tty1 linux
[...]
Los numeros 12345 indican los runlevels en los cuales la terminal esta activa (de paso, si alguna vez no te funcionan las terminales chequea que tengas el numero de runlevel apropiado!).
Ahora lo unico que hay que hacer es comentar las lineas correspondientes, de acuerdo a lo que quieras, ejemplo:
c1:12345:respawn:/sbin/agetty 38400 tty1 linux
c2:12345:respawn:/sbin/agetty 38400 tty2 linux
c3:12345:respawn:/sbin/agetty 38400 tty3 linux
#c4:12345:respawn:/sbin/agetty 38400 tty4 linux
#c5:12345:respawn:/sbin/agetty 38400 tty5 linux
#c6:12345:respawn:/sbin/agetty 38400 tty6 linux
Comentando las lineas (con el simbolo "#") deshabilite las terminales 4,5 y 6 (c4,c5,c6), asi me quedo solamente con tres.
Para que los cambios tengan efecto, debes decirle a "init" que vuelva a leer "inittab":
$ init q


No hay comentarios:

Publicar un comentario