2012-01-21 7 views
2

私はWindows上にある  7(私はアクセス許可モデルがわかりません。私のユーザーは管理者です。私が "python distribute_setup.py"を実行しようとすると、 "書き込みに失敗しました...アクセス権が拒否されました"というエラーが表示され、 "エラー:インストールディレクトリのファイルを作成または削除できません"。PythonをインストールしてWindows 7に配布すると「書き込みに失敗しました...アクセス権が拒否されました」

python.orgからPython 3.2.2 MSIインストーラを新しくインストールしました。

私はそれを必要とするいくつかの依存関係がありますので、私は、私は64ビットのWindows上でだにもかかわらず、32ビットのPythonをインストールしています(pyglet、OpenGLライブラリを。)

私はdistribute_setup.pyと実行をダウンロード"python distribute_setup.py"をコマンドラインから実行します。

Scanning installed packages 
No setuptools distribution found 
error: can't create or remove files in install directory 

The following error occurred while trying to add or remove files in the 
installation directory: 

    [Errno 13] Permission denied: 'E:\\Program Files (x86)\\Python3.2.2\\Lib\\site-packages\\test-easy-install-5924.write-test' 

ディレクトリ「E:これらの3行は、約20回、繰り返して

root: Generating grammar tables from E:\Program Files (x86)\Python3.2.2\Lib\lib2to3\PatternGrammar.txt 
root: Writing grammar tables to E:\Program Files (x86)\Python3.2.2\Lib\lib2to3\PatternGrammar3.2.2.final.0.pickle 
root: Writing failed:[Errno 13] Permission denied: 'E:\\Program Files (x86)\\Python3.2.2\\Lib\\lib2to3\\PatternGrammar3.2.2.final.0.pickle' 

途中無用テキストの大量を通じてこのスピューは、いくつかの隠されたエラーメッセージは、次のとおりです。 \ Program Files(x86)\ Python3.2.2 \ Lib "では、管理者が「完全制御」を許可します。私のユーザーは管理者です(チェックされているアクセス許可のチェックボックスはすべて灰色で表示されています)。フルコントロールを無効にすることはできませんでした。 「Users」グループと「administrators」グループの両方にアクセスできます。再実行、私はもはや同じエラーを取得していないが、それはで、同じポイントで終了します。

Scanning installed packages 
No setuptools distribution found 
build\src\setuptools\command\easy_install.py:289: UserWarning: Unbuilt egg for distribute [unknown version] (c:\users\jhartley\appdata\local\temp\tmpr0dzkz\distribute-0.6.24\build\src) 
    self.local_index = Environment(self.shadow_path+sys.path) 
warning: no files found matching 'Makefile' under directory 'docs' 
warning: no files found matching 'indexsidebar.html' under directory 'docs' 
error: E:\Program Files (x86)\Python3.2.2\Scripts: Access is denied 

ない「E:\プログラムファイル(x86の)\ Python3.2.2スクリプト\」がありませんディレクトリが。私は1つ作成します。これは「管理者」が所有し、管理者用に「フルコントロール」が設定されています。他のすべてのPythonファイルとディレクトリは "SYSTEM"が所有しています。再び与え実行:

Scanning installed packages 
No setuptools distribution found 
build\src\setuptools\command\easy_install.py:289: UserWarning: Unbuilt egg for distribute [unknown version] (c:\users\jhartley\appdata\local\temp\tmp1kmbk6\distribute-0.6.24\build\src) 
    self.local_index = Environment(self.shadow_path+sys.path) 
warning: no files found matching 'Makefile' under directory 'docs' 
warning: no files found matching 'indexsidebar.html' under directory 'docs' 
error: E:\Program Files (x86)\Python3.2.2\Scripts\easy_install-script.py: Permission denied 

「スクリプト」dirは、管理者のために付与された「フルコントロール」を持っているにもかかわらず、私は投機的Usersグループのための「フルコントロール」を追加してみてください。再試行すると警告が表示されます。

が正常に表示されます。

「easy_install virtualenv」を実行すると、「未知の発行元の次のプログラムがこのコンピュータを変更できるようにしますか?」というユーザーアカウント制御ダイアログが生成されます。新しいCMDウィンドウを作成します。このウィンドウは、点滅しすぎて見えなくなり、動作していないように見えます。virtualenvはインストールされていません。

いつでもUACダイアログが表示されないようにしたいと思います。迷惑です:「easy_install」は私が信頼するプログラムです。実行するたびに確認する必要はありません。 UACダイアログの表示を停止するために見つけることができるすべてのソリューションは、実行可能ファイルへの魔法のダブルクリック可能なショートカットを作成することを伴います。コマンドラインアプリケーションでは何も見つかりませんでした。

easy_installが新しいcmdウィンドウで起動しないようにしたいと思います。これは、出力を見ることが不可能になります。この問題は、UACダイアログとは独立しているように見えます。これは、UACをグローバルに無効にすると、easy_installはダイアログなしで実行されますが、新しいウィンドウで実行されることを意味します。

ここでは何が起こっていますか?私は間違って何をしていますか?

+2

"管理者として実行"を使用してコマンドプロンプトを開きますか? – jgritty

+2

私はそうではありませんでした。それはそれを修正するようだ!やめ!どのようにembarasing。しかし、私はまったく納得していません - 私のユーザーはすでに*管理者です。だから、実際にやっている "管理者として実行"アクションは何ですか?そして、これは "未知の出版社"と一緒にインストールするすべての実行可能ファイルに適用されますか?つまり、すべてのコンソールセッションを管理者として実行する必要がありますか?それにかかわらず、あなたが答えを加えれば私はそれを喜んで選ぶだろうが、あなたがそれらのことを説明できるなら、私は余分に幸せになるだろう。 –

+0

Windowsでの開発経験が豊富な私の妻は、このような理由が「Windowsはf **** dなので」と通知しています。私は許容可能な答えのように見えるので、これをstackoverflowに提出するように彼女に促します。 –

答えて

5

あなたの妻が言うように、 "Windowsはf **** d"のため、コマンドプロンプトを開くときに "管理者として実行"オプションを使用する必要があるようです。あなたも発見したように、UACをオフにすると、UACダイアログが表示されなくなります。

+1

誰かが私のユーザーが*既に*管理者であっても、なぜこれを行う必要があるかについて詳しく説明できれば、それは便利だろう。 –

+2

私は別の質問を作成して、「管理者として実行」が最初に管理者であることと異なることを理解しました。要約すると、たとえあなたが管理者であっても、あなたが「管理者として実行する」を選択しない限り、あなたのプロセスには管理者権限が剥奪されます(管理者の場合は、パスワードを入力せずに実行できます)。 com/questions/8986971/what-exactly-does-administrator-do-as-administrator-do –

1

システム全体のPythonのインストールディレクトリとそのサブディレクトリを自分のユーザに明示的に許可すると、easy_installが動作します。

しかし、これは完全に満足できるものではない。

  • easy_installをまだUACのダイアログを生成します。私はこれを無効にしたいのですが、easy_installは私が信頼するプログラムです
  • easy_installはまだ新しいcmdウィンドウで起動して消えますので、必要ならば出力を調べることはできません。
関連する問題