肥大化した Anaconda の不要ファイルを整理・削除する

投稿者 : OSCA

関東地方の美しい夜景を観にいこう。 夜景サイト「夜景散歩」で夜景スポットを検索

概要

 Python でプログラムする際にとても便利な Anaconda ですが、長く使っているとコンピュータのハードドライブの要領を圧迫し始めました。 本稿では、そんな Anaconda の不要になったファイルを整理・削除して、ハードドライブをクリーンな状態に保つ方法を解説します。

なぜAnacondaが肥大化したか?

 そもそも、なぜ Anaconda のファイルが肥大化したのでしょうか? 一番大きな理由は、conda install でインストールしたパッケージのキャッシュが残っているためです。 特にパッケージは日々バージョンアップされており、同一のパッケージでも新たに conda install すると新しいパッケージがダウンロードされて、古いパッケージのキャッシュは残ったままになってしまいます。 古いパッケージは将来使うことがないかも知れないのに、ハードドライブにキャッシュが残ってしまっています。

 また、これは皆さん意識されているかも知れませんが、使わなくなった環境(env)がそのまま残っていることも大きな理由としてあげられます。

Anaconda をクリーンな状態に保つ

 それでは Anaconda の不要になったファイルを削除してクリーンな状態を取り戻したいと思います。

不要になった環境(env)の削除

 まずは不要になった環境を削除しましょう。 conda info -e コマンドで現存する環境を確認しましょう。

$ conda info -e
# conda environments:
#
test                *  /Users/taro/anaconda3/envs/test
root                   /Users/taro/anaconda3

 不要な環境があれば、conda remove コマンドで環境を削除しましょう。 次の例では「test」という名前の環境を削除します。

$ conda remove -n test -all

不要になったパッケージやキャッシュを削除

 不要な環境の削除ができたら、今度はパッケージやキャッシュを削除しましょう。 conda clean コマンドを利用すると、使われていないパッケージやキャッシュを削除することができます。 一番簡単には –all オプションを指定して、削除できるものは全て削除するのが良いかも知れません。

$ conda clean --all

 削除できるものは、個別には「レポート」「インデックスキャッシュ」「ロックファイル」「tarball」「パッケージ」「ソースキャッシュ」があります。 conda clean コマンドのオプションは次の通りです。

オプション説明
-h, –helpヘルプを表示します。
-y, –yes確認を求めずに、コマンドを実行します。
–dry-run実際にはコマンドを実行せず、実行したらどうなるかを想定を表示します。
–json出力された全てのレポートを削除します。
-a, –allインデックスキャッシュ, ロックファイル, tarball, 使っていないパッケージ, ソースキャッシュ を削除します。
-i, –index-cacheインデックスキャッシュを削除します。
-l, –lockロックファイルを削除します。
-t, –tarballstarball を削除します。
-p, –packages利用していないパッケージを削除します。
-s, –source-cacheソースコードキャッシュを削除します。

おわりに

 本稿では肥大化した Anaconda の不要ファイルを整理・削除する方法について解説しました。 Anaconda をヘビーユースしている方は、一度試してみてはいかがでしょうか。

Python入門トップページへ戻る

著者 : OSCA

OSCA

Java, PHP 系のWEBエンジニア。 WEBエンジニア向けコミュニティ「WEBエンジニア勉強会」を主催。
個人として何か一つでも世の中の多くの人に使ってもらえるものを作ろうと日々奮闘中。
@engineer_osca