我们有一台具有多个(自动)用户的计算机。 (在Microsoft Azure上)。
如果尝试在其他用户创建的conda环境中使用pip install
,则会收到“访问被拒绝”错误。
我们使用以下命令以管理员身份安装了anaconda:
C:\Windows\Temp\Anaconda3.exe /InstallationType=AllUsers /AddToPath=1 /RegisterPython=1 /S
如果我使用一个用户创建condaenv,可以说 _azbatchtask_20 ,我们可以激活它,在其中安装软件包并停用它:
conda create -p D:\batch\tasks\shared\test-condaenv-users python=3.7 -y
conda activate D:\batch\tasks\shared\test-condaenv-users
pip install see
deactivate
但是,如果我们现在在 _azbatchtask_21 下登录,并尝试在相同的环境中安装新软件包,则会收到奇怪的错误“ Acess被拒绝”:
conda activate D:\batch\tasks\shared\test-condaenv-users
可以,但是:
pip install nltk
> Access is denied
在有用的情况下,我们使用
检查了新创建的condaenv文件夹的权限 icacls D:\batch\tasks\shared\test-condaenv-users
NT AUTHORITY\SYSTEM:(I)(F)
NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F)
ae0f56229000000\_azbatch:(I)(F)
ae0f56229000000\_azbatch:(I)(OI)(CI)(IO)(F)
BUILTIN\Administrators:(I)(F)
BUILTIN\Administrators:(I)(OI)(CI)(IO)(F)
ae0f56229000000\WATASK_COMMON_GROUP:(I)(F)
ae0f56229000000\WATASK_COMMON_GROUP:(I)(OI)(CI)(IO)(F)
NT AUTHORITY\Authenticated Users:(I)(F)
NT AUTHORITY\Authenticated Users:(I)(OI)(CI)(IO)(F)
我们还尝试使用以下命令向所有人授予完全权限(但是pip install
之后仍然失败)
icacls D:\batch\tasks\shared\test-condaenv-users /grant "Everyone:(OI)(CI)F" /T
conda info
conda info
active environment : D:\batch\tasks\shared\ChinaPortWeather22_condavenv37
active env location : D:\batch\tasks\shared\ChinaPortWeather22_condavenv37
shell level : 1
user config file : D:\Users\_azbatchtask_74\.condarc
populated config files :
conda version : 4.6.11
conda-build version : 3.17.8
python version : 3.7.3.final.0
base environment : C:\ProgramData\Anaconda3 (read only)
channel URLs : https://repo.anaconda.com/pkgs/main/win-64
https://repo.anaconda.com/pkgs/main/noarch
https://repo.anaconda.com/pkgs/free/win-64
https://repo.anaconda.com/pkgs/free/noarch
https://repo.anaconda.com/pkgs/r/win-64
https://repo.anaconda.com/pkgs/r/noarch
https://repo.anaconda.com/pkgs/msys2/win-64
https://repo.anaconda.com/pkgs/msys2/noarch
package cache : C:\ProgramData\Anaconda3\pkgs
D:\Users\_azbatchtask_74\.conda\pkgs
D:\Users\_azbatchtask_74\AppData\Local\conda\conda\pkgs
envs directories : D:\Users\_azbatchtask_74\.conda\envs
C:\ProgramData\Anaconda3\envs
D:\Users\_azbatchtask_74\AppData\Local\conda\conda\envs
platform : win-64
user-agent : conda/4.6.11 requests/2.21.0 CPython/3.7.3 Windows/10 Windows/10.0.14393
administrator : False
netrc file : None
offline mode : False
conda list --show-channel-urls
6月27日编辑:我注意到在创建的conda环境中没有conda list --show-channel-urls
文件夹,因为它应该像此处的文档中所述
在我拥有的结构下查找
# packages in environment at D:\batch\tasks\shared\ChinaPortWeather22_condavenv37:
#
# Name Version Build Channel
ca-certificates 2019.5.15 0 defaults
certifi 2019.3.9 py37_0 defaults
openssl 1.1.1c he774522_1 defaults
pip 19.1.1 py37_0 defaults
python 3.7.3 h8c8aaf0_1 defaults
setuptools 41.0.1 py37_0 defaults
sqlite 3.28.0 he774522_0 defaults
vc 14.1 h0510ff6_4 defaults
vs2015_runtime 14.15.26706 h3a45250_4 defaults
wheel 0.33.4 py37_0 defaults
wincertstore 0.2 py37_0 defaults
“ \库” 驱动器D中的卷是临时存储 卷序列号是2AF3-E29E
/bin/
答案 0 :(得分:4)
肯定pip似乎尝试在全球而不是在环境中安装软件包,因此,我整理了一系列您可能想强制使用本地pip的方法:
conda create -p D:\batch\tasks\shared\test-condaenv-users python=3.7 pip
conda create -p D:\batch\tasks\shared\test-condaenv-users python=3.7
conda activate D:\batch\tasks\shared\test-condaenv-users
conda install pip
conda deactivate
conda activate D:\batch\tasks\shared\test-condaenv-users
D:\batch\tasks\shared\test-condaenv-users\bin\pip install nltk
阅读列表:
希望有帮助。