Categorías

Entradas recientes

Comentarios recientes


« Integración GLPI + OCS | Main | 2 Grandes temas intrepretado por una gran banda…. »

Cuotas de Disco en Linux

By claudio | Septiembre 2, 2008

Siempre debo definir cuotas de disco en sistemas Linux y … para variar no tengo documentado, pero … llegó el momento….

Bueno, para implementar cuota de disco en algún File System, se debe tener en cuenta que se deben crear 4 archivos por cada uno de ello. Para este caso se hará sólo para /home que es lo más común. Estos archivos son: quota.user, quota.group, aquota.user, aquota.group que administrarán las cuotas y llevar los índices de los archivos de usuarios y grupos.

  1. Ingredientes: Algún sistema Linux.
  2. Creamos los archivos con touch /home/quota.user, quota.group, aquota.user, aquota.group
  3. En el archivo /etc/fstab se debe indicar que usaremos cuotas de disco para luego remontar nuestro File System, /home en nuestro caso.  Se tiene en /etc/fstab, para /home:
  4. LABEL=/home             /home          ext3    defaults        1 2
  5. y Debería quedar:
  6. LABEL=/home             /home          ext3    defaults,usrquota,grpquota        1 1
  7. Luego se debe remontar /home con #mount -o remount /home
  8. Se pueden ver las opciones de montaje con #mount
  9. Los archivos quota.user, quota.group, aquota.user y aquota.group se deben activar para la administración de cuotas con #quotacheck -ugavm, en donde:

Finalmente se activan las cuotas en el file system con #quotaon /home. Esto vale para cualquier file system. Ok, pero ahora como asignamos cuotas? La instrucción que edita cuotas de discos es “edquota“.

  1. Para asignar cuota para algún usuario: #edquota usuario
  2. Para asignar cuota para algún grupo: #edquota -g grupo

Al ejecutar edquota, se ejecutará el editor de textos vi con opciones específicas para el manejo de quotas. En la línea 1 existe el identificador del usuario o grupo que estemos administrando. En las líneas subsecuentes, encontramos 7 columnas:

  1. Filesystem: Sistema de archivos en el que se implementa la cuota
  2. blocks: La actual cantidad de espacio en disco utilizado por el usuario o grupo en ese sistema de archivos. Este dato no se podrá modificar manualmente, aún cuando lo intentemos los cambios no se guardarán.
  3. soft: La cuota suave para la cantidad de espacio en disco utilizado. Se utiliza 0 para desactivar esta cuota
  4. hard: La cuota dura para la cantidad de espacio en disco a utilizar. El valor 0 desactiva esta cuota
  5. inodes: La actual cantidad de ficheros y carpetas utilizados por el usuario. Este dato no se podrá modificar manualmente, aún cuando lo intentemos los cambios no se guardarán.
  6. soft: La cuota suave para la cantidad de ficheros y carpetas utilizados. Se utiliza 0 para desactivar esta cuota
  7. hard: La cuota dura para la cantidad de ficheros y carpetas utilizados. El valor 0 desactiva esta cuota

Si se desea crear una cuota de 100M y teniendo en cuenta que los bloques son de 1K, entonces se debe cambiar 0 por 100000 el parámetro de hard.

Aplicando cuotas en forma masiva: Se debe utilizar un usuario con la cuota que queremos masificar y replicar dicha cuota al resto, suponiendo que tenemos al usuario “jperez” como replicador y que desde el usuario con UID 520 en adelante tengan la misma cuota de “jperez”, entonces hacemos:

edquota -p jperez `awk -F: '$3 > 520 {print $1}' /etc/passwd`

Topics: Artículos |

Comments

You must be logged in to post a comment.