由于环境错误而无法安装软件包:[WinError 5]访问被拒绝:

Dyl*_*per 27 tensorflow

我有Windows 10.我已经完成安装Tensorflow。有用。它说“你好Tensorflow!”。但是它具有所有这些:

2018-08-18 18:16:01.500579: I T:\src\github\tensorflow\tensorflow\core\platform\cpu_feature_guard.cc:141] Your CPU supports instructions that this TensorFlow binary was not compiled to use: AVX2 2018-08-18 18:16:01.769002: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1405] Found device 0 with properties: name: GeForce GTX 950 major: 5 minor: 2 memoryClockRate(GHz): 1.3545 pciBusID: 0000:01:00.0 totalMemory: 2.00GiB freeMemory: 1.64GiB 2018-08-18 18:16:01.774030: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1484] Adding visible gpu devices: 0 2018-08-18 18:16:02.095489: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:965] Device interconnect StreamExecutor with strength 1 edge matrix: 2018-08-18 18:16:02.099093: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:971] 0 2018-08-18 18:16:02.100631: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:984] 0: N 2018-08-18 18:16:02.102156: I T:\src\github\tensorflow\tensorflow\core\common_runtime\gpu\gpu_device.cc:1097] Created TensorFlow device (/job:localhost/replica:0/task:0/device:GPU:0 with 1401 MB memory) -> physical GPU (device: 0, name: GeForce GTX 950, pci bus id: 0000:01:00.0, compute capability: 5.2) Hello Tensorflow!
Run Code Online (Sandbox Code Playgroud)

进程返回0(0x0)执行时间:2.327 s按任意键继续

当我输入pip3 install --upgrade tensorflow-gpucmb时,无论是管理用户还是普通用户,我都会得到Could not install packages due to an EnvironmentError: [WinError 5] Access is denied: 'c:\\users\\dylan\\appdata\\local\\programs\\python\\python35\\Lib\\site-packages\\numpy\\.libs\\libopenblas.BNVRK7633HSX7YVO2TADGR4A5KEKXJAW.gfortran-win_amd64.dll' Consider using the--user,option or check the permissions.请帮帮我。不是计算机科学家或工程师。但是我编码很有趣。

小智 32

只需更改访问权限,即要安装特定包的位置。

在我的情况下windows10

  • 转到“C:\Program Files (x86)\Python37”
  • 右键单击 Python37 文件夹并单击属性
  • 转到安全选项卡并通过单击编辑按钮允许完全控制。
  • 再次打开新的 cmd 终端并尝试再次安装该软件包。

  • 具体来说,lib子文件夹 (2认同)

jci*_*tra 29

我发现如果我以管理员身份运行 CMD 并运行命令,我可以毫无问题地安装它。试试吧,给我一些反馈。

  • 事实上,这确实有效,奇怪的是 Windows PowerShell 作为管理员显示访问被拒绝消息并说安装失败,但它实际上也完成了这项工作 (5认同)
  • 就我而言,具有管理员权限的 CMD 不起作用,但具有管理员权限的 Powershell 可以。因此,尝试两者可能会有所帮助。 (2认同)

小智 22

如果您不想更改权限,只需输入要执行的具有用户权限的命令:

pip3 install --upgrade tensorflow-gpu --user
Run Code Online (Sandbox Code Playgroud)

  • 这对于那些理解的人来说可能是显而易见的,但是有人可以详细说明 --user 命令在代码执行中的作用吗? (7认同)
  • @Chayan 为什么这个可以工作,而正常的 pip install 却不行? (4认同)
  • 如果您尝试在虚拟环境下安装(您始终应该这样做),则此答案毫无用处。 (3认同)
  • 我收到错误:错误:由于环境错误而无法安装软件包:[WinError 2] 系统找不到指定的文件:'c:\\python39\\Scripts\\tqdm.exe' -> 'c:\\ python39\\Scripts\\tqdm.exe.deleteme' 但是,添加 --user 后它解决了。 (2认同)

小智 20

我正在将 tensorflow 升级到 1.4.0,因为这个错误没有解决,我的头撞到了墙上,但最终解决了它。你猜怎么着?

我的一个 python 脚本正在运行,它正在使用 tensorflow 。关闭后安装成功。

  • 这里同样的问题。 (2认同)

Swa*_*jee 16

我使用了这个命令并且它起作用了:

python -m pip install --user --upgrade pip
Run Code Online (Sandbox Code Playgroud)


Har*_*ope 12

run the same command using '--user'

  • 对于非重度程序员来说,有很多用例可以简单地在系统范围内安装 python,而无需为他们决定启动的每个 python 项目创建 venv。如果人们能够用各种解决方案回答所提出的问题,并在提供该信息之后解释每种方法的差异,那将非常有帮助。 (5认同)
  • @alelom,我在虚拟环境中运行时遇到此错误。 (3认同)
  • 是的,有区别:该软件包将安装在%userprofile%中。 (2认同)
  • 如果您尝试在虚拟环境下安装(您始终应该这样做),则毫无用处。 (2认同)

que*_*o42 12

  • 视窗
  • 正常且新鲜的Python 3.7
  • 虚拟环境激活
  • 无需终端管理员权限
  • 无需--user参数

只是:

py -m pip install --upgrade pip
Run Code Online (Sandbox Code Playgroud)

做好了。


Abh*_*ari 10

天啊。这里有很多糟糕的答案。意思很好,但有误导性。我通常可以很好地处理 Mac/Linux 上的权限。这些天,Windows 对我来说是新事物。这是我遇到的问题。

  1. 创建一个 virtualenv - 好的
  2. activate我的 virtualenv - 失败。需要 Scope 才能运行 powershell。Windows 很有帮助,它会准确地告诉您允许 .ps 运行所需的命令。有点像,chmodscope我认为执行力很好。
  3. 现在,如果您通过了上述步骤并安装了一些软件包,那就没问题了。直到你突然不能。然后您会收到此权限错误。
  4. 您或其他进程确实在 pip 安装包的文件夹上设置了权限。即...site-packages/在我的情况下,我怀疑它是 OneDrive 或某些权限继承。

理想的前进方式是检查权限。这很难,但您是 Python 开发人员,不是吗!首先检查您自己的用户。

  1. whoami 例如我的电脑\vangel
  2. Get-Acl <path which is an issue>
  3. 在 Python 安装文件夹或您的 virtualenv 上右键单击并转到安全选项卡。单击高级并查看权限。我删除了所有继承的权限和其他用户等,并whoami明确添加了具有完全权限的用户。然后应用于所有对象。

不要在没有验证以下步骤的情况下执行这些操作。仔细阅读消息。

它绝不是可能影响您的所有权限问题的解决方案。我只能提供有关如何排除故障的指导,希望您能解决。

--user任何地方都不需要设置标志,如果它对你有好处。但你仍然不知道出了什么问题。

更多步骤:尝试删除软件包并安装它。 pip uninstall requests pip install requests 这有效,但我遇到了特定包的许可问题。

事实证明,当文件被进程锁定时,Windows 会出现权限错误。Python 将其报告为[Winerror 5],无论如何我都无法轻松找到该文档参考。让我们测试一下这个理论。

我找到了获得权限错误的确切文件。点击删除。果然 Windowswindow提示其打开方式python当然是。

end task使用了所有 python 它自 1996 年以来一直有效。但我等了几秒钟,以防某些进程正在启动 python。检查Task manager一切正常。

在让 pip 安装特定的 azureml 包失败 20 次后,我确信这解决了它。

我运行了我的 pip install,它安装得很好。

这个故事的寓意:在从 Stackoverflow 复制粘贴之前了解你在做什么。祝一切顺利。

ps 请停止以管理员身份安装 Python 或其软件包。自 2006 年以来,我们已经过去了


Era*_*evi 7

对我来说(在 Windows 中),我必须重新启动终端并以管理员身份运行它(如果您使用的是 pycharm 终端,只需关闭 pycharm,然后以管理员身份重新打开它,然后再试一次),问题解决了,安装成功。

祝你好运


Ama*_*mar 6

要安装 tensorflow,请使用此命令,包括 --User。

pip install --ignore-installed --upgrade --user tensorflow==2.0.1
Run Code Online (Sandbox Code Playgroud)

这里 2.0.1 是 tensorflow 的版本。


小智 6

在 Windows 中试试这个:

pip install -U <Package_Name>


小智 5

这在我的例子中是有效的:

pip install --user --upgrade pip

否则,使用“以管理员身份运行”打开命令提示符并执行相同的操作。