Skip to content
Contact Support

I've run out of storage space

There are two tracked resources in the NeSI filesystem, disk space and inodes (number of files).

Trying to write to a filesystem over its inode or disk quota will cause an error (and probably kill your job).

Current file-count and disk space can be found using nn_storage_quota.

Filesystem         Available      Used     Use%     Inodes     IUsed     IUse%
home_user123             20G    1.957G    9.79%      92160     21052    22.84%
project_nesi99999         2T      798G   38.96%     100000     66951    66.95%
nobackup_nesi99999              6.833T            10000000    2691383   26.91%

Note

There is a delay between making changes to a filesystem and seeing the change in nn_storage_quota, immediate file count and disk space can be found using the commands du --inodes and du -h respectively.

There are a few ways to deal with file count problems

Use the nobackup filesystem

Your nobackup directories /nesi/nobackup/<projectcode> has a significantly higher inode count and no disk space limits. Files here are not backed up, so best used for intermediary or replaceable data.

Delete unnecessary files

Some applications will generate a large number of files during runtime, using the command du --inodes -d 1 | sort -hr (for inodes) or du -h -d 1 | sort -hr for disk space.  You can then drill down into the directories with the largest file count deleting files as viable.

SquashFS archive

Many files can be compressed into a single SquashFS archive. We have written a utility, nn_archive_files, to help with this process. This utility can be run on Māui or Mahuika, but not, as yet, on Māui-ancil; and it can submit the work as a Slurm job, which is preferred. nn_archive_files can take, as trailing options, the same options as mksquashfs, including choice of compression algorithm; see man mksquashfs for more details.

nn_archive_files -p <project-code> -n <num-processors> -t <time-limit> --verify -- /path/containing/files /path2/containing/files destination.squash

Then when files need to be accessed again they can be extracted using,

/usr/sbin/unsquashfs destination.squash

You can do many other things with SquashFS archives, like quickly list the files in the archive, extract some but not all of the contents, and so on. See man unsquashfs for more details.

Tarball

Many files can be compressed into a single 'tarball'

tar -czf name.tar /path/containing/files/

Then when files need to be accessed again they can be un-tarred using,

tar -xzf tarname.tar

Contact Support

If you are following the recommendations here yet are still concerned about inodes or disk space, Contact our Support Team and we can raise the limit for you.