Windowsでアクセス権限がおかしくなって削除できなくなったファイルやディレクトリを削除する方法
rsyncで一時間毎にバックアップ!しててログ見たらPermission deniedというエラーが出てたので、
原因を調べてたら、削除や修正を一切受け付けなくなった状態のファイルやらディレクトリがあったので、
それを元に戻した方法をメモる。
ますなった状態はというとこんな感じ。
- ファイルを削除できない
- ディレクトリも削除できない
- Administratorでも削除したりできない
要するにファイルやディレクトリの操作が一切できない状態。
で、原因は何かというと、どうもファイルやディレクトリの所有者が、 作成ユーザーからSYSTEMになってたことが原因みたい。
でこれを直す方法。
ます準備として、エクスプローラーのツール->フォルダオプションの表示タブの簡易ファイルの共有を使用する(推奨)のチェックをはずす。
これで、ファイルやディレクトリの所有者をみたり変更したりできる。
で、所有者がおかしくなって削除できなくなったファイルを右クリック->プロパティを開いて、セキュリティタブを開く。
そして詳細設定というボタンがあるので、それをクリック。
そうすると色々書かれたWindowが出てくるので、そこの所有者タブを開く。
んで所有者タブを開くと、現在の所有者と所有者を変更する選択肢が出てくるので、 そこで新しい所有者を選択してOKをクリックする。 で、所有者を変更できたら、新しい所有者にアクセス権限を与える。
アクセス権限を与えるユーザー一覧に新しい所有者の名前がない場合は、
追加 (D)というボタンをクリックして、新しい所有者の名前を追加する。
んでその後新しい所有者にアクセス権限を与える。
でまあこれで新しい所有者にアクセス権限が与えられたので、 ファイルを削除したりできるようになる。
ぶっちゃけると最初2chの質問系のスレで聞こうかなと思って、 Windows板のWindowsXP質問スレにたどり着いたんだけど、 そのスレのテンプレで、Windows を再インストール後、元からあるファイルにアクセスできません というのが紹介されていて、そこを見たら所有者云々と書かれていて、 そこでようやく解決方法が見つかったという。
なんというかWindowsのアクセスコントロールはややこしいよ!
UNIX系OSだとrootでchmod -R {permission} {file or dir}で一発なのに!とか思わなくもない。
まあなんとか解決できたのでよかったよかったという感じです。 色々やってダメだったらもう再フォーマットしかとか思ってたもん。
つーかrsync on WindowsでPermission関係のエラーが良く出てるんだけど、何でだろうね。 UNIX系OSだと簡単なのに!
なんというか疲れた。今度こそスムーズにバックアップが取れると良いなぁ。