Der Standardspeicherort für Pakete ist der Ordner .conda in meinem Home-Verzeichnis. Auf dem Server, den ich verwende, gibt es jedoch eine sehr strenge Beschränkung, wie viel Speicherplatz ich verwenden kann, wodurch ich grundsätzlich nicht in mein Home-Verzeichnis aufgenommen werden kann. Wie kann ich den Speicherort für die virtuelle Umgebung angeben, die ich erstellen möchte? Vielen Dank! Auf dem Server läuft Ubuntu.
virtualenv
anaconda
conda
linX
quelle
quelle
Antworten:
Verwenden Sie die Option
--prefix
oder,-p
um anzugeben, wo die Umgebungsdateien geschrieben werden sollen. Beispielsweise:Erstellt die benannte Umgebung
/tmp/test-env
, in der sich/tmp/
anstelle der Standardeinstellung befindet.conda
.quelle
conda create --name hbf_env --prefix /om2/user/username python=3.6
funktioniert? sagt-bash: /home/username/.conda/envs/hbf_env/bin/conda: No such file or directory
?--name
kann nicht mit verwendet werden--prefix
. Vorausgesetzt, conda ist korrekt installiert, wäre der entsprechende Befehlconda create --prefix /om2/user/username/hbf_env python=3.6
. Dies würde eine env Namen erstellenhbf_env
in Lage/om2/user/username/
conda create --prefix hbf_env
im lokalen Verzeichnis derconda info --envs
Name leer angezeigt wird , aber der vollständige Pfad angezeigt wird ... Um die Umgebung zu aktivieren, muss ich etwas eingeben der vollständige Pfad (Conda kann die Umgebung nicht finden, wenn ich nur den Namen eingebe)wie Paul sagte, benutze
Wenn Sie sich in dem Ordner befinden, in dem Sie Ihre virtuelle Umgebung erstellen möchten, lassen Sie einfach den Pfad weg und verwenden Sie ihn
conda verfolgt nur die Umgebungen, die im Ordner envs im anaconda-Ordner enthalten sind. Wenn Sie das nächste Mal Ihre neue Umgebung aktivieren müssen, wechseln Sie in den Ordner, in dem Sie sie erstellt haben, und aktivieren Sie sie mit
quelle
.condarc
Konfigurationsdatei können Sie conda anweisen, an anderen Orten nach Envs zu suchen . conda.io/docs/user-guide/configuration/...Während die Verwendung der
--prefix
Option funktioniert, müssen Sie sie jedes Mal, wenn Sie eine Umgebung erstellen, explizit verwenden. Wenn Sie Ihre Umgebungen standardmäßig nur an einem anderen Ort speichern möchten, können Sie sie in Ihrer.condarc
Datei konfigurieren .Weitere Informationen finden Sie unter: https://conda.io/docs/user-guide/configuration/use-condarc.html#specify-environment-directories-envs-dirs
quelle
conda config --append envs_dirs /path/to/envs
env_prompt: ({name})
zu ~ / .condarc wenn Sie vollständigen Pfad in Ihrem Prompt erhalten.Wenn Sie die Argumente
--prefix
oder verwenden-p
möchten, aber nicht den vollständigen Pfad der Umgebung verwenden müssen, um sie zu aktivieren, müssen Sie die.condarc
Konfigurationsdatei bearbeiten, bevor Sie die Umgebung erstellen.Die
.condarc
Datei befindet sich im Ausgangsverzeichnis.C:\Users\<user>
unter Windows. Bearbeiten Sie die Werte unter demenvs_dirs
Schlüssel, um den benutzerdefinierten Pfad für Ihre Umgebung einzuschließen. Angenommen, der benutzerdefinierte Pfad lautetD:\envs
, sollte die Datei ungefähr so aussehen:Wenn Sie dann eine neue Umgebung für diesen Pfad erstellen, wird der Name zusammen mit dem Pfad angezeigt, wenn Sie ausgeführt
conda env list
werden. Sie sollten ihn nur mit dem Namen und nicht mit dem vollständigen Pfad aktivieren können.Befehlszeilen-Screenshot
Wenn Sie bearbeiten Zusammengefasst
.condarc
enthaltenD:\envs
, und dann laufenconda env create -p D:\envs\myenv python=x.x
, dannactivate myenv
(odersource activate myenv
auf Linux) arbeiten soll.Hoffentlich hilft das!
PS Ich bin durch Versuch und Irrtum darauf gestoßen. Ich denke, was passiert, ist, wenn Sie den
envs_dirs
Schlüssel bearbeiten , Konda-Updates~\.conda\environments.txt
, um die Umgebungen einzuschließen , die in allen unter dem angegebenen Verzeichnissen gefunden werdenenvs_dirs
, so dass auf sie zugegriffen werden kann, ohne absolute Pfade zu verwenden.quelle
Sie können es so erstellen
und Sie müssen nicht in diesen Ordner wechseln, um ihn zu aktivieren.
Wie Sie sehen, mache ich das so.
quelle
Ich bin in eine ähnliche Situation geraten. Ich hatte Zugriff auf ein größeres Datenlaufwerk. Abhängig von Ihrer Situation und dem Zugriff auf den Server können Sie dies in Betracht ziehen
Anschließend fügen nachfolgende conda-Befehle Daten in das symlinked dir in datavol ein
quelle