---
name: "pure-quotacheck"
section: "8"
platform: "linux"
package: "pure-ftpd-common"
version: "1.0.50-2.2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/pure-quotacheck"
---

# pure-quotacheck(8)

Update virtual quota files for Pure-FTPd

## NAME

pure-quotacheck - Update virtual quota files for Pure-FTPd

## SYNTAX

pure-quotacheck *-u username/gid* *-d home directory* \[*-g group/gid*\]

## DESCRIPTION

pure-quotacheck create a **.ftpquota** file in the specified directory.\
 This file contains the current file and size of the directory, and it is used by Pure-FTPd when virtual quotas are enabled.\
 It's recommended to periodically run pure-quotacheck for every user, in crontabs.

## OPTIONS

- **-d** \<*directory*\>

  Scans the specified \<*directory*\>.

- **-g** \<*group or gid*\>

  Sets the group files will be scanned as. This is optional: if a user name is passed to **-u\</fR\>, group are automatically retrieved.**

- **-u** \<*user or uid*\>

  Set the user name files will be scanned as. This is mandatory, and it can't be "root".

- **-h**

  Output usage information and exit.

## FILES

*.ftpquota*

## EXAMPLES

To run this program the standard way type:

pure-quotacheck -u john -d /home/john

## AUTHORS

Frank DENIS \<j at pureftpd dot org\>

## SECURITY

pure-quotacheck switches real and effective uids/gids as soon as possible. Root privileges are never given back.\
 pure-quotacheck refuses to scan directories with uid = 0 (root) or gid = 0 (wheel/root) .\
 pure-quotacheck performs a chroot() call to the home directory. It never traverses parent directories.\
 pure-quotacheck only scans real files (no socket, no pipe, etc) .\
 pure-quotacheck enforces read access on directories to prevent against people doing chmod 0 before a quota scan.\
 pure-quotacheck enforces write access on the home directory to properly write the .ftpquota file.\
 pure-quotacheck never scans the same inode/device pair twice.

## SEE ALSO

**[ftp(1)](/ftp/1.md)**, **[pure-ftpd(8)](/pure-ftpd/8.md)** **[pure-ftpwho(8)](/pure-ftpwho/8.md)** **[pure-mrtginfo(8)](/pure-mrtginfo/8.md)** **[pure-uploadscript(8)](/pure-uploadscript/8.md)** **[pure-statsdecode(8)](/pure-statsdecode/8.md)** **[pure-pw(8)](/pure-pw/8.md)** **[pure-quotacheck(8)](/pure-quotacheck/8.md)** **[pure-authd(8)](/pure-authd/8.md)** **[pure-certd(8)](/pure-certd/8.md)**

**RFC 959**, **RFC 2228**, **RFC 2389** and **RFC 2428**.
