Установка - Часть II: Определение квот для пользователей и групп

Эта операция выполняется, при помощи команды edqouta (man edquota).

Перед этим я обычно запускаю команду qoutacheck с параметрами -avug, чтобы файловая система точно знала, что и кем используется. Впрочем, это не обязательный шаг, а просто привычка.

Определение квот для конкретного пользователя

Например. У меня в системе есть пользователь bob. Команда "edqouta -u bob" запускает текстовый редактор (определенный в переменной окружения $EDITOR) для редактирования квот пользователя bob для каждого раздела, на котором включено квотирование:
Quotas for user bob: 
/dev/hda2: blocks in use: 2594, limits (soft = 5000, hard = 6500) 
         inodes in use: 356, limits (soft = 1000, hard = 1500)

"blocks in use" это общее количество блоков (килобайт), используемых пользователем на этом разделе.

"inodes in use" это общее количество файлов, принадлежащих пользователю.

Определение квот для конкретной группы

В моей системе есть группа games. "edquota -g games", снова запускает текстовый редактор для редактирования квот группы games:
        Quotas for group games: 
        /dev/hda4: blocks in use: 5799, limits (soft = 8000, hard = 10000) 
                inodes in use: 1454, limits (soft = 3000, hard = 4000)

Установка одинаковых квот для множества пользователей

Для быстрой установки квот, скажем для 100 пользователей, на те же значения, что и для пользователя bob, я должен определить ему квоты, а затем запустить:
edquota -p bob `awk -F: '$3 > 499 {print $1}' /etc/passwd`

если вы используете оболочку csh и идентификаторы пользователей (UID), то последние начинаются с 500.

В добавок к edqouta вы еще должны ознакомиться с тремя понятиями: мягкие ограничения, жесткие ограничения и льготный период.

Мягкие ограничения

Мягкие ограничения определяют максимальный объем диска для пользователя на каждом разделе. В комбинации со льготным периодом, они определяют границу, после которой пользователь начинает получать предупреждения.

Жесткие ограничения

Жесткие ограничения работают только тогда, когда установлен льготный период. Они определяют абсолютный лимит использования диска, который пользователь не может превысить.

Льготный период

Льготный период (grace period) - это количество времени после превышения мягких ограничений, в течении которого пользователю позволено использовать дисковое пространство, если оно не превышает жесткий лимит. Он определяется в секундах (seconds), минутах (minutes), часах (hours), днях (days), неделях (weeks) или месяцах (months). Проверить его можно при помощи команды "edquota -t":
Time units may be: days, hours, minutes, or seconds 
Grace period before enforcing soft limits for users: 
/dev/hda2: block grace period: 0 days, file grace period: 0 days 

Можете изменить число дней на любое разумное значение. Лично я использую 7 дней (или 1 неделю).