Algunos filesystems permiten limitar el uso del disco a los usuarios y grupos: cuotas - Evitan que los usuarios monopolicen el disco
- Pueden causar problemas a los usuarios:
- preferible instalar más disco o avisar a los usuarios que consuman demasiado
Límites de cuotas: - Límite débil: si la cuenta del usuario o del grupo supera el límite débil, se impondrá un período de gracia en el que el usuario podrá reducir la ocupación
- Límite duro: se deniega cualquier intento de escribir datos despúes de este límite
- Período de gracia: tras superar el límite débil, si el usuario no resuelve el problema borrando archivos, la cuenta se bloquea
Si el kernel está configurado para soportar cuotas, los pasos a seguir son: - Instalar el paquete quota
- Modificar /etc/fstab para marcar los filesystems que tendrán cuotas:
/dev/hda9 /home ext3 defaults,usrquota 0 2
/dev/hda8 /tmp ext3 defaults,usrquota,grpquota 0 2
- Reiniciar el sistema
- Usar el comando edquota para editar las cuotas de usuarios y grupos
Permite crear, manipular y eliminar cuotas basadas en usuarios o grupos - Sintaxis:
edquota [opciones] [usuario|grupo]
- Opciones:
- -u usuario configura las cuotas del usuario
- -g grupo configura las cuotas para un grupo
- -f filesystem realiza las operaciones obre un filesystem concreto (por defecto, lo hace sobre todos los filesystems que admitan cuotas)
- -t configura el período de gracia
- -p user1 usuarios copia la configuración de cuotas de user1 a los usuarios indicados
- Al ejecutar edquota se abre el editor indicado en la variable EDITOR (por defecto, vi) para modificar las cuotas:
- se muestran los bloques de 1K en uso, así como los límites soft y hard (también para i-nodos o ficheros)
- si un límite está a 0 no se aplica
- esta información se guarda en los ficheros aquota.user y aquota.group en el directorio base del filesystem
Existen otros comandos para la gestión de las cuotas: $ quota
Disk quotas for user tomas (uid 1001):
Filesystem blocks quota limit grace files quota limit grace
/dev/hda9 108* 100 200 6days 9 0 0
/dev/hda8 1 10 20 1 0 0