der Standardspeicherort für Pakete ist der .conda-Ordner in meinem Home-Verzeichnis. Auf dem Server, den ich verwende, gibt es jedoch eine sehr strenge Begrenzung des verfügbaren Speicherplatzes, wodurch grundsätzlich alles unter meinem Heimatverzeichnis gespeichert wird. Wie kann ich den Speicherort für die virtuelle Umgebung angeben, die ich erstellen möchte? Vielen Dank! Server läuft Ubuntu.
Verwenden Sie die Option --prefix
oder -p
, um anzugeben, wo die Umgebungsdateien geschrieben werden sollen. Zum Beispiel:
conda create --prefix /tmp/test-env python=2.7
Erstellt die Umgebung mit dem Namen /tmp/test-env
, die sich in /tmp/
anstelle des Standardcodes .conda
befindet.
wie Paul gesagt hat
conda create --prefix=/users/.../yourEnvName python=x.x
wenn Sie sich in dem Ordner befinden, in dem Sie Ihre virtuelle Umgebung erstellen möchten, lassen Sie den Pfad einfach weg und verwenden Sie
conda create --prefix=yourEnvName python=x.x
conda verfolgt nur die Umgebungen, die in dem Ordner envs im Ordner anaconda enthalten sind. Wenn Sie das nächste Mal Ihr neues Env aktivieren müssen, wechseln Sie in den Ordner, in dem Sie es erstellt haben, und aktivieren Sie es mit
source activate yourEnvName
Sie können es so erstellen
conda create --prefix C:/tensorflow2 python=3.7
und Sie müssen nicht in diesen Ordner verschieben, um ihn zu aktivieren.
# To activate this environment, use:
# > activate C:\tensorflow2
Wie Sie sehen, mache ich das so.
D:\Development_Avector\PycharmProjects\TensorFlow>activate C:\tensorflow2
(C:\tensorflow2) D:\Development_Avector\PycharmProjects\TensorFlow>
(C:\tensorflow2) D:\Development_Avector\PycharmProjects\TensorFlow>conda --version
conda 4.5.13
Während die --prefix
-Option funktioniert, müssen Sie sie jedes Mal explizit verwenden, wenn Sie eine Umgebung erstellen. Wenn Sie möchten, dass Ihre Umgebungen standardmäßig an einem anderen Ort gespeichert werden, können Sie sie in Ihrer .condarc
-Datei konfigurieren.
Bitte sehen Sie: https://conda.io/docs/user-guide/configuration/use-condarc.html#specify-environment-directories-envs-dirs
Wenn Sie die Argumente --prefix
oder -p
verwenden möchten, aber nicht den vollständigen Pfad der Umgebung zum Aktivieren verwenden müssen, müssen Sie die Konfigurationsdatei .condarc
bearbeiten bevor Sie die Umgebung erstellen.
Die Datei .condarc
befindet sich im Ausgangsverzeichnis. C:\Users\<user>
unter Windows. Bearbeiten Sie die Werte unter dem Schlüssel envs_dirs
, um den benutzerdefinierten Pfad für Ihre Umgebung einzuschließen. Angenommen, der benutzerdefinierte Pfad ist D:\envs
, dann sollte die Datei ungefähr so aussehen:
ssl_verify: true
channels:
- defaults
envs_dirs:
- C:\Users\<user>\Anaconda3\envs
- D:\envs
Wenn Sie dann eine neue Umgebung auf diesem Pfad erstellen, wird der Name zusammen mit dem Pfad angezeigt, wenn Sie conda env list
ausführen, und Sie sollten in der Lage sein, ihn nur mit dem Namen und nicht mit dem vollständigen Pfad zu aktivieren.
Wenn Sie .condarc
bearbeiten, um D:\envs
einzuschließen, und dann conda env create -p D:\envs\myenv python=x.x
ausführen, sollte activate myenv
(oder source activate myenv
unter Linux) funktionieren.
Hoffentlich hilft das!
P.S. Ich bin durch Versuch und Irrtum darauf gestoßen. Ich denke, was passiert, wenn Sie den Schlüssel envs_dirs
bearbeiten und ~\.conda\environments.txt
aktualisieren, um die Umgebungen einzuschließen, die sich in allen unter envs_dirs
angegebenen Verzeichnissen befinden, sodass auf sie zugegriffen werden kann, ohne absolute Pfade zu verwenden .
Ich bin in eine ähnliche Situation geraten. Ich hatte Zugriff auf ein größeres Datenlaufwerk. Abhängig von Ihrer Situation und dem Zugriff, den Sie auf den Server haben, können Sie dies berücksichtigen
ln -s /datavol/path/to/your/.conda /home/user/.conda
Anschließend setzen nachfolgende Kondabefehle Daten in das mit symbol verknüpfte Verzeichnis in datavol