Квоты в Samba

Описание технологии

Квота это ограничение на объем дискового пространства, который может использовать пользователь или группа пользователей.

Управление квотами дискового пространства осуществляется под пользователем root. Существуют два вида квот: мягкие (soft quota) и жесткие (hard quota).

Мягкая квота определяет максимальный объем дискового пространства, разрешенный квотой. При превышении квоты пользователь получает сообщение о том, что квота превышена.

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

Настройка квот

Установите пакет quota.

yum install quota

Укажите опции монтирования для раздела, к которому вы хотите задать квоты. Для этого задайте дополнительные опции монтирования usrquota и grpquota отредактировав файл fstab.

В вашем примере пути могут отличаться

nano /etc/fstab /dev/sdb1    /data/storage    ext4    defaults,usrquota,grpquota    0 0

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

mount /mnt/sdb1 -o remount

В корне файловой системы создайте файлы базы данных квот aquota.user и aquota.group следующей командой:

quotacheck -cuvg /dev/sdb1

Включите квоты

quotaon /dev/sdb1

Управление квотами

Создайте пользователя, которому будут назначены квоты.

useradd user1

Назначьте ему квоты

edquota -u user1

В редакторе будет следующее

Disk quotas for user user1 (uid 1004): Filesystem blocks soft hard inodes soft hard /dev/sdb1 0 0 0 0 0 0

Размер квоты можно выставить в количестве блоков или количестве файлов, чтобы рассчитать количество блоков нужно необходимый размер квоты в МБ умножить на 1024.

Для редактирования используется редактор vi

Для ввода текста в данном месте нажмите i

ESC для возврата в командный режим

Что бы выйти и сохранить нажмите поочередно ESC : wq Enter

Предположим, для каждой нашей файловой системы мы хотим установить квоту с пределом, равным 10 МБ данных и 50 файлам. Увеличим жесткие пределы еще на 10% и в результате получим следующие значения.

Disk quotas for user user1 (uid 1004): Filesystem blocks soft hard inodes soft hard /dev/sdb1 0 10240 11264 0 50 55

Перезапустите сервис quota или перезапустите компьютер.

systemctl restart quotaon

Для просмотра информации о квотах выполните

quota -u user1

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

Для просмотре всех квот в системе выполните

repquota -a

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.