pip install access denied on Windows
I am trying to run pip install mitmproxy
on Windows, but I keep getting access denied, even with cmd
and PowerShell
using the Run as Administrator
option.
WindowsError: [Error 5] Access is denied: 'c:\\users\\bruno\\appdata\\local\\temp\\easy_install-0fme6u\\cryptography-0.9.1\\.eggs\\cffi-1.1.2-py2.7-win-amd64.egg\\_cffi_backend.pyd'
How can I make this work?
Solution 1:
For Windows, in Command Prompt (Admin) try to run pip install
using the Python executable:
python -m pip install mitmproxy
This should work, at least it worked for me for other package installation.
Solution 2:
Change your Python installation folder's security permissions by:
- Open a Python shell
- Go to task manager
- Find the python process
- Right-click and open location
- The folder will open in explorer, go up a directory
- Right-click the folder and select properties
- Click the security tab and hit 'edit'
- Add everyone and give them permission to Read and Write.
- Save your changes
If you open cmd
as admin; then you can do the following:
If Python is set in your PATH
, then:
python -m pip install mitmproxy
Solution 3:
Personally, I found that by opening cmd
as admin then run
python -m pip install mitproxy
seems to fix my problem.
Note:- I installed python through chocolatey
Solution 4:
One additional thing that has not been covered in previous answers and that often cause issues on Windows and stopped me from installing some package despite running as admin is that you get the same permission denied error if there is another program that use some of the files you (or pip install
) try to access. This is a really stupid "feature" of Windows that pops up many times, e.g. when trying to move some files.
In addition I have no clue how to figure out which program locks a particular file, so the easiest ting to do is to reboot and do the installation before starting anything, in particular before running e.g. Spyder or any other Python-based software. You can also try to close all programs, but it can be tricky to know which one actually holds a file. For a directory for example, it is enough that you have an Explorer window open at that directory.