web-dev-qa-db-ja.com

Windows 7 Cygwinでmvを使用するとアクセス許可が拒否されました

Windowsドメインサインオン環境のWindows 7にCygwinをインストールしました。ほとんどの一般的なコマンドは問題なく実行できますが、ファイルやディレクトリに関係なく、「mv」コマンドを使用してファイルを移動または名前を変更することはできません。

問題なくファイルをコピーして作成できます。

┌─[12:27:57]─[mbutl2@MYHOSTNAME]
└──> tmp $ >> pwd
/tmp
┌─[12:27:58]─[mbutl2@MYHOSTNAME]
└──> tmp $ >> touch test.txt
┌─[12:28:02]─[mbutl2@MYHOSTNAME]
└──> tmp $ >> mv test.txt hello
-bash: /usr/bin/mv: Permission denied

CygwinターミナルをAdministratorとして実行してみましたが、問題は同じです。

私は、ファイルを移動するために別のexeを試し、mvコマンドをそれにリダイレクトするなどの回避策を用意しています。ファイルの移動は、Windowsコマンドプロンプトで機能します。

PDATE:私のラップトップには、 "mv.exe"プログラムへのアクセスまたはコピー/実行を名前またはヒューリスティックによって防止するセキュリティ制限があるようです。上記のmvコマンドに代わる回避策を受け入れてもかまいません。

PDATE 2: Windowsのコマンドラインと、Windowsでmv.exeを開いたときのスクリーンショット。

windows command Prompt

enter image description here

PDATE 3:fileコマンドの出力:

┌─[12:36:09]─[mbutl2@MYHOSTNAME]
└──> ~ $ >> file /usr/bin/mv
/usr/bin/mv: writable, executable, regular file, no read permission
┌─[12:36:15]─[mbutl2@MYHOSTNAME]
└──> ~ $ >> chmod 777 /usr/bin/mv
chmod: changing permissions of `/usr/bin/mv': Permission denied
┌─[✗]─[12:36:29]─[mbutl2@MYHOSTNAME]
└──> ~ $ >> mv
-bash: /usr/bin/mv: Permission denied
┌─[✗]─[12:36:35]─[mbutl2@MYHOSTNAME]
└──> ~ $ >>

lddも、アクセスが拒否されたことを報告します。

7
Michael Butler

回避策は、Cygwinのmv.exeユーティリティを再ダウンロードして、mvvv.exeのような別の名前で保存しました(mv.exeの名前を変更するアクセス権がないため、実際にダウンロードする前に)。次に、mvがmvvv.exeを指すようにシンボリックリンクを設定して、通常どおり使用できるようにします。

2
Michael Butler
  • ファイルがWindowsによってブロックされているかどうかを確認します。

    ファイルのpropertiesを確認してください。This file came from another computer and might be blocked to help protect this computerファイルを確認してブロックを解除するには、次の手順に従います。ブロックされたファイルを右クリックして、[Properties]をクリックします。オプションが利用可能な場合は、[全般]タブでUnblockをクリックします。

  • アンチウイルスがファイルをブロックしていないか確認してください。

    ウイルス対策ソフトウェアがファイルを一時的に無効にしてからファイルを開こうとすると、ファイルがブロックされているかどうかを確認できます。


更新:

  1. ファイルまたはフォルダーを右クリックし、[Properties]をクリックします。
  2. Securityタブをクリックします。
  3. [グループ名またはユーザー名]で自分の名前をクリックして、自分が持っている権限を確認します。
  4. [編集]をクリックし、必要な権限のチェックボックスをオンにして、[OK]をクリックします。

結果:

enter image description here


更新2

これを試して:

  • 右クリックして、[Properties]を選択します。
  • Securityタブをクリックします。
  • Advancedをクリックします。
  • Ownerタブをクリックします。
  • 所有者を自分に変更します。
  • Editをクリックします。
  • 小切手 Replace owner on subcontainers and objects
  • OKをクリックします。
6
stderr

Mv.exeでディスクに問題が発生した場合に備えて、私は次のことを試みます:

  • cygwinをアンインストールする
  • chkdsk
  • mv.exeがフォルダー全体とともに削除されたことを確認する
  • cygwinを再インストールします

[編集]

あなたのアンチウイルスはマカフィーだと言っていますが、これは私の意見ではすべてのアンチウイルス製品の中で最も問題の多いものの1つです。

マカフィーのリアルタイム保護を無効にして、問題が解消するかどうかを確認することをお勧めします。もしそうなら、私自身の推奨は、McAfeeをアンインストールして、他のそれほど邪魔にならないウイルス対策製品をインストールすることです。

0
harrymc