Apartamento En Familia

Apartamento En Familia
Apartamento de playa para vacaciones. http://www.apartamentoenfamilia.es. Número registro HUTT-005768

jueves, 18 de febrero de 2010

Crear un sistema de cuotas en Ubuntu

Si queremos que los usuarios de nuestro sistema no consuman más recursos de los disponibles resulta indispensable habilitar un límite de ocupación de espacio en el disco duro. Esto es lo que se conoce como cuotas de disco y en unas pocas líneas os voy a explicar cómo es posible configurar un límite de utilización del disco en Ubuntu GNU/Linux


Instalar la característica de control de cuotas
Podemos hacerlo gráficamente o mediante linea de comandos. El paquete que ten
Publicar entrada
emos que instalar es uno llamado quota.

apt-get install quota
Una vez instalado el paquete, ya podremos indicarle al sistema las particiones en las que aplicaremos las cuotas editando /etc/fstab y añadiendo las opciones usrquota,grpquota

#

/dev/hda5 /home ext3 defaults,usrquota,grpquota 0 2

Llegados a este punto podríamos decir que ya tenemos un sistema de cuotas de disco instalado.  Ahora nos faltaría configurarlo de manera adecuada para que cada usuario del sistema tenga las limitaciones que deseemos. Esto se controla mediante unos archivos de control.


touch /home/quota.user /home/quota.group
chmod 600 /home/quota.*
mount -o remount /home
Con las tres lineas anteriores hemos creado los archivos de control y hemos remontado la partición /home para que estos archivos entren en funcionamiento cuando se inicie el control de cuotas. Para iniciarlo deberemos hacer:
quotacheck -avugm


La primera vez obtendremos un aviso del tipo...
quotacheck: WARNING - Quotafile //quota.user was probably truncated. Can't save quota settings... quotacheck: WARNING - Quotafile //quota.group was probably truncated. Can't save quota settings...
no hay que preocuparse.
Ahora el comando

quotaon /home
Activa finalmente la cuota.


Ahora ya tenemos totalmente activo el sistema de cuotas, aunque sin restricción para ningún usuario. Es el momento de editar la cuota de los usuarios. Antes de nada deberíais saber que existen dos tipos de cuota:
  • Cuotas rígidas: no será posible superar el límite y será negado el acceso.
  • Cuotas flexibles: se pueden superar y el usuario sólo recibirá un aviso de límite excedido. Tras un período de gracia - por defecto 7 días, configurable por partición - la cuota se volverá rígida.
Manos a la obra, en teoría sólo root puede hacer esto y el comando es el siguiente:


edquota -u usuario
Con ello se nos motrará un archivo con diferentes campos:
entonces se nos mostrará una serie de registros con los siguientes campos:
  • Filesystem (el sistema de archivos en el que se aplica la cuota)
  • blocks (el número de bloques máximo a ocupar. 0 = ilimitado)
  • soft (el número de KB máximo a ocupar para cuota flexible. 0 = ilimitado)
  • hard (el número de KB máximo a ocupar para quota rígida. 0 = ilimitado)
  • inodes (el número de archivos máximo. 0 = ilimitado)

Editando nuestras preferencias y guardando, las limitaciones para el usuario en cuestión quedan activadas. También podemos tomar como modelo a otro usuario ya existente copiando de uno a otro las mismas restricciones:

edquota -p usuariomodelo usuario
Evidentemente, como en casi toda la administración de un sistema GNU/Linux, luego la imaginación de cada adminitrador hace el resto:
edquota -p user1 `gawk -F: '$3 > 499 {print $1}' /etc/passwd`

 Con esto prácticamente habríamos acabado. Antes de darlo por finalizado, me gustaría hablaros del  /etc/warnquota.conf que nos servirá para automatizar un mensaje de correo electrónico para avisar a los usuarios de que estan infringiendo alguna restricción de cuotas:

  • FROM: Nombre con el cual el usuario recibirá el correo, entrecomillado. Regularmente el nombre del administrador del sistema, o simplemente “Administrador de Sistemas”
  • SUBJECT: Tema con el cual se enviará el correo. Entrecomillado.
  • CC_TO: Dirección de correo a quien enviarle copia del mensaje. Regularmente, al administrador del sistema para que esté informado del evento
  • MESSAGE: Mensaje a enviar. El caractér “|” realiza un retorno de carro, haciendo que el texto quede en una nueva línea del mensaje
  • SIGNATURE: Firma del administrador
  • GROUP_MESSAGE: Mensaje a enviar en caso de cuotas de grupo
  • GROUP_SIGNATURE: Firma del administrador hacia el grupo
 Con todo lo anterior ya tendreis lo necesario para empezar a usar el sistema de cuotas de disco.

That u don't know what you've got 'til it's gone