【问题标题】:Python Pipenv Install: EnvironmentError: Permission DeniedPython Pipenv 安装:EnvironmentError: Permission Denied
【发布时间】:2020-07-15 22:31:55
【问题描述】:

尝试在 pipenv shell 中安装 python-decouple:

(projectname) username@host: pipenv install python-decouple

但我收到以下错误:

Installing python-decouple…
Error:  An error occurred while installing python-decouple!
Error text: Processing /home/username/.cache/pipenv/wheels/6d/5a/2d/acfg...422fd/python_decouple-3.3-py3-none-any.whl
Installing collected packages: python-decouple

ERROR: Could not install packages due to an EnvironmentError: [Errno 13] Permission denied: '/home/username/.local/share/virtualenvs/projectname-J2Y6DseW/lib/python3.6/site-packages/__pycache__/decouple.cpython-36.pyc'
Consider using the `--user` option or check the permissions.

我意识到我可以使用以下命令从 pipenv shell 外部安装这个包:

python3 -m pip install --user python-decouple

但这意味着当有人尝试使用 Pipenv 复制我的项目环境时,此依赖项将不会由 Pipenv 管理...

我该如何解决这个问题,它的原因是什么,我可以在文件上设置什么样的权限来解决它?

【问题讨论】:

    标签: python python-3.x dependency-management pipenv virtual-environment


    【解决方案1】:

    使用风险自负:

    以下解决方案有效:

    运行:

    sudo chmod 777 /home/username/.local/share/virtualenvs/projectname-J2Y6DseW/lib/python3.6/site-packages/__pycache__
    

    之后,尝试在 pipenv shell 中再次使用 pipenv 进行安装。

    我不知道这是否是一个好的解决方案,所以如果你有更好的解决方案,请纠正我。

    【讨论】:

      【解决方案2】:

      这里只有我的两分钱:

      我会修改requirements.txt(每个虚拟环境都应该有一个,或者至少设置一个来维护依赖关系),为python-decouple 添加包。当前版本是 3.3,所以在文件的某处添加:python-decouple==3.3 并重新运行虚拟环境或再次安装 requirements.txt

      请参阅link 了解有关此软件包的更多信息。

      【讨论】:

      • 从 Pipfile 生成了一个 requirements.txt,添加了 python-decouple==3.3 然后尝试从 requirements.txt 重新生成 Pipfile。收到完全相同的错误...不过感谢您的建议!
      • 尝试在 virtualenv 中执行此操作,即在 (projectname) 环境中,pip install python-decouple。如果您收到与pip 相关的任何错误,请使用upgrade 命令更新pip 包。
      • 刚试过这个......它给了我完全相同的错误。
      猜你喜欢
      • 2020-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-31
      • 1970-01-01
      • 2017-02-12
      相关资源
      最近更新 更多