Filesystem Quotas

 

 

In order to keep filesystems from filling up and disrupting work, we use filesystem quotas to limit usage in certain areas by user or group. This also helps us observe growth in disk usage over time so we can plan future expansion.

By default, the filesystem quotas are as follows:

filesystem

quota

(maximum total data size allowed)

file limit

(maximum number of files allowed)

filesystem

quota

(maximum total data size allowed)

file limit

(maximum number of files allowed)

/home

100 GiB per user

none

/n/groups

varies by lab/group

none

/n/data#

varies by lab/group

none

/n/scratch

25 TiB per user

2,500,000 files or directories

Checking Usage

HMS Research Computing has retired the older tool for checking personal and group storage utilization and limits called quota on August 8, 2023. The replacement tool called quota-v2 retrieves more comprehensive information than the previous quota tool, executes faster, and runs on all O2 nodes (login, compute, and transfer cluster).

More information can be found in the extended quota-v2 documentation, which details the meaning of column and table in the quota-v2 output.

You can use the quota-v2 and du commands to check filesystem usage.

Usage by User and Group

The quota-v2 command on O2 will show your usage and usage by groups of which you are a member for directories (accessible on O2) that have quotas imposed.

Type quota-v2 at the command prompt on any O2 system. The output will look something like:

Usage for mfk8 (As of 2022-10-04 16:28:47 EDT-0400) ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ ┃ path ┃ type ┃ username ┃ usage ┃ storage limit ┃ last update ┃ ┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩ │ /home │ user │ mfk8 │ 44.76 GiB │ 100 GiB │ 2022-10-04 16:28:59 EDT-0400 │ ├────────────────────────────────────────────┼───────┼─────────────────────┼─────────────┼───────────────┼──────────────────────────────┤ │ /n/groups/smith │ user │ mfk8 │ 18.67 GiB │ │ 2022-10-04 16:28:47 EDT-0400 │ ├────────────────────────────────────────────┼───────┼─────────────────────┼─────────────┼───────────────┼──────────────────────────────┤ │ /n/groups/smith │ group │ │ 13.02 TiB │ 50 TiB │ 2022-10-04 16:28:47 EDT-0400 │ ├────────────────────────────────────────────┼───────┼─────────────────────┼─────────────┼───────────────┼──────────────────────────────┤ │ /n/scratch/users │ user │ mfk8 │ 56.43 GiB │ 25 TiB │ 2022-10-04 16:28:59 EDT-0400 │ └────────────────────────────────────────────┴───────┴─────────────────────┴─────────────┴───────────────┴──────────────────────────────┘

You will see a number representing your individual storage usage in your /home directory on the "user" line with the 100GiB quota. If you’re using /n/scratch, you’ll see a line for your personal usage in your sub-directory within /n/scratch/users.

Note: It is against RC policy to artificially refresh last access time of any file located under /n/scratch.

For more information on scratch, please refer to the dedicated scratch wiki page.

If you are a member of a group directory, you'll have a line for your “user” usage above the "group" line showing all group members' usage.

If you have reached a quota limit, you will see an extra “exceeded” table which denotes which paths have exceeded their quotas.

The quota data is updated on an hourly basis. You can tell how recent the data you're viewing is from the timestamp in the last column of the quota-v2 output. It is possible to hit a quota limit (e.g. in your home directory or your group directory) but not have the output from the quota-v2 command reflect this problem for about an hour due to the information being periodically updated.

Usage by Directory

Another way to check usage is to total the size of files in a directory using the du command. For example, you might want to see how much space your sub-directory in your group's shared directory is consuming:

  • To check the size of a directory (e.g. /n/groups/smith/mydirectory ):

    • Run the command: du --apparent-size -hs /n/groups/smith/mydirectory

    • The output returned is the total size.

  • Note that du can take quite some time for directories containing large numbers (tens of thousands or more) of files, because it must check the size of every file to compute the total. In general, it is better to use quota-v2 to find usage information, when possible, or at least to run du on sub-directories instead of top-level directories.

  • The --apparent-size option is required to find files' actual sizes. Without this option, the reported size will include data protection overhead (redundant copies of data on the O2 file server, which protects against hard drive failures).

  • Please do not run du from a login node. Long running and computationally intensive processes will be killed on login nodes. To ensure that your command for checking directory usage is not interrupted, please run du from a compute node instead. You can use the srun --pty command to start an interactive job, and then run du once you have been allocated resources. More information on running SLURM jobs can be found on the Using Slurm Basic wiki page.

When you are over quota

How to tell you are over quota

If a shared group directory is over its quota, when you try to write a file to somewhere in that directory or a directory below it, you will get an error message. However, you will still be able to write to your home directory, or other group directories you may belong to.

Having a full home directory can lead to extra issues. In addition to not being able to write regular files, the computer may be unable to write invisible "housekeeping" files, which can lead to other problems. For example, on logging in, you may see an error like this:

/usr/bin/xauth: error in locking authority file /home/mfk8/.Xauthority

Also, when trying to edit files, you may get errors about an inability to write temporary files.

You can verify that you are over quota by running the quota-v2 command. If you see a red exceeded table at the end of the output, then it means you have hit or exceeded a limit.

What to do when you are over quota

Use the commands above to confirm that you are above your quota, and delete data as needed to let you write new files again.

Note that the quota-v2 command results are only updated hourly. If you were writing files very rapidly, the quota-v2 command might not show a completely full quota. Also, deleting files won't immediately change the results from that command. If you delete 5 GiB of files, you should be able to write 5 GiB of new files in that location immediately, even if quota-v2 hasn't caught up yet.

You can delete a whole directory with a command like rm -rf dir. Please be careful when using a command like this: you could delete all of your files!

If you delete files in a snapshotted system by accident, see the Restoring Backups section on the Filesystems page to get them back within sixty days. On a scratch or temporary filesystem, there is no way to get files back.

Requesting a Quota Increase

Home folders will not be expanded. However, we are happy to make reasonable quota increases for your group or website folders. Please navigate to our Storage website to find the storage request forms. Links to storage request forms are located in the expandable blocks for each type of storage. When you fill out the storage request forms, please let us know the amount of additional space you would like and a reason for your increased storage needs. If you have any questions, please reach out to us.

Other Resources

For additional information on HMS RC storage offerings, and where O2 cluster users can store data, please reference the following pages: