5.7
Cuotas y lÍmites En los sistemas
Linux existe la posibilidad de limitar los recursos
a usuarios o grupos, por ejemplo el máximo
número de logins que pueden realizar simultáneamente,
el máximo tiempo de CPU, ... Estos límites
se controlan a través del fichero /etc/security/limits.conf.
Concretamente, en este fichero se controlan los
límites sobre los procesos de un usuario.
Abre el programa “nautilus” desde
el menú Aplicaciones -> Accesorios y
localiza el archivo limits.conf. Aunque el archivo
está en inglés es muy fácil
modificarlo; en primer lugar todas las líneas
que empiezan por “#” son comentarios
(es decir, se ignoran), que como puedes ver son
todas (no hay establecido ningún límite
todavía). Cada línea que vamos a
poner tiene cuatro campos: - domino (domain): será el nombre de usuario
o de grupo (precedido por una “@”)
al que le vamos a poner algún tipo de restricción;
el “*” significa todo el mundo. - tipo (type): puede tomar dos valores, “soft”
y “hard”. Representan respectivamente
el límite “suave” y el límite
“duro”. El suave indica la cantidad
que no debe ser sobrepasada, pero que se puede
superar de forma temporal; el duro es el límite
que nunca puede superarse. Por decirlo de algún
modo, la diferencia entre ellos nos da un cierto
margen que puede traspasarse durante algún
tiempo, pasado el cual debemos bajar del límite
suave. - objeto (item): es el elemento que vamos a limitar;
de entre las opciones disponibles las más
utilizadas son: • fsize: tamaño máximo de
archivos (en KiloBytes).
• memlock: máxima cantidad de memoria
(en KiloBytes).
• cpu: máximo tiempo de CPU (en minutos).
• nproc: número máximo de
procesos.
• maxlogins: número máximo
de logins simultáneos.
• priority: la prioridad con la que ejecutar
los procesos de este usuario. De esta forma, si queremos que nadie realice
más de cuatro logins podemos añadir: * hard maxlogins 4 Y si queremos limitar el tamaño máximo
de archivo para el grupo “internet” a 2 MB pero que pueda llegar a 4 de forma puntual: @internet soft fsize 2048
@internet hard fsize 4096 Ten en cuenta que no es posible (ni conveniente)
establecer límites para root. Existe otro mecanismo para establecer límites,
pero está pensado para limitar y controlar
el uso del espacio en disco disponible en un sistema.
Se pueden establecer límites en la cantidad
de espacio y el número de ficheros de que
puede disponer un usuario o grupo. Para poder
utilizarlo se necesitan cuatro elementos: • Configurar el núcleo con la opción
“Disk QUOTA support”; los núcleos
que se distribuyen ya disponen de esta opción
activada. • Disponer de herramientas para manipular
las quotas; el paquete se denomina “quota” y puede instalarse mediante apt (apt-get install
quota). Si no lo tienes instalado ya ahora es
el momento de hacerlo. • Habilitar las quotas sobre uno o más
sistemas de ficheros; para ello hay que editar
el archivo /etc/fstab y añadir las opciones
“usrquota” y “grpquota”
al sistema de ficheros en el que queramos activar
las quotas (por ejemplo el montado como “/”).
Antes de que se te olvide modifica ese archivo
ahora; para activar los cambios y no tener que
reiniciar escribe “mount -o remount /”
(o la partición que corresponda). • Configurar las quotas. Para realizar
este último punto hay que ejecutar: # quotacheck -avugm La primera vez que se ejecuta va a crear dos
archivos en el directorio raíz: aquota.user
y aquota.group, como puedes ver en la imagen. Para editar la quota de un usuario o grupo se
usa el programa “edquota” con la opción
“-u” para usuarios y “-g”
para grupos; lo único que hay que modificar
son los límites “soft” y “hard”,
que tienen el mismo significado que antes. Pueden
limitarse el número de bloques y el número
de nodos-i; los números que aparecen son
los que está utilizando el usuario en ese
momento. Este editor es similar a “vi”, por
lo que si no estás familiarizado con él
te costará un poco manejarlo. De cualquier
manera sigue este orden: pulsa la tecla “i”,
muévete con las flechas del cursor hasta
la cifra del límite soft, escribe 20, colócate
sobre el límite hard y escribe 30; después
pulsa la tecla de escape (esc) y teclea “:qw”
(sin las comillas); si lo has hecho bien volverás
al símbolo del sistema.
Se puede cambiar de la misma forma el periodo
de gracia con “edquota -t”. Puedes ver las cuotas establecidas para un usuario
llamado “alumno” con “quota
-u alumno”, y la de todos los usuarios con
“repquota sistema_de_ficheros”. Para eliminar las quotas basta con establecer
sus límites soft y hard a cero. |