Применение квот на ресурсы диска призвано защищать систему от истощения ресурсов небольшим числом пользователей. Ограничение использования дискового пространства начинается с выполнения команды /quotaon /user_filesystem. Эта команда включает механизм дисковых квот пользователей, размещенных в файловой системе user_filesystem. В результате выполнения команды edquota определяется, какое пространство каждый пользователь может занимать. Общая форма этой команды имеет следующий вид:
edquota [-p prevlosly_ctefinedl_quota_username} username
Например, команда edquota charlene запускает сеанс редактирования, позволяющий установить (переустановить) "жесткие" (hard) и "буферные" (soft) квоты общего дискового пространства в килобайтах и общее число используемых индексных дескрипторов. Разница между "жесткими" и "буферными" значениями состоит в том, что жесткие ни в коем случае не могут быть превышены. При переходе буферного предела запускаетсятаймер. Если использование дискового пространства опускается ниже этого предела, таймер сбрасывается. Когда таймер срабатывает, ситуация обрабатывается также, как и при превышении жесткого предела. Команда edquota -p charlene georgia не выводит редактор, но, вместо этого, дублирует квоту пользователя charlene для пользователя georgia.
|
|
Для вывода данных об использовании ресурсов диска пользователями служит команда quota -v username.., или requota /user_filesystem. Команда quota выдает отчет о расходе ресурсов и ограничениях для указанного пользователя (username). Если параметр -v опущен, выводятся данные только для указанных пользователей, перерасходовавших свои лимиты. Команда repquota выводит сводку всех пользователей, перечисленных в файле passwd для указанной файловой системы {user_filesy stem). Здесь также отображаются данные по использованию ресурсов диска и ограничениях. Ниже приводится пример команды quota и ее вывода.
quota -v jamie Disk quotas for jamie (uid 315):
Filesystem usage quota limit timeleft files quota limit timeleft /usri 26015 25600 30720 5.1 days 488 500 750
Пользователь jamie перерасходовала допустимое количество килобайт дискового пространства и имеет в запасе 5,1 дня, чтобы снизить этот показатель. Она может создать еще 12 файлов (если хватит дискового пространства) перед тем, как получит сигнал о перерасходе индексных дескрипторов.
Команда repquota отличается тем, что выводит перечень всех пользователей, для которых действуют квоты. Ниже приводится пример вывода этой команды:
Disk limits File limits
User used soft hard timeleft used soft hard timeleft
alyssa - 00417 25600 30720 0043 200 250
james - 12871 25600 30720 0149 200 250
wayne -+ 04635 25600 30720 1072 500 750 EXPIRED
rayna - 00002 25600 30720 0003 200 250
Steve - 11786 25600 30720 0155 200 250
judy - 00015 25600 30720 0013 200 250
jamie +- 26015 25600 30720 5.1 days 0488 500 750
holly -+ 11872 25600 30720 0200 200 250 6.0 days
kenny - 02737 25600 30720 0134 200 250
|
|
irene - 02704 25600 30720 0070 200 250
bert - 03070 25600 30720 0173 200 250
al - 00613 25600 30720 0021 200 250
connie -- 00558 25600 30720 0025 200 250
charlene - 00539 25600 30720 0016 200 250
dave +- 50226 50000 60000 EXPIRED 0430 500 750
mike -- 03853 25600 30720 0020 200 250
ann - 05308 25600 30720 0162 200 250
kirstin - 20672 25600 30720 0191 300 350
matthew - 00444 25600 30720 0012 200 250
John - 01303 25600 30720 0067 200 250
Из таблицы видно, что wayne и dave не смогли уложиться в ограничения и им отказано в пользовании системой. Пользователям jamie и holly придется снизить потребление ресурсов в указанный период, иначе им также будет отказано в доступе к системе. Вместо этого можно увеличить для них квоты.
Следует контролировать использование файлов входящей почты, как часть общего расхода ресурсов диска, поскольку обычно все пользователи обращаются к общему пространству почтового каталога. Здесь одна "свинья" может подрыть всю систему. Команда
ls -l /var/mail | awk '{if $5 > 500000) printf"%-8.8s - %ld\n", $3, $5}'
выводит список всех пользователей, для которых объем почтовых файлов превышает полмиллиона символов. Можно вежливо попросить такого пользователя снизить число сообщений, либо уменьшить занимаемое файлами пространство путем их сохранения и сжатия или архивирования и удаления.