condaのpkgsフォルダとは。削除しても安全か
はい、condaのパッケージキャッシュは消去しても安全です。conda clean を使ってください。ダウンロードしたアーカイブと、どの環境も使っていないパッケージが削除されます。環境が中のファイルにリンクしているので、pkgsフォルダを手動で削除しないでください。
場所
~/miniconda3/pkgs (or ~/anaconda3/pkgs)これは何か
condaはパッケージをインストールするたびに、まずアーカイブをダウンロードし、condaのインストール先にあるpkgsフォルダに展開します。たとえば ~/miniconda3/pkgs や ~/anaconda3/pkgs です。Miniforgeなどのインストーラも、それぞれのフォルダの下で同じ構成を使います。
環境は、展開されたファイルをコピーするのではなく、リンクすることで作られます。同じパッケージを含む複数の環境が思ったより領域を使わないのも、フォルダを手動で削除すると環境が壊れることがあるのも、このためです。
キャッシュは、これまでにインストールしたパッケージのバージョンが増えるたびに大きくなります。環境をアップデートしても、古いバージョンはキャッシュに残ります。
どのくらい大きくなるか
数GBになることが多く、科学計算や機械学習の大きなパッケージを扱う場合は10 GBを超えます。
手動で消去する方法
- 先に conda clean --all --dry-run を実行します。何も削除せずに、削除される予定のものを一覧表示します。
- 下記のコマンドを実行します。ダウンロードしたパッケージのアーカイブ、インデックスキャッシュ、どの環境からもリンクされていない展開済みパッケージを削除するもので、実行前に確認を求めます。
- さらに領域を空けるには、conda env list で環境を一覧表示し、不要になったものを conda env remove -n のあとに名前を続けて削除します。
- 環境を削除したあとは、そのパッケージが未使用になっているので、conda clean --all をもう一度実行します。
conda clean --all削除したあとはどうなるか
既存の環境はそのまま動作します。キャッシュから削除されたパッケージを次にインストールまたはアップデートするときは、condaがもう一度ダウンロードします。
Diskzyでの扱い
Diskzyは、condaのフォルダをディスクマップに表示し、pkgsと各環境のサイズを別々に示すので、領域を使っているのがキャッシュなのか古い環境なのかがわかります。
関連ガイド
Macの空き領域がどこに消えたのかを確認
Diskzyはディスク全体をマップにし、システムデータの内訳を示し、安全なものを消去します。72時間は無料、その後は$9の買い切りでMac 2台まで使えます。
Diskzyを無料で試す