安装python模块IOError:[Errno 13]权限被拒绝:

问题描述 投票:1回答:4

我尝试通过键入终端使用pip安装python库openpyxl:

    pip install openpyxl

但它没有正确执行。它引发了一个例外:

    Successfully built openpyxl jdcal et-xmlfile
    Installing collected packages: jdcal, et-xmlfile, openpyxl
    Exception:
    Traceback (most recent call last):
    File "/Library/Python/2.7/site-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
    File "/Library/Python/2.7/site-packages/pip/commands/install.py", line 342, in run
    prefix=options.prefix_path,
    File "/Library/Python/2.7/site-packages/pip/req/req_set.py", line 784, in install
    **kwargs
    File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 851, in install
    self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
    File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 1064, in move_wheel_files
    isolated=self.isolated,
    File "/Library/Python/2.7/site-packages/pip/wheel.py", line 345, in move_wheel_files
    clobber(source, lib_dir, True)
    File "/Library/Python/2.7/site-packages/pip/wheel.py", line 323, in clobber
    shutil.copyfile(srcfile, destfile)
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 83, in copyfile
    with open(dst, 'wb') as fdst:
    IOError: [Errno 13] Permission denied: '/Library/Python/2.7/site-packages/jdcal.py'
python pip permission-denied
4个回答
6
投票

最好的方法可能是使用pip install <libname> --user

在你的情况下使用pip install openpyxel --user的含义

这将为您的用户安装包,这是安全的。您也可能有权为用户安装软件包。

您遇到的权限错误是一个常见问题。从这里可以看出:pip is not able to install packages correctly: Permission denied error和这里的error: could not create '/usr/local/lib/python2.7/dist-packages/virtualenv_support': Permission denied

使用sudo pip命令不被认为是安全的,如下所述:What are the risks of running 'sudo pip'?


3
投票

您的用户在Python安装文件夹中没有写入权限。

要修复它,请以root身份运行pip:

sudo pip install openpyxl


0
投票

您的帐户没有此目录的写入权限?

  1. 如果安装目录是系统拥有的目录,则可能需要以管理员或“root”帐户登录。 sudo pip install openpyxl
  2. 如果您没有对此计算机的管理访问权限,则可能希望选择其他安装目录,最好是在PYTHON_PATH环境变量中列出的目录。
  3. 更简单的方法:更改dir权限: chmod + a'user:YOUR_USER_NAME允许add_subdirectory,add_file,delete_child,directory_inherit'/ Library/Python/2.7/site-packages

-1
投票

将site-packages文件夹的安全设置更改为您的用户的“完全控制”,然后重新运行pip install openpyxl

© www.soinside.com 2019 - 2024. All rights reserved.