Включение дисковых квот в Linux.
Взято с http://www.yolinux.com/TUTORIALS/LinuxTutorialQuotas.html
- Редактируем файл /etc/fstab, добавляя параметры «usrquota» и/или «grpquota» в строки для нужного дискового раздела.
Примеры:-
/dev/hda1 /home ext3 defaults,usrquota 1 1
-
/dev/hda2 /home ext3 defaults,usrquota,grpquota 1 1
-
- Перемонтируем файловую систему. Пример:
-
/bin/mount -o remount /hda2
-
- Проверяем, что квоты включились, заглядывая в /etc/mtab. Там должно быть что-то вроде:
-
/dev/hda2 / ext3 rw,usrquota,grpquota 0 0
-
- Запускаем процесс подсчета текущего использования дискового пространства, после чего должны создаться/обновиться файлы /aquota.user, /aquota.group в корне файловой системы:
-
quotacheck -vgum /partition
или
-
quotacheck -vguma
-
- Включаем квоты для файловой системы:
-
quotaon -v /dev/hda2
-
- Расставляем квоты для определенных пользователей/групп. Пример:
-
edquota -u user1
-
Disk quotas for user user1 (uid 501):
-
Filesystem blocks soft hard inodes soft hard
-
/dev/hda5 1944 0 10240 120 0 0
blocks – блоки по 1 килобайту
soft – максимальное количество блоков/inodes, которые пользователь может использовать, перед тем, как будет сгенерировано предупреждение и начнется отсчет «периода терпимости» (grace period). Если установлено в «0″ (ноль), то лимита нет.
hard – максимальное количество блоков/inodes, которые пользователь может использовать вообще.
В примере лимит установлен в 10 мегабайт. Для редактирования групповых квот использовать edquota с ключом -g.«Grace Period» задается с помощью edquota -t, это промежуток времени, перед тем, как soft limit станет реальностью. Единицы: sec, min, hour, day, week и month. Пример:
-
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/hda5 7days 7days
-
- Просмотр квот. Команды quota, repquota. Примеры:
-
quota -u user1
-
Disk quotas for user user1 (uid 501):
-
Filesystem blocks quota limit grace files quota limit grace
-
/dev/hda6 992 50000 55000 71 10000 11000
Получить отчет по всем пользователям, что превысили квоту:
-
quota -q
-
repquota -a
-
*** Report for user quotas on device /dev/hda5
-
Block grace time: 7days; Inode grace time: 7days
-
Block limits File limits
-
User used soft hard grace used soft hard grace
-
root -- 4335200 0 0 181502 0 0
-
bin -- 15644 0 0 101 0 0
-
…
-
user1 -- 1944 0 0 120 0 0
quotacheck следует запускать периодически, особенно после аварийных выключений сервера.
У edquota есть также интересный ключик -p, который позволяет задавать квоты массово на основе шаблона. Пример:
-
edquota -p user1 `awk -F: '$3 > 499 {print $1}' /etc/passwd`
Здесь для пользователей с uid >= 500 будут установлены такие же квоты, как и у пользователя user1.
В Redhat quotacheck и quotaon запускаются из /etc/rc.d/rc.sysinit:
-
if [ -x /sbin/quotacheck ]; then
-
echo "Checking root filesystem quotas"
-
/sbin/quotacheck -v -a
-
fi
-
…
-
if [ -x /usr/sbin/quotaon ] then
-
echo "Turning on quota."
-
/usr/sbin/quotaon -v -a
-
fi
Другие способы установки лимитов – /etc/security/limits.conf.
Похожие заметки:
-
Комментариев: 0
Чтобы быть всегда в курсе здесь происходящего, Вы можете подписаться на RSS feed для комментариев на эту заметку.