Ich benutze den Conda Package Manager - viel. Inzwischen habe ich einige Umgebungen und viele heruntergeladene Pakete, die viel Speicherplatz auf meiner SSD benötigen. Ein naheliegender Weg, um etwas von diesem Speicherplatz freizugeben, ist die Verwendung des Befehls
conda env export > environment.yml
aus https://conda.io/docs/user-guide/tasks/manage-environments.html#exporting-the-environment-file , um zu exportieren, welche Pakete meine alten, inaktiven Projekte verwenden (d) und anschließend löschen diese Umgebungen. Soweit ich weiß, sollte dies etwas Platz in anaconda2/envs/
freigeben, jedoch nicht in anaconda2/pkgs/
. Wie entferne ich diese Pakete? Ich vermute auch, dass es noch einige Pakete gibt, auf die sich keine Umgebung bezieht - könnte das passieren?
Fragen:
Sudo apt-get autoremove
von Ubuntu/Debian.Schließlich habe ich mich mit diesem Thema beschäftigt. Am Ende waren es ein paar Tage Arbeit:
conda env export > environment.yml
verwendet, um die Umgebungseinstellungen von https://conda.io/projects/conda/de/latest/user-guide/tasks/manage-environments.html#exporting-the-environment zu speichern -Dateianaconda-clean
aus Option B in https://docs.anaconda.com/anaconda/install/uninstall und legen Sie das erstellte Backup an einem sicheren Ort ab.anaconda2
-Verzeichnis in anaconda2_backup
um.miniconda3
in meinem Fall.environment.yml
s neue Umgebungen, die für aktuelle Projekte benötigt werden, und prüfen Sie, ob diese funktionieren.Schließlich habe ich mein logisches Volumen auch mit https://blog.shadypixel.com/how-to-shrink-an-lvm-volume-safely/ - reduziert. Dies ist jedoch nur für Linux-Benutzer, die LVMs verwenden.
Auf diese Weise konnte ich 20 bis 30 GB Speicherplatz freigeben.
Sie können etwas Speicherplatz freigeben mit:
conda clean --all
clean
Entfernen Sie nicht verwendete Pakete und Caches.
Conda verwendet bereits Symlinks, wenn möglich für Pakete. Also nicht viel zu verbessern, denke ich.
Ok, danke, aber ich würde gerne "nicht für eine bestimmte Umgebung, sondern allgemein" wissen - für alle Umgebungen.
Sie können alle Pakete in allen Envs mit ein paar Zeilen Python auflisten:
import os
import subprocess
for env in os.listdir('/Users/me/miniconda3/envs'):
subprocess.call(['conda', 'list', '-n', env])