私のユーザーはminicondaでインストールされた構造生物学プログラムを使用しているため、anaconda/minicondaを実験していますが、A)他のminicondaアプリケーションが存在する可能性があることを考慮に入れています。B)プログラムがマルチユーザー環境で使用されることを考慮しています。 。
そこで、Arch Linuxを使用して、最初にanaconda(バージョン4.5.12)をインストールし、次に自分のアカウントを使用して、いくつかのテスト環境を作成しました。
conda create -n snakes
conda create -n sharks
次に、(完全に)anacondaをアンインストールしてminiconda(バージョン4.5.12も)をインストールし、標準以外の場所にrootとして別の環境を作成しました。
# conda create -p /usr/local/miniconda/pyem
ここで奇妙なことが起こります。 rootユーザーとして環境を一覧表示すると、デフォルトと先ほど作成した環境だけでなく、ユーザーアカウントを使用して以前に作成した環境も表示されます。
[root@lizard /]# conda info --envs
# conda environments:
#
/home/cnsit/.conda/envs/sharks
/home/cnsit/.conda/envs/snakes
base * /opt/miniconda3
/usr/local/miniconda/pyem
(conda-env list
コマンドでも同じ出力が得られます。)
したがって、質問:condaが別のユーザーによって作成された環境を見つける方法は?さらに、condaの元のインスタンスの親ディレクトリ全体が削除され、完全に異なる場所にあるディレクトリに置き換えられた場合(したがって、ローカルenvironments.txtファイルがこれをカタログ化している可能性があります。
info
コマンドのコードは、 cli.main_info
モジュール、およびこの場合の関連コードは here です。 here から関数をインポートし、(特に)設定値envs_dirs
を読み込みます。次のコマンドを実行すると、システムでこの構成値の値を確認できます
conda config --show envs_dirs
これにより、検索対象の環境のユーザーディレクトリが表示されると思います。