Summary: How can a process ignore disk quotas?

From: Gernot Salzer <salzer_at_logic.at>
Date: Wed, 12 May 1999 14:09:58 +0200

A bug in the 4.0D quota system?

Thanks to
   Bill Bennett <BENNETT_at_MPGARS.DESY.DE>
   Piotr Konieczny <znahor_at_venus.wmid.amu.edu.pl>
for their answers.

Problem: in spite of activated disk quotas a process succeeded in filling
         the disk (see below for the original mail).

Bill Bennett suggests:
- Check that quotas are configured.
  # /usr/sbin/rcmgr get QUOTA_CONFIG
  should give "yes"; otherwise do
  # /usr/sbin/rcmgr set QUOTA_CONFIG yes
  and reboot.
- Besides, quotas can be enforced until the next reboot by
  # quotaon -v -a
- Check whether quotas are enabled in the kernel (should be the default
  in 4.0x); look in /sys/conf/YOUR_SYSTEM for a line of the form
  options QUOTA
  If you have to change that, you'll clearly have to rebuild the kernel
  and reboot with the new one.

Piotr Konieczny suggests:
- Try to add to your crontab '/usr/sbin/quotaon /home'. We have
  had similar problems and we have solved them in this way.
  (/home was the overflowing file system on my machine)

Personal conclusion:
- Quotas were correctly configured on my system according to the criteria
  of Bill Bennett.
- Rerunning the same "bad" process without any changes to the system
  showed the expected behaviour: the process was stopped by the quota limits.
It seems to me that under unknown circumstances processes can run past their
quotas, which seems as a bug of DU4.0 to me, at least in the AdvFS part.
If the problem should re-occur, I will try the suggestion
of Piotr Konieczny, though it's not really satisfactory.

Gernot Salzer



Original mail:

> I'm running DU4.0d, patchkit #3.
> Some time ago I set up disk quotas to prevent a single user of filling the
> hard disk. Nevertheless, a few minutes ago an ordinary user process succeeded
> in doing exactly that, resulting in the following quotas:
>
> Disk quotas for user xxx (uid 340):
> Filesystem blocks quota limit grace files quota limit grace
> /var 3 20000 30000 1 0 0
> /home 258057* 20000 30000 none 50 0 0
>
> Why is the process not stopped when hitting the hard limit of 30MB,
> but is allowed to generate a log file of 258MB?
> What do I have to do to prevent such things in the future?
Received on Wed May 12 1999 - 12:12:25 NZST

This archive was generated by hypermail 2.4.0 : Wed Nov 08 2023 - 11:53:39 NZDT