Using Custom Locations for Environment and Package Cache#
For any given conda installation, the two largest folders in terms of
disk space are often the envs
and pkgs
folders
that store created environments and downloaded packages, respectively.
If the location where conda is installed has limited disk
space and another location with more disk space is available on the
same computer, we can change where conda saves its environments and
packages with the settings envs_dirs
and pkgs_dirs
, respectively.
Assuming conda is installed in the user's home directory and the
the folder /nfs/volume/user
with more disk space is writable,
the best way to configure this is by adding the following entries to the
.condarc
file in the user's home directory:
envs_dirs: - /nfs/volume/user/conda_envs pkgs_dirs: - /nfs/volume/user/conda_pkgs
In the example above, we tell conda to use the folder /nfs/volume/user/conda_envs
to store all of the environments we create, and we tell conda to use
/nfs/volume/user/conda_pkgs
to store all of the packages that we download.
To save even more space, the contents of /nfs/volume/user/conda_pkgs
will be
hard linked to the environments in /nfs/volume/user/conda_envs
when possible.
This means that pkgs_dirs
will normally take up the most space for a conda
installation. But, when hard linking is not possible, the files will be copied
over to the environment which means each new environment increases the amount
of disk space taken. To ensure this hard linking works properly, we recommend
to always store the envs_dirs
and pkgs_dirs
on the same mounted volume.