Además de controlar el espacio en disco usado por el sistema (consulte la Sección 26.3.1), el almacenamiento en disco se puede restringir mediante la implementación de cuotas de disco y de esta manera el administrador es notificado antes de que un usuario consuma mucho espacio en disco o que una partición se llene.
Las cuotas se pueden configurar para usuarios individuales o para grupos. Este tipo de flexibilidad hace posible darle a cada usuario una pequeña porción del disco para que maneje sus archivos personales (tales como correo o informes), mientras que se le permite tener más espacio para manejar los proyectos en los que estén trabajando o cuotas más grandes (asumiendo que a los proyectos se les dá sus propios grupos).
Además, se puede configurar las cuotas no sólo para que controlen el número de bloques de disco pero también el número de inodes. Debido a que los inodes son usados para contener información relacionada a los archivos, esto permite controlar el número de archivos que pueden ser creados.
El RPM quota debe estar instalado para implementar las cuotas de disco. Para más información sobre la instalación de paquetes RPM, consulte Parte V.
Para implementar cuotas de disco, siga los pasos siguientes:
Active cuotas por sistema de archivo modificando /etc/fstab
Vuelva a montar el sistema de archivos
Cree los archivos cuota y genere la tabla de uso de espacio en disco
Asigne las cuotas
A continuación se describen cada uno de estos pasos en detalle.
Como usuario root, use el editor de texto de su preferencia, añada las opciones usrquota y/o grpquota al sistema de archivos que requiere cuotas:
LABEL=/ / ext3 defaults 1 1 LABEL=/boot /boot ext3 defaults 1 2 none /dev/pts devpts gid=5,mode=620 0 0 LABEL=/home /home ext3 defaults,usrquota,grpquota 1 2 none /proc proc defaults 0 0 none /dev/shm tmpfs defaults 0 0 /dev/hda2 swap swap defaults 0 0 /dev/cdrom /mnt/cdrom udf,iso9660 noauto,owner,kudzu,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0 |
En este ejemplo, el sistema de archivos /home tiene cuotas de usuario y grupo ambas activadas.
Después de agregar las opciones userquota y grpquota, vuelva a montar cada sistema de archivos cuyas entradas fstab hayan sido modificadas. Si el sistema de archivo no está siendo usado por ningún proceso, use el comando umount seguido de mount para volver a montar el sistema de archivos. Si el sistema de archivos está siendo usado actualmente, el método más fácil para volver a montar el sistema de archivos es reiniciando el sistema.
Después de volver a montar cada sistema de archivos con cuotas, el sistema puede funcionar con cuotas de disco. Sin embargo, el sistema de archivos mismo no está listo para soportar cuotas. El próximo paso es ejecutar el comando quotacheck.
El comando quotacheck examina los sistemas de archivos con cuotas activadas y construye una tabla del uso del disco por sistema de archivo. La tabla es luego usada para actualizar la copia del uso del disco del sistema operativo. Además, los archivos de cuotas de disco del sistema de archivos, son actualizados.
Para crear los archivos de cuotas (aquota.user y aquota.group) en el sistema de archivos, use la opción -c del comando quotacheck. Por ejemplo, si las cuotas del usuario y grupos están activadas para la partición /home, cree los archivos en el directorio /home:
quotacheck -acug /home |
La opción -a significa que todos los sistemas de archivos no NFS montados en /etc/mtab son chequeados para ver si las cuotas están activadas. La opción -c especifica que los archivos de cuota deberían ser creados para cada sistema de archivos con cuotas activadas, la opción -u especifica que se debe verificar por cuotas de usuario, y la opción -g indica verificar por cuotas de grupo.
Si no se especifican ninguna de las opciones -u ni -g, sólo se creará el archivo de cuota de usuario. Si únicamente se especifica la opción -g, sólo se creará el archivo de cuota de grupo.
Después de creados los archivos, ejecute el comando siguiente para generar la tabla del uso actual del disco duro por el sistema de archivos con cuotas activadas:
quotacheck -avug |
Las opciones usadas son como se muestra a continuación:
a — Verifica todos los sistemas de archivos montados localmente con cuotas activadas
v — Muestra detalles informativos a medida que la verificación de cuotas se ejecuta
u — Verifica la información de cuota de disco
g — Verifica la información de cuota de disco del grupo
Después que quotacheck ha finalizado, los archivos de cuotas correspondiente a las cuotas activas (usuario y/o grupos) son poblados con datos para cada sistema de archivos con cuotas activadas, tal como /home.
El último paso es asignar las cuotas de disco con el comando edquota.
Para configurar la cuota por usuario, como usuario root en el intérprete shell, ejecute el comando:
edquota username |
Ejecute este paso para cada usuario para el cual desea implementar una cuota. Por ejemplo, si una cuota es activada en /etc/fstab para la partición /home (/dev/hda3) y se ejecuta el comando edquota testuser, se mostrará lo siguiente en el editor configurado como predeterminado en su sistema:
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/hda3 440436 0 0 37418 0 0 |
![]() | Nota |
---|---|
El editor de texto definido por la variable de ambiente EDITOR es usado por edquota. Para cambiar el editor, configure la variable de ambiente EDITOR a la ruta completa del editor de su preferencia. |
La primera columna es el nombre del sistema de archivos que tiene una cuota activada. La segunda columna muestra cuántos bloques está usando el usuario actualmente. Las próximas dos columnas son usadas para colocar límites de bloques duros y suaves para el usuario del sistema de archivos. La columna inodes muestra cuántos inodes está usando el usuario actualmente. Las últimas dos columnas son usadas para colocar los límites duros y suaves para los inodes del usuario en el sistema de archivos.
Un límite duro es la cantidad máxima absoluta de espacio en disco que un usuario o grupo puede usar. Una vez que se alcance el límite, no se puede usar más espacio.
El límite suave define la cantidad máxima de espacio en disco que puede ser usado. Sin embargo, a diferencia del límite duro, el límite suave puede ser excedido durante cierto tiempo. Este tiempo es conocido como período de gracia. El período de gracia puede ser expresado en segundos, minutos, horas, días, semanas o meses.
Si cualquiera de los valores está especificado a 0, ese límite no está configurado. En el editor de texto, cambie los límites deseados. Por ejemplo:
Disk quotas for user testuser (uid 501): Filesystem blocks soft hard inodes soft hard /dev/hda3 440436 500000 550000 37418 0 0 |
Para verificar que la cuota para el usuario ha sido configurada, use el comando:
quota testuser |
Las cuotas también pueden ser asignadas por grupos. Por ejemplo, para configurar una cuota de grupo para el grupo devel, use el comando (el grupo debe existir antes de configurar la cuota):
edquota -g devel |
Este comando muestra la cuota existente para el grupo en el editor de texto:
Disk quotas for group devel (gid 505): Filesystem blocks soft hard inodes soft hard /dev/hda3 440400 0 0 37418 0 0 |
Modifique los límites y guarde el archivo, luego configure la cuota.
Para verificar que la cuota del grupo ha sido definida, use el comando:
quota -g devel |
Para asignar cuotas basándose en cada sistema de archivos activado para cuotas, use el comando:
edquota -t |
Como los otros comandos edquota, abre una de las cuotas actuales para el sistema de archivos en el editor de texto:
Grace period before enforcing soft limits for users: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda3 7days 7days |
Cambie el período de gracia del bloque o inode, guarde los cambios del archivo y salga del editor.