Spacy: Windows 10 OSError: symbolic link privilege not held

Created on 20 Mar 2017  Â·  5Comments  Â·  Source: explosion/spaCy

Just tried to install the new models on my Windows 10 machine and received the following error:

Error Message

$ python -m spacy download en_core_web_md

    Downloading en_core_web_md-1.2.0/en_core_web_md-1.2.0.tar.gz

Collecting https://github.com/explosion/spacy-models/releases/download/en_core_web_md-1.2.0/en_core_web_md-1.2.0.tar.gz
  Downloading https://github.com/explosion/spacy-models/releases/download/en_core_web_md-1.2.0/en_core_web_md-1.2.0.tar.gz (1086.4MB)
Requirement already satisfied: spacy<2.0.0,>=1.7.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from en-core-web-md==1.2.0)
Requirement already satisfied: preshed<2.0.0,>=1.0.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: numpy>=1.7 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: thinc<6.6.0,>=6.5.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: murmurhash<0.27,>=0.26 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: cymem<1.32,>=1.30 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: ujson>=1.35 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: plac<1.0.0,>=0.9.6 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: pathlib in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: six in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: requests<3.0.0,>=2.13.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: dill<0.3,>=0.2 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: wrapt in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from thinc<6.6.0,>=6.5.0->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: cytoolz<0.9,>=0.8 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from thinc<6.6.0,>=6.5.0->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: termcolor in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from thinc<6.6.0,>=6.5.0->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: tqdm<5.0.0,>=4.10.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from thinc<6.6.0,>=6.5.0->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: pyreadline>=1.7.1 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from dill<0.3,>=0.2->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Requirement already satisfied: toolz>=0.8.0 in c:\users\dcard\source\repos\py-olympus\venv\lib\site-packages (from cytoolz<0.9,>=0.8->thinc<6.6.0,>=6.5.0->spacy<2.0.0,>=1.7.0->en-core-web-md==1.2.0)
Building wheels for collected packages: en-core-web-md
  Running setup.py bdist_wheel for en-core-web-md: started
  Running setup.py bdist_wheel for en-core-web-md: finished with status 'done'
  Stored in directory: C:\Users\dcard\AppData\Local\pip\Cache\wheels\42\f7\30\a2fa8570180c270dae13ed81c30264c2dbbf9a07821886656a
Successfully built en-core-web-md
Installing collected packages: en-core-web-md
Successfully installed en-core-web-md-1.2.0
Traceback (most recent call last):
  File "c:\users\dcard\anaconda3\Lib\runpy.py", line 184, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\dcard\anaconda3\Lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\spacy\__main__.py", line 71, in <module>
    plac.Interpreter.call(CLI)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 1142, in call
    print(out)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 914, in __exit__
    self.close(exctype, exc, tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 952, in close
    self._interpreter.throw(exctype, exc, tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 964, in _make_interpreter
    arglist = yield task
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 1139, in call
    raise_(task.etype, task.exc, task.tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 53, in raise_
    raise exc.with_traceback(tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 380, in _wrap
    for value in genobj:
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 95, in gen_exc
    raise_(etype, exc, tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 53, in raise_
    raise exc.with_traceback(tb)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_ext.py", line 966, in _make_interpreter
    cmd, result = self.parser.consume(arglist)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\plac_core.py", line 207, in consume
    return cmd, self.func(*(args + varargs + extraopts), **kwargs)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\spacy\__main__.py", line 30, in download
    cli_download(model, direct)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\spacy\cli\download.py", line 25, in download
    link_package(model_name, model, force=True)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\spacy\cli\link.py", line 27, in link_package
    symlink(model_path, link_name, force)
  File "C:\Users\dcard\Source\Repos\py-olympus\venv\lib\site-packages\spacy\cli\link.py", line 46, in symlink
    link_path.symlink_to(model_path)
  File "c:\users\dcard\anaconda3\Lib\pathlib.py", line 1297, in symlink_to
    self._accessor.symlink(target, self, target_is_directory)
  File "c:\users\dcard\anaconda3\Lib\pathlib.py", line 377, in wrapped
    return strfunc(str(pathobjA), str(pathobjB), *args)
OSError: symbolic link privilege not held
(venv)

Your Environment

  • Operating System: Windows 10 64 bit
  • Python Version Used: 3.5
  • spaCy Version Used: 1.7.2
  • Environment Information: virtualenv
install usage windows

Most helpful comment

Please go for a system wide installation. You can do that by:

Go to Start->All Programs-> Accessories-> Right click on Command Prompt and select "Run as administrator".

Once the command prompt is opened, pip install or conda install spacy

All 5 comments

I was able to fix the issue by running Window's git bash terminal in administrator mode.

I am facing a similar issue when I am trying to download Spacy en data. Can you help me to solve the issue?

@Rohit-Gaur Check out #915 for more details on this. The problem here seem to be that spaCy creates a symbolic link in its data directory, and this requires admin privileges. So there are 2 possible solutions:

  • Run the spacy download or spacy link commands as admin.
  • Use a virtualenv instead of doing a system-wide installation. You most likely only need admin privileges to create symlinks in system directories – if you install spaCy in a user directory, this should be fine.

Please go for a system wide installation. You can do that by:

Go to Start->All Programs-> Accessories-> Right click on Command Prompt and select "Run as administrator".

Once the command prompt is opened, pip install or conda install spacy

This thread has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nadachaabani1 picture nadachaabani1  Â·  3Comments

bebelbop picture bebelbop  Â·  3Comments

TropComplique picture TropComplique  Â·  3Comments

notnami picture notnami  Â·  3Comments

besirkurtulmus picture besirkurtulmus  Â·  3Comments