Linux -сборник рецептов


Решение


Воспользуйтесь пакетом Linux Disk Quota. Пакет содержит ряд компонентов, в том числе quota, edquota, quotacheck и repquota.

Сначала отредактируйте файл /etc/fstab и выберите разделы, для которых будут установлены квоты. Квоты могут устанавливаться как для отдельных пользователей (usrquota), так и для групп (grpquota). Оба вида квот могут действовать одновременно:

/dev/hda6 / ext3 defaults 0 1 /dev/hda7 /home ext3 defaults,usrquota,grpquota 0 1

Перемонтируйте файловую систему:

# mount -о remount /home

Сценарий Quota init запускает программу quotacheck, которая анализирует систему, создает базу данных использования дискового пространства и создает файлы квот.

Затем назначьте квоты пользователям. При этом файл конфигурации открывается в редакторе по умолчанию:

# edquota -u vhenson Disk quotas for user vhenson (uid 1550): Filesystem blocks soft hard inodes soft hard /dev/hda7 550466 0 0 47466 0 0

Мягкое ограничение (soft limits) предоставляет нарушителю отсрочку с выдачей предупреждений. Жесткое ограничение (hard limits) вступает в силу немедленно. Чтобы задать ограничение, просто отредактируйте файл:

# edquota -u vhenson Disk quotas for user vhenson (uid 1550): Filesystem blocks soft hard inodes soft hard /dev/hda7 550466 650000 700000 47466 0 0

Блоки всегда имеют размер 1024 байта, поэтому 650 000 блоков составляют около 665 Мбайт. 8.22. Дисковые квоты

Сохраните и закройте файл. Убедитесь в том, что квота вступила в силу:

# quota vhenson Disk quotas for user vhenson (uid 1550): 650000 700000

Назначение квот группам осуществляется следующим образом:

# edquota -g engineers

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

Следующая команда вызывает редактор по умолчанию для назначения отсрочки для мягких ограничений во всей файловой системе:

# edquota -t Grace period before encforcing soft limits for users: Time units may be: days, hours, minutes, or seconds Filesystem Block grace period Inode grace period /dev/hda3 7days 7days

Один из пользователей может использоваться в качестве «прототипа» для определения квот нового пользователя:

# edquota -p vhenson dnorth

или сразу нескольких новых пользователей:

# edquota -p vhenson "awk -F: '$3 > 999 {print $1}' /etc/passwd"

Также можно перечислить сразу нескольких пользователей:

# edquota -p vhenson dnorth jvesperman sanvin

Несомненно, вы захотите следить за использованием квот. Следующая команда выводит общесистемный отчет о текущем расходовании дискового пространства:

# repquota -a

Чтобы ограничиться конкретной файловой системой, используйте команду:

# repquota /home









Начало  Назад  Вперед


Книжный магазин