misc.log

日常茶飯事とお仕事と

Cドライブに「found.000」「found.001」というフォルダーがあり、消せない

ふとPCのCドライブを見ていて「found.000」「found.001」……「found.004」というフォルダーがあることに気付きました。アクセスしようとすると「管理者の許可が必要」とのこと。OKで権限を取得すると、フォルダーの内容を開く事はできるのですが、ファイルの中身を(画像データなど)を見ようとしても権限が無くできません。

何のフォルダーなのか

どうやら、過去にチェックディスク(chkdskコマンド)でドライブをチェックした際に、チェックディスクが作った作業用/ファイル退避用フォルダーのようです。マイクロソフトのコミュニティのQAでもいくつか質問として挙がっています。

Is this 188 GB protected "found.000" folder safe to delete?
https://answers.microsoft.com/en-us/windows/forum/all/is-this-188-gb-protected-found000-folder-safe-to/b5185c41-3832-4221-981c-2cb786a3b1fd

上記は「188GBもあるfound.000フォルダーがあるのだが、消してもOKか?」という質問。別の人が回答していますが、内容は

  • ディスクの整合性チェックツールであるchkdsk処理が自動的に生成したもの。
  • ハードディスクなどのチェック中に、不良セクター(読めないデータや領域)が有った際、それを修復する作業過程で作られる。
  • 削除しても問題無い。
  • ただ、何かファイルが足りないといった状況が発生しているなら、このフォルダーに退避されている可能性が有るので、その場合はここから戻すと良い。

とのこと。なるほど。実際、フォルダーのタイムスタンプを見ると最新の「found.004」は先日のブルースクリーン事件の日に該当します。そういうことなのですね。ただ、古いフォルダー(found.000)は2021年1月23日、朝4じや朝5時。これは……今使っているPCのメインドライブをSSDに換装し、古いHDDの内容を入れ替えようとして四苦八苦していたときの日付です……。

www.backyrd.net
www.backyrd.net

見られない、消せない

このフォルダーですが、消そうとしても権限が無いとのことで消せません。おかしいと思い、フォルダーやファイルのプロパティから「セキュリティ」→「詳細設定」を開くと、「所有者」のところが「表示できません」になっています。下図は後述の作業で補正を掛けたり手作業で変更した、よくある正常な状態です。下図の上段にある「所有者:」というところが、AdministatorやTrustedInstallerではなく、「表示できません」になっていました(既に変更してしまっていてその時の画像は取り損ねました)。

プロパティ→セキュリティ→詳細設定で表示されるダイアログ

通常、この所有者設定を無理矢理Administratorsなどに変更すれば、サブフォルダーの所有者も合わせて変更。一気にフォルダー群の権限を確保できるはずなのですが、どうやら「元の所有者を確認できないので、変更すらできない」状態になってしまっているようです。

恐らくですが、このPCのストレージは以下のような経緯で今に至っています。それが原因かと……。

  1. Windows 7で長らく利用。
  2. Windows 7の修復ディスクからWindowsを修復。
  3. Windows 10にアップグレード。
  4. Windows 10の修復ディスクを元に、4TBのSSDにWindows10を再構築。

この修復ディスクでの修復ですが、ドライブ構成なども前のものを引き継いだり、その時の権限なども変に引き継いだりするようで、上記の過程で結構「入れ直す前のWindowsの権限があるので開けない」といった場所などが出来たりしていました。その流れで、修復前やWindows7時代の権限設定などが残って変なことになったのでは??と予想しています。

対処方法

いくつかのファイルについてはファイル、フォルダーを1個ずつ所有者設定し、フルコントロールを得ることで削除できたのですが、トータルで9GBほどのデータがあるためこんな方法はやっていられません。調べてみたところ、コマンドで所有者を一括変更できることが判りました。

superuser.com

具体的には、管理者権限でコマンドプロンプトを開き、下記のコマンドを実行します。

takeownコマンドで一括所有者設定変更を行う

takeown /r /d y /f c:\found.000

これで、所有者設定が「今使っている自分のアカウント」に変更され、権限操作が自由に行えるようになりました。

ちなみにtakeownに続いて指定している引数は下記のようになっています。

  • /r …… 再帰指定。サブフォルダーも全て処理対象とする。
  • /d y …… 再帰指定の場合に使える指定。プロンプトが出てきた際に「y(はい)」を押したことにする。
  • /f …… ファイル/フォルダー名指定。続けて対象フォルダーなどを指定する。

これで、権限を取得しますか?といった確認メッセージにすべて「Y」を押しつつ、サブフォルダーまで全て処理を行う、ということができるようですね。

気になったこと

上記のコマンドを試すにあたり、合計5つ出来ていた「found.xxx」フォルダーのうち「found.000」を対象に試してみたのですが、他の「found.001」や「found.002」も一緒に変更されてしまいました。もしかしたら、詳細不明だった「前のWindowsのユーザー」と、今の自分のアカウントが紐付けられたことで一気に所有者設定が変わったのかな?とか想像はしてみているのですが、定かではありません。

きちんとWindowsの権限について仕組みを学べば判るのかもしれませんが、そこまでやる時間は無いので、一旦問題解決としておきます……。

いちど、Windows10をきちんと買って入れ直そうかな。ゼロから。Windows7からのアップグレードではなく……。