Las cuotas permiten especificar límites en el uso de disco que puede ocupar un usuario o un grupo. Obligan a los usuarios a mantenerse debajo de su límite de consumo de disco, quitándoles su habilidad de consumir espacio ilimitado de disco en un sistema.
Para instalar el sistema de cuotas de Linux debemos ejecutar:
yum -y install quota
Ahora comprobamos si la cuota ya está habilitada para el sistema de archivos donde se almacenan los sitios web (/var/www) y los datos de maildir (var/vmail). En este ejemplo de configuración, tenemos una gran partición raíz, así que buscamos ‘/’:
mount | grep ' / '
Esto deberá mostrar algo como:
[root@desarrolloN ~]# mount | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,noquota)
[root@desarrolloN ~]#
Si tiene una partición /var diferente, utilice:
mount | grep ' /var '
Si la línea contiene la palabra “noquota”, proceda con los siguientes pasos para habilitar la cuota.
Habilitación de la cuota en la partición / (root)
Normalmente se habilitará la cuota en el archivo /etc/fstab, pero si el sistema de archivos es el sistema de archivos raíz “/”, entonces la cuota debe ser habilitada por un parámetro de arranque del kernel de Linux.
Edite el archivo de configuración de grub:
nano /etc/default/grub
Busque la línea que comienza con GRUB_CMDLINE_LINUX y agregue rootflags=uquota,gquota a los parámetros de la línea de comandos para que la línea resultante tenga este aspecto:
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet rootflags=uquota,gquota"
Y aplique los cambios ejecutando el siguiente comando.
cp /boot/grub2/grub.cfg /boot/grub2/grub.cfg_bak
grub2-mkconfig -o /boot/grub2/grub.cfg
Y reinicie el servidor.
reboot
Ahora compruebe si la cuota está habilitada:
mount | grep ' / '
Deberá mostrar algo como:
[root@desarrolloN ~]# mount | grep ' / '
/dev/mapper/centos-root on / type xfs (rw,relatime,attr2,inode64,usrquota,grpquota)
[root@desarrolloN ~]#
Cuando la cuota está activa, podemos ver “usrquota,grpquota” en la lista de opciones de montaje.
Habilitar la cuota en una partición /var separada
Si tiene una partición /var diferente, edite /etc/fstab y añada ,uquota,gquota a la partición / (/dev/mapper/centos-var):
nano /etc/fstab
Debería mostrar algo como:
#
# /etc/fstab
# Created by anaconda on Sun Sep 21 16:33:45 2014
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 1 1
/dev/mapper/centos-var /var xfs defaults,uquota,gquota 1 2
UUID=9ac06939-7e43-4efd-957a-486775edd7b4 /boot xfs defaults 1 3
/dev/mapper/centos-swap swap swap defaults 0 0
Ahora, para habilitar la quota ejecute los siguientes comandos:
mount -o remount /var
quotacheck -avugm
quotaon -avug
Cuando aparezca un error de que no hay ninguna partición con la cuota activada, reinicie el servidor antes de continuar.