2016-04-06 17 views
-1

Ich brauche Befehle in einer Anaconda Python-Umgebung in einem chroot mit einem Bash-Skript wie folgt auszuführen:aktivieren Python-Umgebung in chroot

# install miniconda 
chroot $chroot_path /bin/bash /miniconda.sh -f -b -p /miniconda 

# Install packages in py2 environment 
chroot $chroot_path /bin/bash source /miniconda/bin/activate py2 && /miniconda/bin/conda install notebook ipykernel 

Aber ich bekomme:

/bin/bash: source: No such file or directory 

Wie kann ich machen es funktioniert?

+0

Versuchen Sie, Anaconda in der Chroot installieren. Sie erhalten eine neue Version ... aber Code-Isolation ist irgendwie der Punkt hinter Chroot sowieso. – tdelaney

+0

@tdelaney Was meinst du? Anaconda (Miniconda) ist bereits in der Chroot installiert. – macurie

Antwort

1

Es gibt zwei Probleme mit diesem Befehl

chroot $chroot_path /bin/bash source /miniconda/bin/activate py2 && /miniconda/bin/conda install notebook ipykernel 

Zuerst source ist ein bash Schlüsselwort, nicht ein ausführbares Programm. Wenn Sie /bin/bash source /miniconda/bin/activate py2 tun, versuchen Sie, eine nicht existente ausführbare Datei auszuführen, was fehlschlägt. Zweitens wird der Teil nach der && nur ausgeführt, nachdem die Chroot beendet wurde. Stattdessen können Sie -c verwenden, um die Zeile als ein Skript auszuführen