You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何清除Nix及NixOS中nix-env查询产生的缓存?

清除Nix/NixOS中nix-env --query类命令产生的缓存方法

当你执行nix-env --query --json --available --file <远程nixpkgs URL>这类命令时,Nix会缓存远程拉取的nixpkgs归档文件,以及评估过程中生成的临时Store路径。以下是几种清理方式:

1. 彻底清理未被使用的Nix Store内容

执行垃圾收集命令,删除所有没有GC根引用的Store项(包括临时评估的nixpkgs派生):

nix-collect-garbage -d

-d参数会删除所有旧的生成代,确保彻底清理未被使用的缓存内容。

2. 清理下载的远程资源缓存

远程拉取的tar.gz归档文件默认存在用户级缓存目录,直接删除整个缓存目录即可:

rm -rf ~/.cache/nix

如果是用root权限执行的命令,对应的缓存路径是/var/cache/nix,清理命令:

sudo rm -rf /var/cache/nix

清理后不会影响已安装的包,下次执行查询命令时会重新拉取资源。

3. 清理特定哈希对应的缓存

如果只想清理某个特定commit哈希的nixpkgs缓存,可通过查找并删除相关文件:

HASH=a7cc81913bb3cd1ef05ed0ece048b773e1839e51
find ~/.cache/nix -name "*${HASH}*" -delete

替换${HASH}为目标commit哈希即可精准清理对应缓存。

内容的提问来源于stack exchange,提问作者Neil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 11:22:23