table of contents
- Tumbleweed 1.8.0-1.1
- Leap-16.0
- Leap-15.6
| QUOTATOOL(8) | System Manager's Manual | QUOTATOOL(8) |
NAME¶
quotatool - manipulate filesystem quotas
SYNOPSIS¶
quotatool [-u [:]uid | -g [:]gid] [-b | -i] [-r | -l NUM |
-q NUM] [-nvR] [-d] filesystem
quotatool (-u | -g) (-b | -i) -t TIME [-nv] filesystem
quotatool [-hV]
DESCRIPTION¶
quotatool is a tool for manipulating filesystem quotas. Depending on the commandline options given, it can set hard or soft limits on block and inode usage, set and reset grace periods, for both users and (if your system supports this) groups. The filesystem to set the quota on is given as the first (and only) non-option element, and it is either the block special file (i.e /dev/sda3) or the mount point (i.e. /home) for the filesystem.
OPTIONS¶
- -u [[:]uid]
- Set user quotas
- -g [[:]gid]
- Set group quotas
uid and gid are either the numerical ID of the user or group, or its name in the /etc/passwd and /etc/group files. Prefix : allows using numerical uid/gid not present in /etc/passwd or /etc/group.
The -b and -i options are persistent -- they stay in effect until they are overridden.
- -R
- Only raise quotas, never lower. Makes sure you don't accidentally lower quotas for a user/group.
- -t TIME
- Set the system-wide grace period to TIME. TIME consists of an optional '-' or '+' character, a number, and optionally one of the following modifiers: "seconds", "minutes", "hours", "days", "weeks", or "months". Abbreviations of at least two characters for ambiguous units are required: "mi" for minutes, "mo" for months. Bare "m" is rejected as ambiguous. The default is "seconds". The argument should be preceded by -u|-g and -b|-i
- -r
- Reset the grace period
- -l NUM
- Set hard limit to NUM
- -q NUM
- Set soft limit (quota) to NUM
NUM consists of an optional '-' or '+' character, a number (integer or floating point), and optionally one of the following modifiers: "Kb", "Mb", "Gb", "Tb", "bytes", or "blocks". Unique abbreviations are also accepted. The default is "blocks". Modifiers are base 2 for block quotas (1k = 1024), and base 10 for inode quotas (1k = 1000)
If +/- is supplied, the existing quota is increased or reduced by the specified amount.
- -d
- Dump quota info for user/group in a machine readable format:
-
|------- BLOCKS --------| |-------- FILES --------|
uid/gid mountpoint current quota limit grace current quota limit grace - grace is the number of seconds remaining until the grace time ends. Zero when quota is not exceeded or grace has expired.
FILESYSTEMS / FORMATS¶
On Linux, quotatool works with both "old", "vfsv0" and "vfsv1" + "generic" kernel-quota formats. Supported filesystems: ext2, ext3, ext4, ReiserFS and XFS.
FreeBSD / OpenBSD: filesystems UFS and FFS
EXAMPLES¶
Set soft block limit to 800Mb, hard block limit to 1.2 Gb for user mpg4 on /home:
quotatool -u mpg4 -b -q 800M -l 1.2G /home
Raise soft block limit by 100M for non-existent gid 12345 on /dev/loop3:
quotatool -g :12345 -b -q +100M /dev/loop3
Set soft inode limit to 1.8k (1800), hard inode limit to 2000 for user johan on /var:
quotatool -u johan -i -q 1.8K -l 2000 /var
Set the global block grace period to one week on /home:
quotatool -u -b -t "1 week" /home
Restart inode grace period for user johan on root filesystem:
quotatool -u johan -i -r /
NOTES¶
Grace periods are set on a "global per quotatype and filesystem" basis only. Each quotatype (usrquota / grpquota) on each filesystem has two grace periods - one for block limits and one for inode limits. It is not possible to set different grace periods for users on the same filesystem.
On BSD (FreeBSD, OpenBSD), the grace period is cached by the kernel at quotaon time. After setting the grace period with -t, a quotaoff/quotaon cycle is required for the new value to take effect. This is the same behavior as edquota -t on BSD — it is a BSD kernel design choice, not a limitation of quotatool.
Using non-existent uids/gids like ":12345" can be useful when configuring quotas on a mounted filesystem which is a separate system in it self, like when preparing an install image or repairing a filesystem from another installation.
Limit arguments can be specified in several ways, these are all
equivalent:
1M
1m
1Mb
1 "Mb"
Use +/- to raise/lower quotas relative to current limits
Use -v (or -v -v) to see verbose/debug info when running commands
FILES¶
quota.user , quota.group (Linux, FreeBSD, OpenBSD)
BUGS¶
Please check https://github.com/ekenberg/quotatool for any open issues. Feel free to add a new issue if you find an unresolved bug!
Calling quotatool with more than one -v option may cause a segfault on some systems if vprintf (3) fails to check for NULL arguments.
SEE ALSO¶
quota(1), quotactl(2), edquota(8), quotacheck(8), quotaon(8), repquota(8)
| 1999 - 2026 | version 1.8.0 |