misonoteApp Center

conda pkgs 文件夹太大能删吗?conda 缓存清理

可以放心删会自动重新生成;Thermo 直接删除。

位置

  • ~/miniconda3/pkgs
  • ~/anaconda3/pkgs
  • ~/miniforge3/pkgs
  • ~/mambaforge/pkgs
  • ~/.conda/pkgs

这是什么

conda(包括 Anaconda、Miniconda、Miniforge、Mambaforge)安装包时会先把压缩包下载到 pkgs 目录并解压,再把文件链接到具体环境中。pkgs 相当于所有环境共享的包缓存。

为什么会这么大

conda 默认会保留下载的压缩包和解压后的目录,每次更新包都会留下旧版本;数据科学相关的包(如 MKL、CUDA 相关库)个头都很大,几轮更新下来就很占空间。

能删吗?删了会怎样

可以清理。环境里的文件默认是从 pkgs 硬链接过去的,删除缓存后已有环境仍然可用,之后安装新包时会重新下载。用 conda 自带的清理命令更稳妥,它会识别哪些包还被环境使用。

小提示

清理缓存不会删除环境本身。不再使用的整个环境,可以用 conda 的环境删除功能单独移除,那往往释放得更多。

先看看占了多少

du -sh "$HOME/miniconda3/pkgs" "$HOME/anaconda3/pkgs" "$HOME/miniforge3/pkgs" "$HOME/mambaforge/pkgs" "$HOME/.conda/pkgs" 2>/dev/null

用它自带的命令清理

conda clean --all

手动删除

在「终端」里执行。删除不可撤销,执行前请确认路径。

rm -rf "$HOME/miniconda3/pkgs"/*
rm -rf "$HOME/anaconda3/pkgs"/*
rm -rf "$HOME/miniforge3/pkgs"/*
rm -rf "$HOME/mambaforge/pkgs"/*
rm -rf "$HOME/.conda/pkgs"/*