misonoteApp Center

Cargo の registry キャッシュ(~/.cargo/registry)は削除していい?

削除して大丈夫自動で作り直されます。Thermo はそのまま削除します。

先に終了: cargo

場所

  • ~/.cargo/registry/cache
  • ~/.cargo/registry/src
  • ~/.cargo/git/checkouts

これは何?

Rust のビルドツール Cargo が、crates.io などから取得した crate を保存しておく場所です。registry/cache にはダウンロードした .crate ファイル、registry/src にはそれを展開したソース、git/checkouts には Git 依存のチェックアウトが入ります。

なぜ大きくなる?

依存 crate のバージョンが上がるたびに新しいものが追加され、古いバージョンも残ります。同じ crate がアーカイブと展開済みソースの二重で保存されるので、依存の多いプロジェクトをいくつも扱うと膨らみやすくなります。

削除しても大丈夫?

安全に削除できます。次に cargo build などを実行したとき、必要な crate が再ダウンロードされ展開されます。cargo install で入れたツール(~/.cargo/bin)には影響しません。ビルド中の cargo プロセスがないことを確認してから削除してください。

ヒント

Rust で容量を大きく使っているのは、むしろ各プロジェクトの target フォルダであることがよくあります。こちらは対象外なので、使っていないプロジェクトでは cargo clean で整理するのが効果的です。

まず容量を確認

du -sh "$HOME/.cargo/registry/cache" "$HOME/.cargo/registry/src" "$HOME/.cargo/git/checkouts" 2>/dev/null

手動で削除

「ターミナル」で実行します。削除は元に戻せないので、パスを確認してから実行してください。

rm -rf "$HOME/.cargo/registry/cache"/*
rm -rf "$HOME/.cargo/registry/src"/*
rm -rf "$HOME/.cargo/git/checkouts"/*