quotacheck(8) on Solnix vs Linux and the BSDs
On Solnix, quotacheck is the illumos command at /usr/sbin/quotacheck and it checks ufs file systems only. It has no -u, -g, -c or -l: it works on the quota file named quotas in the file system root, not on separate quota.user and quota.group files.
The manual pages
- Solnix: quotacheck(8) from
pkgs.solnix.illumos-world-man· illumos.org - Linux: quotacheck(8) quota-4.11
- FreeBSD: quotacheck(8) 15.1-RELEASE
- OpenBSD: quotacheck(8) 8.0
- NetBSD: quotacheck(8) 11.0
What Solnix runs
A default Solnix system runs the illumos quotacheck at /usr/sbin/quotacheck. No other variants are shipped. The page's -a option reads /etc/mnttab and /etc/vfstab, not /etc/fstab.
Differences
| Compared with | Topic | What differs |
|---|---|---|
| all four | quota file names | Solnix expects one quota file named quotas in the file system root. Linux, FreeBSD, OpenBSD and NetBSD expect separate quota.user and quota.group files (Linux: [a]quota.user and [a]quota.group). Source: Solnix quotacheck(8) DESCRIPTION; Linux quotacheck(8) DESCRIPTION; FreeBSD/OpenBSD/NetBSD quotacheck(8) DESCRIPTION |
| all four | missing quota file | On Solnix, if the quotas file is absent, quotacheck does not check that file system. On Linux, FreeBSD, OpenBSD and NetBSD, quotacheck creates the missing quota file. Source: Solnix quotacheck(8) DESCRIPTION; Linux/FreeBSD/OpenBSD/NetBSD quotacheck(8) DESCRIPTION |
| all four | -u and -g | Solnix has no -u or -g to select user or group quotas. All four counterparts have both. Their default is user and group quotas, except Linux, which checks user quotas only.Source: Solnix quotacheck(8) SYNOPSIS; Linux quotacheck(8) -u, -g; FreeBSD/OpenBSD/NetBSD quotacheck(8) -u, -g |
| all four | -a source of file systems | Solnix -a checks the ufs file systems listed in /etc/mnttab. They must be mounted read-write with quotas and have an rq entry in the mntopts field of /etc/vfstab. The counterparts read /etc/fstab, and Linux also reads /etc/mtab.Source: Solnix quotacheck(8) -a; Linux quotacheck(8) -a; FreeBSD/OpenBSD/NetBSD quotacheck(8) -a |
| FreeBSD, OpenBSD, NetBSD | -l and -p parallel checking | Solnix uses -p to check in parallel and takes no count. FreeBSD, OpenBSD and NetBSD use -l maxrun/maxparallel, and Solnix has no -l. The BSDs order parallel passes by the pass numbers in /etc/fstab.Source: Solnix quotacheck(8) -p; FreeBSD quotacheck(8) -l; OpenBSD quotacheck(8) -l; NetBSD quotacheck(8) -l |
| all four | -f meaning | On Solnix, -f forces a check on file systems with logging enabled, and goes with -p. Without -f, -p skips logging file systems. On Linux, -f forces checking and writing of new quota files where quotas are enabled. The BSDs have no -f.Source: Solnix quotacheck(8) -f, -p; Linux quotacheck(8) -f; FreeBSD/OpenBSD/NetBSD quotacheck(8) SYNOPSIS |
| all four | -v meaning | Solnix -v prints the calculated quota for each user. Normally only modified quotas are reported. Linux reports its operation as it progresses, and a second -v prints the current directory. FreeBSD and OpenBSD report discrepancies. NetBSD reports corrected discrepancies.Source: Solnix quotacheck(8) -v; Linux quotacheck(8) -v; FreeBSD/OpenBSD/NetBSD quotacheck(8) -v |
| FreeBSD, OpenBSD, NetBSD | -a with file system names | On Solnix the synopsis shows -a as its own form, with options only. FreeBSD, OpenBSD and NetBSD describe -a as given in place of file system names.Source: Solnix quotacheck(8) SYNOPSIS; FreeBSD/OpenBSD/NetBSD quotacheck(8) -a |
| Linux | remount and quota-file repair | Linux quotacheck tries to remount the file system read-only before scanning, with -m and -M to change that. It also has -i, -n, -b and -F for repair and format. Solnix has none of these and says the file system should be quiescent.Source: Linux quotacheck(8) DESCRIPTION, -m, -M, -i, -n, -b, -F; Solnix quotacheck(8) DESCRIPTION |
| FreeBSD, OpenBSD, NetBSD | boot-time use | FreeBSD, OpenBSD and NetBSD say quotacheck is normally run from /etc/rc. FreeBSD controls this with check_quotas and enable_quotas in rc.conf. The Solnix page does not say when it is run.Source: FreeBSD quotacheck(8) DESCRIPTION; OpenBSD quotacheck(8) DESCRIPTION; NetBSD quotacheck(8) DESCRIPTION; Solnix quotacheck(8) |
Standards
- POSIX: quotacheck is not a POSIX.1-2024 utility.
- Solnix: The page has no STANDARDS section. Its USAGE section refers to largefile(7) for files of 2 Gbyte (2^31 bytes) or more.
- FreeBSD: HISTORY: quotacheck appeared in 4.2BSD.
- OpenBSD: HISTORY: quotacheck appeared in 4.2BSD.
- NetBSD: HISTORY: quotacheck appeared in 4.2BSD.
Writing portable scripts
- Do not rely on
-u,-g,-lor-cin scripts that also run on Solnix: the Solnix quotacheck has none of them. - Pass explicit mount points instead of
-a. The file systems-aselects come from/etc/mnttaband/etc/vfstabon Solnix and from/etc/fstabelsewhere.
Every difference here is taken from the manual pages linked above: Solnix's published page, Linux (man-pages and the GNU and util-linux manuals), FreeBSD, OpenBSD and NetBSD. Each row names its source. Where a manual is silent, this page is too. Compiled 2026-10-26. Found a mistake? Mail hackers@lists.solnix.io.