Я настроил свой ящик, чтобы разрешить определенному пользователю до 2 ГБ памяти благодаря quota
.
я считать Я правильно включил. /etc/fstab
показывает usrquota,grpquota
, quotaon
говорит, что все в порядке но Сегодня я смог нарушить квоту.
Из SSH я подключился к этому пользователю и попытался создать файл размером 4 ГБ
# sudo -u targetuser bash ##the user cannot use SSH
targetuser@host:~> dd if=/dev/zero of=prova.bin count=4096 bs=1048536
sda1: warning, user block quota exceeded.
^C^C3592+0 records in
3592+0 records out
3766341312 bytes (3,8 GB) copied, 333,72 s, 11,3 MB/s
edquota -u targetuser
показывает (после того, как я удалил файл)
Disk quotas for user targetuser (uid 1006):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 181200 2097072 22097072 10230 0 0
Я также смог написать новый файл перед удалением слона.
Вопрос чрезвычайно прост: почему Linux не помешал dd писать больше, а не просто предупреждать?
Что я могу сделать, чтобы вызвать ошибку, когда пользователь пытается написать больше, чем ему разрешено?