web-dev-qa-db-ja.com

Python-PIPインストールのトラブルシューティング-PermissionError:[WinError 5]アクセスが拒否されました

PIPを使用して新しいパッケージをインストールしたり、pip自体を最新バージョンにアップグレードしたりすると、次のエラーが発生します。 Windows 8.1マシンでPython 3.4を使用してpipを実行しています。

このメッセージは、ファイルに対する管理者権限がないことを通知しています(私のアカウントは管理者アカウントです)。

パッケージのインストールとPythonの進行を妨げているため、これを解決する方法についてのご意見をいただければ幸いです。

エラーメッセージ:

Installing collected packages: pip
  Found existing installation: pip 6.0.8
    Uninstalling pip-6.0.8:
      Removing file or directory c:\program files (x86)\python\python34\lib\site-packages\pip-6.0.8.dist-info\description.rst
      Cleaning up...
Exception:
Traceback (most recent call last):
  File "C:\Program Files (x86)\Python\Python34\lib\shutil.py", line 523, in move
    os.rename(src, real_dst)
PermissionError: [WinError 5] Access is denied: 'c:\\program files (x86)\\python\\python34\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst' -> 'C:\\Users\\User\\AppData\\Local\\Temp\\pip-uze_sc4k-uninstall\\program files (x86)\\python\\python34\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\basecommand.py", line 232, in main
    status = self.run(options, args)
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\commands\install.py", line 347, in run
    root=options.root_path,
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\req\req_set.py", line 543, in install
    requirement.uninstall(auto_confirm=True)
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\req\req_install.py", line 667, in uninstall
    paths_to_remove.remove(auto_confirm)
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\req\req_uninstall.py", line 126, in remove
    renames(path, new_path)
  File "C:\Program Files (x86)\Python\Python34\lib\site-packages\pip\utils\__init__.py", line 316, in renames
    shutil.move(old, new)
  File "C:\Program Files (x86)\Python\Python34\lib\shutil.py", line 536, in move
    os.unlink(src)
PermissionError: [WinError 5] Access is denied: 'c:\\program files (x86)\\python\\python34\\lib\\site-packages\\pip-6.0.8.dist-info\\description.rst'
55
Dave Mansfield

E:この答えはある程度人気があるように思えるので、私は付け加えます。グローバルに物事を行うことは、ほとんどの場合、素晴らしいアイデアではありません。代わりにプロジェクト環境を使用する必要があるかどうかを考えてください。 virtualenvで。


同じ問題が発生する可能性がある場合:

管理者としてコマンドプロンプトを実行します。アカウントに管理者権限があるだけでは、必ずしも十分ではありません。 Windowsでは、実行可能ファイルを右クリックして[管理者として実行]を選択することにより、管理者として実行できます。そのため、[スタート]メニューに「cmd」と入力し、cmd.exeを右クリックして、管理者として実行します。

66
Roope

私の答えは奇妙だと思いますが、それが今私が経験したことです。

Tensorflowパッケージをインストールするときに同様のエラーが発生し、管理者としてWindowsでpowershellを開いて同じことを試みましたが、無駄でした。

後で、アクティブなpythonセッションのpythonスクリプトの1つですでにnumpyを使用していることがわかりました。そこで、Spyder IDEを閉じ、管理者としてpowershellを実行してtensorflowパッケージをインストールしようとしましたが、うまくいきました。

これは、このような古いが便利な投稿を今後数日中に開く私のような誰かに役立つことを願っています

41
JKC

Administratorから実行しても、pipが別のユーザースペース内にインストールされている場合、問題が解決しない場合があります。これは、Administratorが別のユーザースペースディレクトリを所有していないため、誰かが所有しているディレクトリの内部を見ることができない(内部に入る)ためです。以下は正確な解決策です。

python -m pip install -U pip --user //It solves in Windows. Note: You should provide --user option

pip install -U pip --user //Linux, and MacOS
7
Uddhav Gautam

この問題に遭遇した人および管理者としてコマンドプロンプトを実行しても動作しないこれは私のために働いた:

Cmdプロンプトを管理者として実行せずに初めて試したので、c:\ Users\"USER"\AppData\Local\Tempフォルダーでファイルを実行しようとしていたことがわかりました同じpip-u2e7e0ad-uninstallフォルダー。 Tempフォルダーからこのフォルダーを削除してインストールを再試行すると、問題が修正されました。

6
Michael Martin

Python 3.4でpip 7.x.xから8.x.xにアップグレードする時点(* .whlサポート用)。

間違ったコマンド:pip install --upgrade pip(pip.exeを一時フォルダーに移動できません、許可されていません)

OKバリアント:py -3.4 -m pip install --upgrade pip(pip.exeを実行しないでください)

5
Valerij

IDEでコマンドプロンプトを使用しないでください。管理者としてWindowsからコマンドプロンプトを実行します。これで問題が解決すると確信しています。そうでない場合は、pipをアンインストールして、最新のものを直接再インストールします。

5
Santa

Windows上のanacondaでも同じ問題が発生しました。 McAfeeウイルス対策に問題があるようです。更新またはインストールの実行中に非アクティブにすると、インストールを適切に実行できます。

4
Netzsooc

この問題はWindows 10でも発生しました。すべてのJupyter Notebookセッションを終了し、管理者が問題を解決したときにpip install --upgradeコマンドを再実行しました。

2
davetunes

2018年も引き続き関連:パッケージを管理者としてインストールしないでください。

はるかに賢明なソリューションより賢明な解決策は virtualenv を使用して仮想環境ディレクトリ(virtualenv dirname)を作成し、その仮想環境をアクティブ化することですpipコマンドを実行する前に、Windowsでdirname\Script\Activateを使用します。または、 pipenv を使用してインストールを管理します。

これにより、すべての書き込みが、UACを必要とせず、ローカルディレクトリのグローバルインストールなしで、完全な書き込み許可を持っているディレクトリに書き込まれます。

単純に、管理者モードでcmdを実行します。

1
Zeinab

これをAnacondaからインストールする場合は、管理者としてAnacondaを開き、そこからコマンドプロンプトを起動する必要があることに注意してください。

それ以外の場合は、管理者として「Anaconda Prompt」を直接実行して、パッケージをアンインストールおよびインストールすることもできます。

1
Nikhil Gupta

見た後

You are using pip version 9.0.1, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.

走った

pip install -U pip

このエラーをヒットします

PermissionError: [WinError 5]

もう一度試してみた

pip install -U pip
ERROR: To modify pip, please run the following command:
c:\python36-32\python.exe -m pip install -U pip

その正確なコマンドを実行した後、動作しました。

このエラーの解決策として仮想環境の使用を促進する場合は、メインインストールでpipとvirtualenvを更新する必要があります。簡単に言えば、仮想環境はこの問題の解決策を提供しません。

1
Wyrmwood

Pycharmを使用して仮想環境を作成および実行しているときにこの問題に遭遇しました-[グローバルサイトパッケージを継承する]チェックボックスをクリックしました-venvを削除して再作成すると問題が解決しました。 venvを作成するために別の手段を使用した場合は、ISグローバルパッケージを継承しないことを確認してください! enter image description here

0
Ben