OSError: [Errno 1] Operation not permitted: '/tmp/pip-g3bg0s-uninstall/System/Library/Frameworks/Pyt

一、问题描述

在用下列名字安装时

sudo -H pip install Scrapy

sudo pip install virtualenvwrapper

 

出现下列错误

Found existing installation: six 1.4.1

    DEPRECATION: Uninstalling a distutils installed project (six) has been deprecated and will be removed in a future version. This is due to the fact that uninstalling a distutils project will only partially uninstall the project.

    Uninstalling six-1.4.1:

Exception:

Traceback (most recent call last):

  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/basecommand.py", line 215, in main

    status = self.run(options, args)

  File "/Library/python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/commands/install.py", line 342, in run

    prefix=options.prefix_path,

  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_set.py", line 778, in install

    requirement.uninstall(auto_confirm=True)

  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_install.py", line 754, in uninstall

    paths_to_remove.remove(auto_confirm)

  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/req/req_uninstall.py", line 115, in remove

    renames(path, new_path)

  File "/Library/Python/2.7/site-packages/pip-9.0.1-py2.7.egg/pip/utils/__init__.py", line 267, in renames

    shutil.move(old, new)

  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 302, in move

    copy2(src, real_dst)

  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 131, in copy2

    copystat(src, dst)

  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 103, in copystat

    os.chflags(dst, st.st_flags)

OSError: [Errno 1] Operation not permitted: '/tmp/pip-g3bg0s-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'

 

二、问题分析解决:

 

Scrapy,virtualenvwrapper需要依赖six,在安装six的时候发现系统已经有一个six-1.4.1,但是virtualenvwrapper需要six-1.9.0,于是想先卸载老版本的six,此时问题来了,发现没有权限卸载,此时我就纳闷,加上sudo,还是没权限。于是Google之,最终还是在万能的GitHub找到答案。six-1.4.1是系统内置的packages,因 系统集成保护 你是没有权限去修改/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info目录的。因此在安装virtualenvwrapper的时候需要选择忽略six的安装:

 

sudo pip install virtualenvwrapper --upgrade --ignore-installed six

 

sudo pip install Scrapy --upgrade --ignore-installed six

### 回答1: 这个错误通常是由于安装包时出现了意外中断,导致相关文件在安装过程中没有被下载或安装成功。您可以尝试以下几个方法: 1. 确认您的网络连接正常,然后再次尝试安装该包。 2. 清除 pip 缓存并重试: ``` pip cache purge pip install 包名 ``` 3. 手动下载该包并使用本地安装: ``` pip download 包名 pip install --no-index --find-links=. 包名 ``` 如果上述方法都不能解决问题,建议您搜索相关错误信息,或者尝试使用其他方式安装该包。 ### 回答2: 这个错误是由于找不到指定的文件或目录导致无法安装软件包。错误信息中显示的文件路径是'/tmp/pip-install-m9umntg8/pyproj_ea0f8982dccb46c09259319cc172b3f8'。这可能是由于以下原因导致的: 1. 文件或目录不存在:文件或目录'/tmp/pip-install-m9umntg8/pyproj_ea0f8982dccb46c09259319cc172b3f8'在指定路径中不存在。这可能是因为文件被删除或移动,或者目录被更改或删除。 2. 权限问题:你可能没有足够的权限访问指定的文件或目录。请确保你有足够的权限进行安装操作。 解决这个问题的方法可以尝试以下几个步骤: 1. 检查文件路径:确保文件或目录'/tmp/pip-install-m9umntg8/pyproj_ea0f8982dccb46c09259319cc172b3f8'存在于指定路径中。如果文件或目录不存在,请尝试重新安装软件包或解决依赖问题。 2. 检查权限设置:确保你具备访问指定文件或目录的权限。你可以尝试使用管理员权限运行安装命令或更改文件/目录的权限设置。 3. 清理临时文件:如果问题仍然存在,尝试清理临时文件。临时文件可能会引起软件包安装问题。你可以删除'/tmp/pip-install-m9umntg8/'目录下的所有文件,并尝试重新安装软件包。 如果以上方法无法解决问题,你可能需要寻求进一步的技术支持,例如查看相关错误日志或咨询软件包作者或开发者。 ### 回答3: 这个错误提示意味着由于操作系统错误 [Errno 2] 没有找到指定的文件或目录 '/tmp/pip-install-m9umntg8/pyproj_ea0f8982dccb46c09259319cc172b3f8',无法安装软件包。 这个问题通常出现在使用pip安装软件包时,pip尝试在指定的临时目录下下载或安装软件包,但临时目录中的文件或目录不存在。 要解决这个问题,你可以尝试以下几个步骤: 1. 检查临时目录是否存在:首先确认该目录 '/tmp/pip-install-m9umntg8/' 是否存在。如果不存在,你可以尝试手动创建该目录。使用命令 'mkdir /tmp/pip-install-m9umntg8/' 来创建目录。 2. 清除pip缓存:运行命令 'pip cache purge' 清除pip缓存,然后再次尝试安装软件包。 3. 更新pip工具:使用命令 'pip install --upgrade pip' 更新pip工具到最新版本,并再次尝试安装软件包。 如果以上步骤还无法解决问题,你可以尝试将软件包的安装文件手动下载到指定的临时目录中,并使用命令 'pip install <软件包名称>' 进行安装。你可以在软件包官方网站或pypi网站上找到软件包的安装文件下载链接。 最后,如果问题仍然存在,你可以查找相关的错误文本或查询类似问题的解决方案。在stackoverflow或其他技术论坛上,可能会找到更具体的解决方法。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值