conda虚拟环境占用空间太多,如何清理?

家里使用了设备中,给linux分配了500G空间,前段时间发现空间所剩无几,只有几十G,经过排查,发现占用最多的来自两个方面,一个是docker,占用了200G以上,一个是conda,也占用了100G以上。

其中docker的清理之前已经总结过了:

如何清理 Docker 占用的巨大磁盘空间

Docker 中删除镜像与容器的完整指南

对于conda,下面我总结了一套我自己常用的排查和清理流程,希望能帮你把那些吃灰的环境处理干净。


一、查看当前 Conda 环境列表

最基础的一步,看看你到底有多少个环境:

复制代码
conda env list

或者简写:

复制代码
conda info --envs

输出类似这样:

复制代码
# conda environments:
#
base                  *  /home/young/program/anaconda3
pywen-env                /home/young/program/anaconda3/envs/pywen-env
torch2                   /home/young/program/anaconda3/envs/torch2
cv-dev                   /home/young/program/anaconda3/envs/cv-dev
tf-old                   /home/young/program/anaconda3/envs/tf-old
...

这只是名字列表,但你马上会发现有一堆项目早已不在维护。


二、统计每个环境占用的空间大小

遗憾的是,Conda 本身并不提供查看环境体积的命令,但其实每个环境就是一个目录,你可以直接用 du 命令统计。

例如:

bash 复制代码
du -sh /media/young/opt/envs/*

输出可能是这样的:

bash 复制代码
198M	/media/young/opt/envs/douban
6.8G	/media/young/opt/envs/fish-speech
7.0G	/media/young/opt/envs/fish-speech-1.5
7.1G	/media/young/opt/envs/fish-speech-1.5.1
7.0G	/media/young/opt/envs/funasr

如果你想排序看看哪些环境最肥,可以:

复制代码
du -sh ~/program/anaconda3/envs/* | sort -h

这会按从小到大的顺序列出所有环境的大小,非常直观。

我一般一看就知道哪些可以直接动刀------比如fish-speech 环境有好几个,大概率是不用的,直接清理就好了。


三、快速统计总空间占用

你也可以看看整个 envs 目录到底占了多少:

bash 复制代码
du -sh ~/program/anaconda3/envs/

四、删除不再需要的环境

Conda 提供了标准删除命令:

复制代码
conda remove -n 环境名 --all

例如:

复制代码
conda remove -n tf-old --all

但有时候,你可能连环境名都忘了。别担心,你可以直接删除目录:

复制代码
rm -rf ~/program/anaconda3/envs/tf-old

这其实和上面效果一样,只不过跳过了 Conda 的内部清理逻辑。

如果你想稳妥点,还是推荐使用 conda remove


五、批量清理:找出大环境 + 不常用的环境

你可以组合几个命令,找出最值得删除的那几个环境:

复制代码
du -sh ~/program/anaconda3/envs/* | sort -hr | head -n 10

这会列出前 10 个最大的环境。

再结合 conda env list,看看哪些环境最近没动过(或项目早已结束),直接删除。


六、清理 Conda 缓存与包

除了环境目录,Conda 的包缓存也很占空间。

默认在:

复制代码
~/.conda/pkgs

你可以用以下命令安全清理未使用的包:

复制代码
conda clean --all

这一步能节省几百 MB 到几 GB 不等的空间(取决于你重建环境的频率)。

如果想更精细一点:

复制代码
conda clean --tarballs --packages --yes

基本上这些操作之后,就可以清理干净了。

相关推荐
si莉亚21 小时前
ROS2安装EVO工具包
linux·开发语言·c++·开源
Tingjct21 小时前
Linux常用指令
linux·运维·服务器
广州灵眸科技有限公司21 小时前
为RK3588注入澎湃算力:RK1820 AI加速卡完整适配与评测指南
linux·网络·人工智能·物联网·算法
IT界的老黄牛21 小时前
Linux 压缩命令实战:tar、gzip、bzip2、xz、zstd 怎么选?一篇讲清楚
linux·运维·服务器
IT WorryFree1 天前
飞塔防火墙与第三方设备进行IPSEC故障诊断期间,用户可能会观察到以下错误:
linux·服务器·网络
12345,catch a tiger1 天前
虚拟机ubuntu安装Vmware Tools
linux·运维·ubuntu
凉、介1 天前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie
辰风沐阳1 天前
OpenClaw 安装教程(Ubuntu 24.04 Desktop)
linux·ubuntu
嘿嘿嘿x31 天前
Linux记录过程
linux·开发语言
程序猿编码1 天前
一个授予普通进程ROOT权限的Linux内核级后门:原理与实现深度解析
linux·运维·服务器·内核·root权限