0

I'm using PIP to get a package I need for Python but I'm getting a permission error even when I'm using "sudo" to access the package.

I'm following the instructions posted here on the website for the package.

sudo pip install -U nltk
Password:
The directory '/Users/me/Library/Caches/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
The directory '/Users/me/Library/Caches/pip' or its parent directory is not owned by the current user and caching wheels has been disabled. check the permissions and owner of that directory. If executing pip with sudo, you may want sudo's -H flag.
Collecting nltk
  Downloading nltk-3.0.5.tar.gz (1.0MB)
    100% |████████████████████████████████| 1.0MB 289kB/s 
Collecting six>=1.9.0 (from nltk)
  Downloading six-1.9.0-py2.py3-none-any.whl
Installing collected packages: six, nltk
  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-7.1.2-py2.7.egg/pip/basecommand.py", line 211, in main
    status = self.run(options, args)
  File "/Library/Python/2.7/site-packages/pip-7.1.2-py2.7.egg/pip/commands/install.py", line 311, in run
    root=options.root_path,
  File "/Library/Python/2.7/site-packages/pip-7.1.2-py2.7.egg/pip/req/req_set.py", line 640, in install
    requirement.uninstall(auto_confirm=True)
  File "/Library/Python/2.7/site-packages/pip-7.1.2-py2.7.egg/pip/req/req_install.py", line 716, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "/Library/Python/2.7/site-packages/pip-7.1.2-py2.7.egg/pip/req/req_uninstall.py", line 125, in remove
    renames(path, new_path)
  File "/Library/Python/2.7/site-packages/pip-7.1.2-py2.7.egg/pip/utils/__init__.py", line 315, 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-KICJWB-uninstall/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six-1.4.1-py2.7.egg-info'

It says my parent directory is not owned by me ... but I'm the only user on my computer. So I don't know what is going on here.

Thanks,

Chef1075
  • 2,614
  • 9
  • 40
  • 57
  • 1
    See this answer: http://stackoverflow.com/a/32723204/2744166 – Joe Young Oct 04 '15 at 22:40
  • 1
    This is best handled by a virtualenv. I am not sure if disabling security features is the best way to go here. – cel Oct 05 '15 at 05:39
  • Can you elaborate a bit more? – Chef1075 Oct 05 '15 at 23:04
  • Possible duplicate of [Unable to install nltk on Mac OS El Capitan](http://stackoverflow.com/questions/32898583/unable-to-install-nltk-on-mac-os-el-capitan) – Sacrilicious Oct 10 '15 at 22:04
  • Answered here: https://stackoverflow.com/questions/31900008/oserror-errno-1-operation-not-permitted-when-installing-scrapy-in-osx-10-11 – IJR Sep 27 '17 at 06:47

1 Answers1

3

Got very similar issue while trying to install awscli. Following worked for me. Just changing the package name. You can try -

sudo -H pip install nltk --upgrade --ignore-installed six
Aniket Thakur
  • 66,731
  • 38
  • 279
  • 289