2番目のドライブから古いウィンドウ/プログラムファイルを削除しますか?


22

私のPCには追加のドライブがたくさんあります。それらのほとんどには、Windowsおよびプログラムファイルの古いコピーが含まれています。私のPCは「PC」と呼ばれ、私の管理ユーザーは「Tim」と呼ばれます。これらの2番目のドライブの所有権をユーザー "PC \ Tim"に割り当て、ユーザー "PC \ Tim"にドライブのフルコントロールを与えました。次に、これらのドライブのWindowsまたはProgram Filesフォルダーを削除しようとすると、メッセージが表示されます。

「このフォルダを変更するには、PC \ Timからの許可が必要です。」

これらのフォルダの現在の所有者は、「Tim(PC \ Tim)」と表示されます。これらのフォルダの有効なアクセス許可には、このユーザーがすべての権利を持っていることが示されています。

もちろん、マイクロソフトコミュニティの不条理な「答え」は、「ディスククリーンアップを使用する」(露骨に教育されていない答え)や「ドライブを再フォーマットする」(フォーマットすることで問題に対処するのではなく、問題を回避する)などを提供します。

これらの古いファイルを削除する正しい手順は何ですか?

回答:


55
  1. 管理者権限でコマンドプロンプトを開きます。
  2. 次のコマンドを一度に1つずつ実行します(削除するフォルダーを含む "Z:\ Program Files"を変更します)。

    takeown /F "Z:\Program Files" /A /R /D Y
    icacls "Z:\Program Files" /T /grant administrators:F
    rd /s /q "Z:\Program Files"
    

注1-OS言語:takeown ... /D Y入力Yは「はい」を表し、OS言語によって異なります。Program Filesフォルダーの名前も異なる場合があります。

注2 - Windowsの古いバージョン:場合icaclsrd使用を試行し、サポートされていませんcaclsし、rmdir代わりに、

説明とドキュメント:

問題は、フォルダーとその内容の随意アクセス制御リスト(DACL)に適切なアクセス許可がないことである可能性が あります。DACLは、セキュリティ保護可能なオブジェクトへのアクセスを許可または拒否されるトラスティを識別します。そのため、単にフォルダの所有権を与えるだけでは不十分な場合がありますが、DACLでアクセス許可を付与する必要もあります。上記の例に示すように、icaclsコマンドを使用して権限を付与できます。アクセスコントロールリストとDACLの説明

takeown takeown documentation 管理者は、管理者グループを所有者にすることにより、以前は拒否されていたディレクトリとそのコンテンツへのアクセスを回復します。/ F [ディレクトリ]はどのディレクトリを指定するか、/ Aは管理者グループに所有権を与える、/ Rはディレクトリ、すべてのファイルとサブディレクトリに対して再帰的な操作としてそれを実行する、/ Dはユーザーが「フォルダのリスト」権限を持っていない場合の確認プロンプトを抑制するディレクトリの所有権を取得する次のYオプション。(注:YオプションはOS言語によって異なる場合があります)。

icacls icaclsドキュメント 管理者グループに、ディレクトリへのフルアクセスDACアクセス許可を付与します。[ディレクトリ]どのディレクトリを指定し、/ Tは、すべての指定されたディレクトリ内のファイルとサブディレクトリの操作を実行し、/助成金の助成金を持つユーザーのアクセス権を指定したF:フルアクセスを提供します。(注:グループ名の管理者は、OSの言語によって異なる場合があります)

rd rd documentation ディレクトリーとそのすべてのサブディレクトリーおよびファイルを削除します。/ sの削除すべてのファイルを含む指定されたディレクトリとそのサブディレクトリを、/ Qの指定Quietモードあなたは、確認のためのプロンプトを取得していないので、[ディレクトリ]削除するディレクトリを指定します。


5
Windowsフォルダーの名前を変更するだけWindows.oldで、ディスククリーンアップツール/プログラムを使用して、フォルダーを削除できます
SuperDJ

2
Caclsは非推奨になりましたIcacls。使用してください。
Tharindu Sathischandra

1
@Tharinduありがとう、icaclsで今すぐ回答を更新しました。正しいことを確認してください
Arne H. Bitubekk

1
rmdiris now rd
RaisingAgent

@RaisingAgentヘッドアップに感謝し、コードスニペットをrmdirではなくrdで更新しました
Arne H. Bitubekk

21

私にとってうまくいったのは、この提案の簡略版でした:

  1. Windowsフォルダの名前をWindows.old
  2. [スタート]メニューからディスククリーンアップを実行する
  3. Windows.oldフォルダを含むドライブを選択します
  4. 以前の「Windowsインストール」、次に[OK]をクリックします

これは「Windows」フォルダで機能しました。Arne HDの3つのコマンドは、「Program Files」やProgramDataなどの他のフォルダーでも機能しました。
gus

スマート!そして、非常に簡単です。魅力のように働いた。
oneavi 2018年

1
名前をWindows.oldに変更すると、どのフォルダーでも機能します。驚くばかり。
AdnanG

これが最良の方法です。ここで説明する方法のうち3つを試しましたが、これが最良の方法でした。
RaRdEvA

3

これはWindows 10スペイン語で機能しました:

set del_folder=F:\Program Files
takeown /f "%del_folder%" /r /d S
icacls "%del_folder%" /grant administradores:F /T
rmdir /s /q "%del_folder%"

ではtakeownコマンド、あなたは「はい」(英語)のための代わりに「Y」を、スペイン語で「Sí」の末尾に「S」を使用する必要があります。

以下のためicaclsのコマンドは、「administradores」(スペイン語)といない「管理者」(英語)を使用する必要があります。


1

プログラムファイルの名前をWindows.oldに変更し、ディスククリーンを実行してシステムファイルをクリアします。削除できないフォルダでも同じトリックが機能します。


1

注:これについて考えたところで、ステップ4から開始できるはずです。アクセスするには、「権限の変更」ボタンをクリックするだけです。テストしますが、削除するディレクトリがありません。

Windows 10(おそらくWindows 7および8でも動作します):

  1. folder-> properties-> security-> advancedを右クリックします。
  2. (上部にある)所有者の横にある[変更]をクリックします。ボックスにユーザー名を入力し、チェック名をクリックします。(MACHINENAME \ USERNAMEスタイルに変換する必要があります。)
  3. [OK]、[OK]、[OK]をクリックして、セキュリティオプションを終了します。

これでディレクトリを所有する必要があります。

  1. folder-> properties-> security-> advancedを右クリックします。(再び。)
  2. 権限リストで「ユーザー」を見つけます。それをクリックして[編集]を選択し、フルコントロールを選択します。
  3. 下部にある[すべての子のアクセス許可エントリを置き換える...]をオンにします。
  4. [OK]をクリックして、警告ボックスで[はい]を選択します。コンピュータが新しい権限を適用するのを待ちます。

これで、ファイルを削除するために必要な権限が付与されました。そうする。(Program FilesフォルダーとWindows.oldの両方でテストされています。)


テスト済み、動作します!ありがとう!
GoTo

0

(Windowsフォルダーの場合)可能であれば、名前をwindows.oldに変更します。次に、ディスククリーンアップを開き、ドライブを選択して[OK]をクリックします。その後、[システムファイルのクリーンアップ]をクリックすると、フォルダーが削除されます

フォルダの名前を変更できない場合は、アンロックをダウンロードして開き、フォルダを選択して[名前の変更]をクリックし、名前をWindows.oldに変更して、ディスククリーンアップを実行します。:D


-2

選択したLinuxディストリビューションのライブUSBを作成し、起動してドライブをマウントし、そのようにクリーンアップします。文字通り、最も簡単な方法です。


1
問題は、単にファイルを削除することではなく、ファイルのアクセス許可/所有権に関するものだと思います。Windowsツールを使用してタスクを実行する可能性がある場合、なぜ誰かが500MB以上をダウンロードして起動可能なUSBを作成する必要があるのですか?また、「選択した」すべてのLinuxディストリビューションがNTFSのすべてのバージョンを正しく処理できるかどうかも100%わかりません。NTFSはLinuxファイルシステムではありません。Windowsを使用してLinux ext4ファイルシステム上のファイルを操作しますか?
snayob 2016年

Linuxカーネルは50以上のファイルシステムを処理できます。また、それは文字通りそれを行う最も簡単な方法です。このユーザーが探していたものではないかもしれませんが、それは簡単です。
Steven Perszyk

1
最も簡単ですか?1GBをダウンロードしてUSBに書き込みますか?これは3つのコマンドを発行するよりも本当に簡単ですか?あなたは本物のLinuxの第一人者のようです;)
snayob '20

1
そのランダムで完全に偽の「事実」が手元の議論にどのように関係しているかはよくわかりませんが、私を啓蒙してくれてありがとう。GNU / Linuxシステムを選択する理由について個人的な議論が必要な場合は、別の場所でその議論をさせていただきます。それ以外は、この議論はひどくトピックから外れています
Steven Perszyk

1
「それを行う最も簡単な方法」を議論することに関心はありません。あなたの発言は完全に偽りの事実を叫んでいます。
snayob 2016年

-2

システムをホストしていた以前のディスクであるため、同じユーザーの所有権をすでに持っている可能性があります。その所有権を削除して、もう一度追加します(同じもの)。たとえば、ユーザーPETERが所有権を持っている場合は、それを削除し、すべてのサブフォルダーに適用してから、もう一度PETERを追加して適用します。その後、削除するフォルダの名前を変更してから、削除することができます。

乾杯


教育を受けていない推測。NTFSファイルシステムは、ユーザーアカウントの表示名ではなく、アクセス制御リストと共にユーザーアカウントSIDを使用します。

-2

削除を2番目のドライブで行う必要があると仮定すると、次のように機能します。

  1. Lockhunter(ロックされたファイルのロックを解除して名前を変更する無料のアプリケーション)をインストールし、管理者権限でLockhunterを実行します。

  2. 削除するフォルダーの名前を「Windows.old」に変更します(名前を変更した後も元の名前が読み取られますが、メインウィンドウでLockhunterによって名前の変更が確認されるので心配しないでください)。

  3. 管理者権限で「ディスククリーンアップ」を実行します。

  4. ディスククリーンアップで「Windows.old」という名前で表示される削除するフォルダーを選択して削除します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.